/* Kathaa 360 MVP — calm parchment & dusk */
* { box-sizing: border-box; margin: 0; }
body {
  font-family: Georgia, 'Noto Serif', serif;
  background: linear-gradient(180deg,#fdf6ec 0%,#f7ecd9 100%);
  color: #3b3025; min-height: 100vh;
}
.hidden { display: none !important; }
.screen { max-width: 760px; margin: 0 auto; padding: 16px; }
.muted { color: #8a7a66; }
.fineprint { font-size: .78rem; color: #a4937d; margin-top: 12px; }
.mini { font-size: .85rem; }

header { display: flex; justify-content: space-between; align-items: center; padding: 8px 0 18px; }
.brand { font-weight: bold; letter-spacing: .5px; color: #7a4f2a; }
nav button { background: none; border: none; color: #8a7a66; cursor: pointer; font-size: .95rem; margin-left: 14px; padding: 4px 2px; }
nav button.active { color: #7a4f2a; border-bottom: 2px solid #d9a05b; }

.card { background: #fffdf8; border: 1px solid #eadfce; border-radius: 14px; padding: 22px; box-shadow: 0 2px 10px rgba(120,90,50,.07); margin-bottom: 16px; }
.center-card { max-width: 480px; margin: 60px auto; }
.center-card h1,.center-card h2 { margin-bottom: 10px; }
.teaser { font-style: italic; color: #7a4f2a; background: #faf1e2; border-left: 3px solid #d9a05b; padding: 10px 14px; border-radius: 6px; margin-top: 12px; }

input[type=text], select, textarea {
  width: 100%; padding: 10px; margin: 6px 0 14px; border: 1px solid #dccbb2;
  border-radius: 8px; background: #fffefa; font-family: inherit; font-size: 1rem;
}
label { font-size: .9rem; color: #6b5943; }
button.primary { background: #b06c2c; border: none; color: #fff; padding: 11px 22px; border-radius: 9px; font-size: 1rem; cursor: pointer; }
button.primary:hover { background: #99591f; }
.controls button { background: #efe3cf; border: none; padding: 11px 18px; border-radius: 9px; cursor: pointer; font-size: .95rem; margin-right: 8px; color:#4c3d2c; }
.controls button:disabled { opacity: .45; cursor: default; }
.controls { margin-top: 14px; }

.sessionbar { background: #efe3cf; border-radius: 999px; padding: 7px 16px; font-size: .85rem; color: #6b5943; margin-bottom: 14px; white-space: pre-line; }
.sessionbar.warn { background: #f4ddba; animation: softpulse 2.5s infinite; }
@keyframes softpulse { 0%,100%{opacity:1} 50%{opacity:.75} }

.padya-card { background: #fffaf0; border: 1px solid #eedfc6; }
.padya-sanskrit { font-size: 1.35rem; line-height: 1.9; margin: 10px 0 6px; }
.padya-translit { font-style: italic; color: #6b5943; margin-bottom: 10px; }
.padya-bhava-label { color: #b06c2c; font-size: .82rem; letter-spacing: 1px; text-transform: uppercase; }
.padya-bhava { margin-top: 4px; }
.narrative { line-height: 1.75; white-space: pre-line; }
.segment-title { color: #b06c2c; font-size: .8rem; letter-spacing: 2px; text-transform: uppercase; margin-bottom: 6px; }

.overlay { position: fixed; inset: 0; background: rgba(70,52,32,.55); display: flex; align-items: center; justify-content: center; z-index: 50; }
.overlay .card { width: min(92vw, 520px); }
.overlay textarea { resize: vertical; }

.toast { position: fixed; bottom: 24px; left: 50%; transform: translateX(-50%);
  background: #3b3025; color: #fdf6ec; padding: 10px 20px; border-radius: 999px; font-size: .9rem; z-index: 99; }

.jentry { border-left: 3px solid #d9a05b; }
.jentry .meta { font-size: .78rem; color: #a4937d; margin-bottom: 6px; }
.jentry .who { color: #b06c2c; font-weight: bold; }
.jentry audio { width: 100%; margin-top: 8px; }
#journal-list .day-gap { color: #a4937d; font-size: .8rem; margin: 18px 0 8px; letter-spacing: 1px; text-transform: uppercase; }
