


/* ==== MY RHYTHM, streamlined ============================================== */
/* The old journey index and the tall hero are hidden: her brief asks for a slim
   header and only four primary choices. Nothing is orphaned — every feature that
   lived in the journey is reachable from one of the four panels. */
#page-rhythm-dash .rhyd-hero,
#page-rhythm-dash #rjWrap{ display:none !important; }
#page-rhythm-dash.page.active{ padding-top:var(--nav-h,68px) !important; }

#mrxSec.mrx-sec-root{
  max-width:1180px; margin:0 auto; padding:20px clamp(16px,4vw,28px) 30px;
  font-family:'Nunito',system-ui,sans-serif;
}
#mrxSec .mrx-eb{
  margin:0 0 4px; font-size:.72rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase;
  color:#4E6640 !important; -webkit-text-fill-color:#4E6640 !important;
}
#mrxSec .mrx-h{
  margin:0 0 6px; font-size:clamp(1.4rem,3vw,1.9rem); font-weight:800; line-height:1.2;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSec .mrx-sub{
  margin:0 0 16px; font-size:.92rem; line-height:1.6; max-width:56ch;
  color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important;
}
#mrxSec .mrx-acts, #mrxSec .mrx-pacts{ display:flex; gap:10px; flex-wrap:wrap; margin-bottom:6px; }
#mrxSec .mrx-act{
  cursor:pointer; font:inherit; font-size:.86rem; font-weight:800;
  border-radius:999px; padding:12px 20px; min-height:46px;
  background:#fff !important; border:1px solid #E4DFD2 !important;
  color:#3F4753 !important; -webkit-text-fill-color:#3F4753 !important;
}
#mrxSec .mrx-act:hover{ background:#F4F6F1 !important; border-color:#CFE0C8 !important; }
#mrxSec .mrx-act.is-primary{
  background:#4E6640 !important; border-color:#4E6640 !important;
  color:#fff !important; -webkit-text-fill-color:#fff !important;
}
#mrxSec .mrx-act.is-primary:hover{ background:#445A38 !important; border-color:#445A38 !important; }
#mrxSec .mrx-act:focus-visible, #mrxSec .mrx-link:focus-visible, #mrxSec .mrx-tile:focus-visible,
#mrxSec .mrx-tick:focus-visible, #mrxSec .mrx-plus:focus-visible, #mrxSec .mrx-del:focus-visible,
#mrxSec .mrx-rc:focus-visible, #mrxSec .mrx-prow:focus-visible, #mrxSec .mrx-back:focus-visible,
#mrxSec .mrx-vb:focus-visible{ outline:3px solid #CF9E3F; outline-offset:2px; }
#mrxSec .mrx-sec{ margin-top:26px; }
#mrxSec .mrx-sechrow{ display:flex; align-items:flex-start; justify-content:space-between; gap:14px; flex-wrap:wrap; margin-bottom:12px; }
#mrxSec .mrx-sech{
  margin:0 0 2px; font-family:'Playfair Display',Georgia,serif; font-size:1.16rem; font-weight:700;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSec .mrx-sech.is-small{
  font-family:'Nunito',sans-serif; font-size:.78rem; font-weight:800;
  letter-spacing:.1em; text-transform:uppercase;
}
#mrxSec .mrx-secsub{
  margin:0; font-size:.82rem;
  color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important;
}
#mrxSec .mrx-link{
  cursor:pointer; font:inherit; font-size:.8rem; font-weight:800; min-height:40px;
  background:#fff; border:1px solid #E4DFD2; border-radius:999px; padding:9px 15px;
  color:#3F4753 !important; -webkit-text-fill-color:#3F4753 !important;
}
#mrxSec .mrx-chips{ display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }
#mrxSec .mrx-chip{
  background:#fff; border:1px solid #E8E4DC; border-radius:14px; padding:12px 13px;
  display:flex; flex-direction:column; gap:3px;
}
#mrxSec .mrx-ct{
  font-size:.84rem; font-weight:800;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSec .mrx-cm{
  font-size:.76rem;
  color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important;
}
#mrxSec .mrx-bar{ display:block; height:6px; border-radius:999px; background:#EDEAE2; overflow:hidden; margin-top:6px; }
#mrxSec .mrx-fill{ display:block; height:100%; background-image:none !important; background-color:#5F7350 !important; border-radius:999px; }
#mrxSec .mrx-tiles{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
#mrxSec .mrx-tile{
  display:flex; flex-direction:column; gap:5px; text-align:left; cursor:pointer; font:inherit;
  border:1px solid transparent; border-radius:22px; padding:22px; min-height:150px;
  transition:transform .16s ease, box-shadow .16s ease;
}
#mrxSec .mrx-tile:hover{ transform:translateY(-2px); box-shadow:0 12px 28px rgba(36,52,71,.10); }
#mrxSec .mrx-tile.is-sage { background:#EDF3E9 !important; border-color:#D7E3D2 !important; }
#mrxSec .mrx-tile.is-sky  { background:#EAF1F7 !important; border-color:#D6E3EE !important; }
#mrxSec .mrx-tile.is-lav  { background:#F1EEF9 !important; border-color:#E1DAF0 !important; }
#mrxSec .mrx-tile.is-blush{ background:#FBECEF !important; border-color:#F0DCE1 !important; }
#mrxSec .mrx-tn{
  font-size:1.2rem; font-weight:800; letter-spacing:.02em; text-transform:uppercase;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSec .mrx-tt{
  font-size:.88rem;
  color:#3F4753 !important; -webkit-text-fill-color:#3F4753 !important;
}
#mrxSec .mrx-tf{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:auto; padding-top:16px; }
#mrxSec .mrx-ts{
  font-size:.82rem; font-weight:800;
  color:#4E6640 !important; -webkit-text-fill-color:#4E6640 !important;
}
#mrxSec .mrx-arw{
  flex:none; width:34px; height:34px; border-radius:50%; background:#fff;
  display:flex; align-items:center; justify-content:center; font-size:.9rem;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSec .mrx-week{ background:#fff; border:1px solid #E8E4DC; border-radius:18px; padding:14px 16px; }
#mrxSec .mrx-wrow{ display:grid; grid-template-columns:minmax(90px,1fr) repeat(7,28px); gap:6px; align-items:center; padding:5px 0; }
#mrxSec .mrx-wrow + .mrx-wrow{ border-top:1px solid #F4F1EA; }
#mrxSec .mrx-wlab{
  font-size:.82rem; font-weight:700; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSec .mrx-wd{
  text-align:center; font-size:.68rem; font-weight:800;
  color:#565E6B !important; -webkit-text-fill-color:#565E6B !important;
}
#mrxSec .mrx-wc{
  width:28px; height:28px; border-radius:9px; background:#F4F1EA;
  display:flex; align-items:center; justify-content:center; font-size:.72rem; font-weight:800;
  color:#fff !important; -webkit-text-fill-color:#fff !important;
}
#mrxSec .mrx-wc.on{ background:#5F7350; }
#mrxSec .mrx-range{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
#mrxSec .mrx-rc{
  cursor:pointer; font:inherit; font-size:.86rem; font-weight:700; text-align:left;
  background:#fff; border:1px solid #E8E4DC; border-radius:14px; padding:14px; min-height:60px;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSec .mrx-rc:hover{ background:#F4F6F1; border-color:#CFE0C8; }
