/* 禅坊靖寧 予約リンク — loading screen
 * Location: zenbo-seinei.com/book/book.css (next to index.html)
 */
/* ── Brand settings: swap for Zenbo's exact colours if needed ── */
:root {
  --paper: #f4f0e8;   /* background (washi)   */
  --ink:   #2b2925;   /* ensō + main text     */
  --muted: #8a8378;   /* secondary text       */
}

html, body { height: 100%; margin: 0; }
body {
  background: var(--paper);
  color: var(--ink);
  font-family: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif JP", serif;
  display: flex; align-items: center; justify-content: center;
  text-align: center;
  -webkit-font-smoothing: antialiased;
}
.wrap { opacity: 0; animation: fadeIn .5s ease-out forwards; }

.enso { width: 72px; height: 72px; display: block; margin: 0 auto 2.4em;
        animation: spin 2.4s linear infinite; }
.enso circle {
  fill: none; stroke: var(--ink); stroke-width: 1; stroke-linecap: round;
  /* circumference ≈ 283 → ~85% line, ~15% open gap */
  stroke-dasharray: 240 283;
}

.name {
  font-size: 1.35rem; letter-spacing: .5em; margin: 0 0 1.1em; padding-left: .5em;
}
.msg {
  font-size: .78rem; letter-spacing: .25em; color: var(--muted); margin: 0;
  padding-left: .25em; line-height: 2.1;
}
.msg span { display: block; letter-spacing: .18em; font-size: .7rem; }

button {
  margin-top: 2em; padding: .9em 2.4em; background: none; cursor: pointer;
  border: 1px solid var(--ink); color: var(--ink);
  font: inherit; font-size: .85rem; letter-spacing: .2em;
}

/* leaving: soft fade out while the booking engine loads */
body.leaving .wrap { animation: fadeOut .6s ease-in forwards; }

@keyframes spin    { to { transform: rotate(360deg); } }
@keyframes fadeIn  { to { opacity: 1; } }
@keyframes fadeOut { from { opacity: 1; } to { opacity: .25; } }

@media (prefers-reduced-motion: reduce) {
  .wrap { animation: none; opacity: 1; }
  .enso { animation: none; }
  body.leaving .wrap { animation: none; }
}
