/* Vårt liv – färgförslag 1: varm skandinavisk.
   Endast visuell färgsättning; alla funktioner behålls. */
:root {
  --bg: #f7f1e8;
  --paper: #fffdfa;
  --ink: #273c56;
  --muted: #7c8290;
  --primary: #273c56;
  --primary-dark: #1a2d46;
  --mint: #f0e5da;
  --line: #e9e0d5;
  --amber: #cb8c77;
  --purple: #9382ae;
  --shadow: 0 10px 32px rgba(59, 48, 50, .05);
}

body { background: var(--bg); }
.sidebar { background: #fffdf9; border-color: #e7ddd2; }
.brandmark { background: #273c56; box-shadow: 0 6px 15px #273c5628; }
.brand-sub, .family-text span { color: #9a8d83; }
.sidebar-label { color: #af9e90; }
.navbtn { color: #6e7580; }
.navbtn:hover { background: #f7efe6; }
.navbtn.active { color: #273c56; background: #f1e4d8; }
.sidebar-bottom { background: #f6efe7; }
.avatar, .person-dot { background: #cb8c77; }
.avatar.pia { background: #9382ae; }
.pill { background: #fffdf9; }
.eyebrow { color: #9c6b5b; }

.hero {
  background: linear-gradient(115deg, #f0dfcd 0%, #f6eadd 55%, #f7ebe6 100%);
}
.hero::after { border-color: rgba(255,255,255,.24); }
.hero-date { color: #9a6651; }
.hero p { color: #78747a; }
.hero-symbol { color: #b97d67; opacity: .18; }
.notice { background: #fff9f0; color: #8e674b; border-color: #eddfca; }
.card { border-color: #ebe1d6; }
.card-head h2, .section-heading h2, .page-title { color: #273c56; }
.subtle, .page-intro { color: #8d8b8b; }

.cal-tools .month-title { color: #33485f; }
.day { background: #f8f3ed; }
.day:hover { border-color: #d6b8a5; }
.day .dayname { color: #9c958c; }
.day.selected { background: #273c56; color: #fff; }
.day.selected .dayname { color: #e8d8cb; }
.day .dot { background: #cb8c77; }
.day.selected .dot { background: #f4cbb7; }
.event { background: #faf5f1; border-left-color: #cb8c77; }
.event.peter { background: #fff8ee; border-left-color: #d7a05e; }
.event.pia { background: #f8f5fa; border-left-color: #9382ae; }
.event-title { color: #7d7a7e; }
.legend span { color: #908b8a; }
.legend i { background: #cb8c77; }
.legend .peter i { background: #d7a05e; }
.legend .pia i { background: #9382ae; }

.empty { background: #fffdf9; border-color: #e8dfd4; color: #948c86; }
.note { background: #fffdfa; border-color: #ece2d8; }
.note-text { color: #818487; }
.note-foot { color: #a59c93; }
.label-chip { background: #f1e1d5; color: #9b664f; }
.label-chip.private { background: #f0e9f5; color: #816ca1; }
.quick-input, .form-control { border-color: #e4d9ce; }
.quick-input:focus, .form-control:focus { border-color: #ba8f7b; }
.check-item { border-color: #f0e9e1; }
.check-item input[type=checkbox] { accent-color: #273c56; }
.item-detail { color: #9e9690; }
.feature, .feature-large { border-color: #e9dfd3; background: #fffdfa; }
.feature:hover { border-color: #d4ab94; }
.feature-emoji { background: #f0e5da; }
.feature:nth-child(4n + 2) .feature-emoji { background: #fae8df; }
.feature:nth-child(4n + 3) .feature-emoji { background: #efe8f4; }
.feature:nth-child(4n + 4) .feature-emoji { background: #e8ebf4; }
.feature-desc, .feature-large p { color: #999390; }
.mobile-nav { background: #fffdf9; border-color: #e7ddd2; }
.mobile-link { color: #9e9188; }
.mobile-link.active { color: #273c56; }
.modal { background: #fffdfa; }
.modal h2 { color: #273c56; }
.toast { background: #273c56; }