#mrxSec .mrx-ins{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
#mrxSec .mrx-ic{ background:#fff; border:1px solid #E8E4DC; border-radius:14px; padding:14px; display:flex; flex-direction:column; gap:3px; }
#mrxSec .mrx-it{
  font-size:.88rem; font-weight:800;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSec .mrx-im{
  font-size:.78rem;
  color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important;
}
#mrxSec .mrx-vault{
  display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;
  margin-top:26px; padding:14px 18px; background:#F4F6F1; border:1px solid #E2E8DD; border-radius:16px;
}
#mrxSec .mrx-vault span{
  font-size:.86rem;
  color:#4A5442 !important; -webkit-text-fill-color:#4A5442 !important;
}
#mrxSec .mrx-vb{
  cursor:pointer; font:inherit; font-size:.82rem; font-weight:800; min-height:44px;
  background:#fff; border:1px solid #DDD7C9; border-radius:999px; padding:11px 18px;
  color:#3D4A3A !important; -webkit-text-fill-color:#3D4A3A !important;
}
/* panels */
#mrxSec .mrx-back{
  cursor:pointer; font:inherit; font-size:.84rem; font-weight:800; min-height:44px;
  background:#fff; border:1px solid #E4DFD2; border-radius:999px; padding:10px 18px; margin-bottom:14px;
  color:#3F4753 !important; -webkit-text-fill-color:#3F4753 !important;
}
#mrxSec .mrx-ph{
  margin:0 0 6px; font-family:'Playfair Display',Georgia,serif; font-size:1.5rem; font-weight:700;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSec .mrx-psub{
  margin:0 0 16px; font-size:.9rem; line-height:1.6; max-width:60ch;
  color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important;
}
#mrxSec .mrx-hlist, #mrxSec .mrx-rlist, #mrxSec .mrx-plist{ list-style:none; margin:16px 0 0; padding:0; display:grid; gap:10px; }
#mrxSec .mrx-hrow{ display:flex; align-items:center; gap:12px; background:#fff; border:1px solid #E8E4DC; border-radius:14px; padding:12px 14px; }
#mrxSec .mrx-hrow.is-done{ background:#F6FAF4; }
#mrxSec .mrx-tick{
  flex:none; width:30px; height:30px; border-radius:50%; cursor:pointer;
  border:1px solid #CFE0C8; background:#fff; font-size:.85rem; font-weight:800;
  color:#fff !important; -webkit-text-fill-color:#fff !important;
}
#mrxSec .mrx-hrow.is-done .mrx-tick{ background:#5F7350; border-color:#5F7350; }
#mrxSec .mrx-hbody{ flex:1; display:flex; flex-direction:column; gap:2px; min-width:0; }
#mrxSec .mrx-hn{
  font-size:.94rem; font-weight:700;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSec .mrx-hm{
  font-size:.78rem;
  color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important;
}
#mrxSec .mrx-plus{
  flex:none; min-width:44px; height:36px; border-radius:999px; cursor:pointer; font:inherit;
  font-size:.78rem; font-weight:800; background:#EEF4EC; border:1px solid #D3E2CE;
  color:#41533C !important; -webkit-text-fill-color:#41533C !important;
}
#mrxSec .mrx-del{
  flex:none; width:34px; height:34px; border-radius:50%; cursor:pointer; font-size:.78rem;
  background:#fff; border:1px solid #EFEAE0;
  color:#5F6773 !important; -webkit-text-fill-color:#5F6773 !important;
}
#mrxSec .mrx-del:hover{ background:#FBEDEE; border-color:#F0D8DA; }
#mrxSec .mrx-rcard{ background:#fff; border:1px solid #E8E4DC; border-radius:16px; padding:14px 16px; }
#mrxSec .mrx-rhead{ display:flex; align-items:center; gap:10px; padding-bottom:8px; margin-bottom:8px; border-bottom:1px solid #EFEAE0; }
#mrxSec .mrx-rn{
  flex:1; font-family:'Playfair Display',Georgia,serif; font-size:1.02rem; font-weight:700;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSec .mrx-rw{
  font-size:.76rem; font-weight:800;
  color:#4E6640 !important; -webkit-text-fill-color:#4E6640 !important;
}
#mrxSec .mrx-ritems{ margin:0; padding-left:20px; display:grid; gap:3px; }
#mrxSec .mrx-ritems li{
  font-size:.86rem;
  color:#3F4753 !important; -webkit-text-fill-color:#3F4753 !important;
}
#mrxSec .mrx-prow{
  display:grid; grid-template-columns:1fr auto; gap:4px 12px; text-align:left; cursor:pointer; font:inherit;
  background:#fff; border:1px solid #E8E4DC; border-radius:14px; padding:14px 16px; align-items:center;
}
#mrxSec .mrx-prow:hover{ background:#F4F6F1; border-color:#CFE0C8; }
#mrxSec .mrx-pn{
  font-size:.94rem; font-weight:700;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSec .mrx-pd{
  grid-column:1; font-size:.8rem;
  color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important;
}
#mrxSec .mrx-prow .mrx-arw{ grid-row:1/3; grid-column:2; }
#mrxSec .mrx-none{
  margin:16px 0 0; padding:20px; background:#FBFAF8; border:1px dashed #E4DFD2; border-radius:14px;
  font-size:.88rem; color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important;
}
/* the add sheet */
#mrxSheet.mrx-bg{
  position:fixed; inset:0; z-index:9999; background:rgba(30,36,30,.40);
  display:flex; align-items:center; justify-content:center; padding:20px;
  font-family:'Nunito',system-ui,sans-serif;
}
#mrxSheet .mrx-box{
  position:relative; width:min(560px,100%); max-height:88vh; overflow:auto;
  background:#FFFDF9; border:1px solid #E7E2D6; border-radius:24px; padding:26px 24px 20px;
  box-shadow:0 26px 64px rgba(30,36,30,.24);
}
#mrxSheet .mrx-x{
  position:absolute; top:14px; right:14px; width:38px; height:38px; border-radius:50%;
  border:1px solid #E7E2D6; background:#fff; cursor:pointer;
  color:#3D4A3A !important; -webkit-text-fill-color:#3D4A3A !important;
}
#mrxSheet .mrx-bt{
  margin:0 40px 6px 0; font-family:'Playfair Display',Georgia,serif; font-size:1.3rem; font-weight:700;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSheet .mrx-bl{
  margin:0 0 16px; font-size:.88rem;
  color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important;
}
#mrxSheet .mrx-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
#mrxSheet .mrx-f.is-wide{ grid-column:1/-1; }
#mrxSheet .mrx-l{
  display:block; margin-bottom:6px; font-size:.72rem; font-weight:800;
  letter-spacing:.08em; text-transform:uppercase;
  color:#4E5A49 !important; -webkit-text-fill-color:#4E5A49 !important;
}
#mrxSheet .mrx-req{
  text-transform:none; letter-spacing:0; font-size:.66rem;
  color:#94465A !important; -webkit-text-fill-color:#94465A !important;
}
#mrxSheet .mrx-i{
  width:100%; box-sizing:border-box; min-height:46px; border:1px solid #E4DFD2; border-radius:14px;
  padding:11px 14px; font:inherit; font-size:.9rem; background:#fff;
  color:#243447 !important; -webkit-text-fill-color:#243447 !important;
}
#mrxSheet textarea.mrx-i{ min-height:84px; resize:vertical; }
#mrxSheet .mrx-i:focus-visible{ outline:3px solid #CF9E3F; outline-offset:2px; }
#mrxSheet .mrx-hint{
  margin:6px 0 0; font-size:.76rem;
  color:#6B7280 !important; -webkit-text-fill-color:#6B7280 !important;
}
#mrxSheet .mrx-fchips{ display:flex; flex-wrap:wrap; gap:8px; }
#mrxSheet .mrx-fchip{
  cursor:pointer; font:inherit; font-size:.8rem; font-weight:700; border-radius:999px;
  padding:9px 14px; min-height:40px; background:#fff; border:1px solid #E4DFD2;
  color:#3F4753 !important; -webkit-text-fill-color:#3F4753 !important;
}
#mrxSheet .mrx-fchip.on{
  background:#4E6640; border-color:#4E6640;
  color:#fff !important; -webkit-text-fill-color:#fff !important;
}
#mrxSheet .mrx-foot{ display:flex; justify-content:flex-end; gap:10px; flex-wrap:wrap; margin-top:18px; padding-top:14px; border-top:1px solid #EFEAE0; }
#mrxSheet .mrx-act{
  cursor:pointer; font:inherit; font-size:.86rem; font-weight:800; border-radius:999px;
  padding:12px 22px; min-height:46px; background:#fff; border:1px solid #DDD7C9;
  color:#3D4A3A !important; -webkit-text-fill-color:#3D4A3A !important;
}
#mrxSheet .mrx-act.is-primary{
  background:#4E6640; border-color:#4E6640;
  color:#fff !important; -webkit-text-fill-color:#fff !important;
}
.mrx-toast{
  position:fixed; left:50%; bottom:26px; transform:translateX(-50%) translateY(12px); z-index:10000;
  background:#243447; color:#fff !important; -webkit-text-fill-color:#fff !important;
  padding:12px 20px; border-radius:999px; font-size:.85rem; font-weight:700;
  font-family:'Nunito',system-ui,sans-serif; opacity:0; pointer-events:none;
  transition:opacity .2s, transform .2s;
}
.mrx-toast.on{ opacity:1; transform:translateX(-50%) translateY(0); }
@media (prefers-reduced-motion:reduce){
  #mrxSec .mrx-tile{ transition:none !important; }
  #mrxSec .mrx-tile:hover{ transform:none !important; }
}
@media (max-width:1100px){
  #mrxSec .mrx-chips{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  #mrxSec .mrx-range, #mrxSec .mrx-ins{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px){
  #mrxSec .mrx-chips{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  #mrxSec .mrx-tiles{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  #mrxSec .mrx-tile{ min-height:0; padding:16px; }
  #mrxSec .mrx-tn{ font-size:1rem; }
  #mrxSheet .mrx-grid{ grid-template-columns:minmax(0,1fr); }
  #mrxSheet.mrx-bg{ padding:0; align-items:flex-end; }
  #mrxSheet .mrx-box{ width:100%; max-height:93vh; border-radius:24px 24px 0 0; }
  #mrxSec .mrx-wrow{ grid-template-columns:minmax(70px,1fr) repeat(7,22px); gap:4px; }
  #mrxSec .mrx-wc{ width:22px; height:22px; border-radius:7px; font-size:.62rem; }
}
@media (max-width:420px){
  #mrxSec .mrx-chips{ grid-template-columns:minmax(0,1fr); }
  #mrxSec .mrx-range, #mrxSec .mrx-ins{ grid-template-columns:minmax(0,1fr); }
}


