/* ============================================================================
   vendor/tailwind.css - zelf-gehoste utility-laag (geen toolchain)
   Met de hand samengestelde subset van Tailwind-achtige utilities die de
   planner-pagina's gebruiken. Klassenamen volgen Tailwind zodat een latere
   echte `tailwindcss`-CLI-build dit bestand 1-op-1 kan vervangen.
   Zie docs/SETUP.md ("Tailwind vervangen").
   ========================================================================== */

/* display */
.block{display:block}.inline-block{display:inline-block}.inline{display:inline}
.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}
.contents{display:contents}

/* flex / grid */
.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}
.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-none{flex:none}.grow{flex-grow:1}.shrink-0{flex-shrink:0}
.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}
.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}
.self-start{align-self:flex-start}.self-center{align-self:center}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.col-span-2{grid-column:span 2/span 2}.col-span-full{grid-column:1/-1}

/* gap */
.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}
.gap-x-2{column-gap:.5rem}.gap-y-2{row-gap:.5rem}.gap-x-4{column-gap:1rem}.gap-y-3{row-gap:.75rem}

/* margin / padding scale (0,1,2,3,4,5,6,8,10,12) */
.m-0{margin:0}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}
.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}
.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}
.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}
.p-0{padding:0}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}
.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}
.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}
.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}

/* sizing */
.w-full{width:100%}.w-auto{width:auto}.w-fit{width:fit-content}.max-w-full{max-width:100%}
.min-w-0{min-width:0}
.h-full{height:100%}.h-auto{height:auto}
.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}

/* typography */
.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.8125rem;line-height:1.25rem}
.text-base{font-size:.875rem;line-height:1.5rem}.text-lg{font-size:1rem;line-height:1.5rem}
.text-xl{font-size:1.125rem;line-height:1.5rem}.text-2xl{font-size:1.375rem;line-height:1.75rem}
.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-extrabold{font-weight:800}
.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}
.uppercase{text-transform:uppercase}.tracking-wide{letter-spacing:.05em}
.leading-snug{line-height:1.375}.leading-relaxed{line-height:1.625}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}
.tabular-nums{font-variant-numeric:tabular-nums}

/* color (alleen wat gebruikt wordt; rest via yp-design tokens) */
.text-ink{color:var(--ink)}.text-ink-2{color:var(--ink-2)}.text-mute{color:var(--mute)}
.text-coral{color:var(--coral-dark)}.text-white{color:#fff}
.text-bad{color:var(--bad)}.text-ok{color:var(--ok)}
.bg-white{background:#fff}.bg-bg{background:var(--bg)}.bg-divider{background:var(--divider)}
.bg-coral-light{background:var(--coral-light)}

/* border / radius / shadow */
.border{border:1px solid var(--line)}.border-0{border:0}
.border-t{border-top:1px solid var(--divider)}.border-b{border-bottom:1px solid var(--divider)}
.rounded{border-radius:var(--r-s)}.rounded-md{border-radius:var(--r-m)}.rounded-lg{border-radius:var(--r-l)}.rounded-full{border-radius:999px}
.shadow-card{box-shadow:var(--sh-card)}

/* misc */
.relative{position:relative}.absolute{position:absolute}.sticky{position:sticky}
.top-0{top:0}.inset-0{inset:0}
.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}
.cursor-pointer{cursor:pointer}.select-none{user-select:none}
.opacity-0{opacity:0}.opacity-60{opacity:.6}.opacity-100{opacity:1}
.list-none{list-style:none}
.transition{transition:all .15s ease}

/* responsive: sm >= 640px, md >= 820px */
@media(min-width:640px){
  .sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:block{display:block}
  .sm\:flex-row{flex-direction:row}
  .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sm\:w-auto{width:auto}
}
@media(min-width:820px){
  .md\:flex{display:flex}.md\:hidden{display:none}.md\:block{display:block}
  .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .md\:col-span-2{grid-column:span 2/span 2}
}
