/* ---- generic mock rows ---- */
.table-mock{ border-radius:var(--radius); overflow:hidden; margin-top:4px; box-shadow:var(--shadow); }
.table-mock .trow{ display:flex; border-bottom:1px solid #F1EDFB; background:var(--white); }
.table-mock .trow:last-child{ border-bottom:none; }
.table-mock .trow > div{ flex:1; padding:11px; font-size:13px; }
.table-mock .trow > div:first-child{ font-weight:700; background:var(--purple-light); color:var(--purple-dark); }
.hearts-row{ font-size:22px; letter-spacing:4px; margin-top:10px; }
.radar-wrap{ position:relative; width:100%; max-width:290px; aspect-ratio:1; margin:0 auto 16px; }
.radar-wrap svg{ width:100%; height:100%; }
.radar-icon-badge{
  position:absolute; width:38px; height:38px; border-radius:50%; transform:translate(-50%,-50%);
  display:flex; align-items:center; justify-content:center; font-size:16px; box-shadow:var(--shadow);
}
.bal-row{ display:flex; align-items:center; justify-content:space-between; background:var(--white); border-radius:16px; box-shadow:var(--shadow); padding:12px 14px; margin-bottom:10px; }
.bal-row .bal-name{ font-size:14px; font-weight:700; display:flex; align-items:center; gap:8px; }
.bal-row .bal-icon{ width:26px; height:26px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:13px; }
.bal-score-input{
  width:52px; text-align:center; border:1.5px solid #E7E1F5; border-radius:10px; padding:6px 4px;
  font-family:'Baloo 2'; font-weight:700; font-size:15px; color:var(--ink); background:var(--cream);
}
.island .stars{ font-size:15px; letter-spacing:2px; margin-top:4px; color:var(--gold-cell-dark); }
.row-emoji{ font-size:22px; display:flex; gap:10px; justify-content:space-between; }

/* ---- bottom nav bar ---- */
.bottom-nav{
  position:fixed; bottom:12px; left:12px; right:12px; max-width:480px; margin:0 auto;
  background:rgba(255,255,255,.97); box-shadow:0 10px 30px rgba(20,33,61,.15);
  display:flex; padding:8px 8px 10px; z-index:50; border-radius:28px; border:1px solid #EDF1F7;
}
.nav-btn{
  flex:1; display:flex; flex-direction:column; align-items:center; gap:2px;
  background:none; border:none; padding:7px 2px; font-family:'Manrope';
  cursor:pointer; color:var(--muted); border-radius:12px;
}
.nav-btn .nav-icon{ font-size:19px; line-height:1; display:inline-flex; align-items:center; justify-content:center; }
.nav-btn .nav-icon svg{width:19px;height:19px;stroke-width:2.2;}
.nav-btn .nav-label{ font-size:10px; font-weight:700; }
.nav-btn.active{ color:var(--purple-dark); background:var(--purple-light); }
.nav-btn.active .nav-icon{transform:translateY(-1px);}
.nav-btn{min-height:54px;}
.nav-btn:active{ transform:translateY(1px); }


/* ---- archive controls / notes ---- */
#view-archive .segmented{ display:flex; gap:8px; }
#view-archive .seg{
  flex:0 0 auto; min-height:44px; padding:9px 17px; border-radius:14px;
  border:1px solid #E5EAF3; background:#fff; color:var(--ink);
  font-family:'Manrope'; font-size:14px; font-weight:800; cursor:pointer;
}
#view-archive .seg.active{ background:var(--progress-blue); color:#fff; border-color:var(--progress-blue); }
.archive-note-card{ background:var(--white); border-radius:18px; box-shadow:var(--shadow); padding:15px; margin-bottom:10px; }
.archive-note-card .note-sprint-head{ display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:9px; }
.archive-note-card h3{ font-family:'Manrope'; font-size:15px; font-weight:800; line-height:1.25; }
.archive-note-card .note-date{ color:var(--muted); font-size:11px; font-weight:600; margin-top:3px; }
.archive-note-card textarea{ width:100%; height:78px; min-height:78px; max-height:78px; resize:none; overflow-y:auto; border:1.5px solid #E5EAF3; border-radius:12px; padding:10px 11px; background:var(--cream); color:var(--ink); font-family:'Manrope'; font-size:13px !important; line-height:1.4; outline:none; }
.archive-note-save{ margin-top:8px; width:100%; border:0; border-radius:11px; padding:10px; background:var(--progress-blue); color:#fff; font-family:'Manrope'; font-weight:800; font-size:12px; cursor:pointer; }
.archive-task-card{ background:var(--white); border-radius:18px; box-shadow:var(--shadow); padding:15px; margin-bottom:10px; }
.archive-task-card h3{ font-family:'Manrope'; font-size:15px; font-weight:800; margin-bottom:5px; }
.archive-task-card p{ margin:0; color:var(--muted); font-size:12px; line-height:1.4; }