#mrxSec .mrx-mine{
  display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-top:22px;
  background:#F4F6F1 !important; border:1px solid #E2E8DD !important; border-radius:20px; padding:16px 20px;
}
#mrxSec .mrx-mine-ic{
  flex:none; width:44px; height:44px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  background:#E2EBDD; font-size:1.05rem;
  color:#41533C !important; -webkit-text-fill-color:#41533C !important;
}
#mrxSec .mrx-mine-t{ flex:1; display:flex; flex-direction:column; gap:2px; min-width:200px; }
#mrxSec .mrx-mine-t strong{ font-size:.95rem; color:#243447 !important; -webkit-text-fill-color:#243447 !important; }
#mrxSec .mrx-mine-t span{ font-size:.84rem; line-height:1.5; color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important; }
#mrxSec .mrx-mine-b{
  flex:none; cursor:pointer; font:inherit; font-size:.84rem; font-weight:800; border-radius:999px;
  padding:11px 18px; min-height:44px;
  background:#fff !important; border:1px solid #DDD7C9 !important;
  color:#3D4A3A !important; -webkit-text-fill-color:#3D4A3A !important;
}
#mrxSec .mrx-mine-b:hover{ background:#EEF4EC !important; border-color:#CFE0C8 !important; }
#mrxSec .mrx-mine-b:focus-visible{ outline:3px solid #CF9E3F; outline-offset:2px; }
@media (max-width:430px){ #mrxSec .mrx-mine-b{ width:100%; } }


/* ---- habits grouped by time of day (routines are retired) --------------- */
#mrxSec .mrx-hgrp{ margin:0 0 18px; }
#mrxSec .mrx-hgh{
  display:flex; align-items:baseline; justify-content:space-between; gap:10px;
  font-family:'Nunito',system-ui,sans-serif !important;
  font-size:.74rem !important; font-weight:800 !important; letter-spacing:.14em; text-transform:uppercase;
  margin:0 0 8px !important; color:#5E6A54 !important; -webkit-text-fill-color:#5E6A54 !important;
}
#mrxSec .mrx-hgc{ letter-spacing:0; text-transform:none; font-size:.78rem; font-weight:700;
  color:#5F6773 !important; -webkit-text-fill-color:#5F6773 !important; }
/* the day-of-week multi-select in the habit sheet */
#mrxSheet .mrx-fchips.is-multi{ display:flex; gap:7px; flex-wrap:wrap; }

