/* Axis 0.8.0 — connected data controls. */
.axis2-manager-list li {
  grid-template-columns: 30px minmax(0,1fr) auto auto;
}
.axis2-manager-list li > aside {
  display: inline-flex;
  gap: 6px;
}
.axis2-manager-list li > aside button,
.axis2-row-actions button {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(145,160,195,.2);
  border-radius: 10px;
  color: #b7c1d8;
  background: rgba(255,255,255,.035);
  cursor: pointer;
  transition: border-color .15s ease, color .15s ease, background .15s ease, transform .15s ease;
}
.axis2-manager-list li > aside button:hover,
.axis2-row-actions button:hover {
  color: #fff;
  border-color: rgba(117,87,255,.55);
  background: rgba(117,87,255,.14);
  transform: translateY(-1px);
}
.axis2-manager-list li > aside button:last-child:hover,
.axis2-row-actions button:last-child:hover {
  color: #ff8b9b;
  border-color: rgba(255,101,119,.48);
  background: rgba(255,101,119,.1);
}
.axis2-delete-warning {
  min-height: 84px;
  display: grid;
  place-items: center;
  padding: 18px;
  border: 1px solid rgba(255,101,119,.28);
  border-radius: 16px;
  color: #f1c3ca;
  background: rgba(255,101,119,.07);
  text-align: center;
  font-size: 13px;
  line-height: 1.5;
}
.axis2-row-actions {
  position: absolute;
  right: 10px;
  top: 50%;
  z-index: 3;
  display: inline-flex;
  gap: 5px;
  opacity: 0;
  transform: translateY(-50%) translateX(5px);
  transition: opacity .16s ease, transform .16s ease;
}
[data-axis-transaction-id],
[data-axis-task-id],
[data-axis-habit-id],
[data-axis-meal-id] { position: relative; padding-right: 84px !important; }
[data-axis-transaction-id]:hover .axis2-row-actions,
[data-axis-task-id]:hover .axis2-row-actions,
[data-axis-habit-id]:hover .axis2-row-actions,
[data-axis-meal-id]:hover .axis2-row-actions,
.axis2-row-actions:focus-within { opacity: 1; transform: translateY(-50%) translateX(0); }
.axis2-history-button {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid rgba(117,87,255,.3);
  border-radius: 12px;
  padding: 0 14px;
  color: #cfc7ff;
  background: rgba(117,87,255,.08);
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
}
.axis2-history-button:hover { background: rgba(117,87,255,.15); }
html[data-axis-data-engine="0.8.0"] .analytics-score-ring {
  background: conic-gradient(#7557ff calc(var(--axis-score, 0) * 1%), #26354f 0);
}
html[data-axis-data-engine="0.8.0"] .analytics-card,
html[data-axis-data-engine="0.8.0"] .food-panel,
html[data-axis-data-engine="0.8.0"] .money-panel {
  transition: border-color .18s ease, box-shadow .18s ease;
}
html[data-axis-data-engine="0.8.0"] .axis-local-row::after { box-shadow: inset 3px 0 0 rgba(117,87,255,.7); }

@media (max-width: 720px) {
  .axis2-manager-list li { grid-template-columns: 28px minmax(0,1fr) auto; }
  .axis2-manager-list li > b { grid-column: 2; }
  .axis2-manager-list li > aside { grid-column: 3; grid-row: 1 / span 2; }
  .axis2-manager-list li > aside button { width: 34px; height: 34px; }
  .axis2-row-actions {
    position: static;
    grid-column: 1 / -1;
    justify-self: end;
    opacity: 1;
    transform: none;
    margin-top: 6px;
  }
  [data-axis-transaction-id],
  [data-axis-task-id],
  [data-axis-habit-id],
  [data-axis-meal-id] { padding-right: 12px !important; }
  .axis2-history-button span { display: none; }
  .axis2-history-button { width: 40px; padding: 0; }
}
.axis2-demo-hidden { display: none !important; }
.axis2-empty-inline {
  grid-column: 1 / -1;
  min-height: 116px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 6px;
  border: 1px dashed rgba(145,160,195,.2);
  border-radius: 15px;
  color: #8390aa;
  background: rgba(255,255,255,.018);
  text-align: center;
}
.axis2-empty-inline[hidden] { display: none !important; }
.axis2-empty-inline svg { color: #8c73ff; }
.axis2-empty-inline strong { color: #dce2f0; font-size: 12px; }
.axis2-empty-inline span { font-size: 10px; }

/* Axis 0.8.2 — desktop header action alignment. */
@media (min-width: 721px) {
  .health-page__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    align-items: start;
    column-gap: 18px;
  }
  .health-page__header > h1 {
    grid-column: 1;
    grid-row: 1;
  }
  .health-page__header > p {
    grid-column: 1;
    grid-row: 2;
  }
  .health-page__header > .axis2-history-button {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: start;
    justify-self: end;
  }

  .habits-page__header {
    justify-content: flex-start;
    align-items: flex-start;
  }
  .habits-page__header > div:first-child {
    margin-right: auto;
  }
  .habits-page__header > .habits-add-button,
  .habits-page__header > .axis2-history-button {
    flex: 0 0 auto;
  }
}

@media (max-width: 720px) {
  .health-page__header > .axis2-history-button,
  .habits-page__header > .axis2-history-button {
    display: none;
  }
}

/* Axis 0.9.3 — mobile meal-card footer: keep status and actions in separate cells. */
.food-meal-card[data-axis-meal-id] > em {
  position: static;
  right: auto;
  bottom: auto;
  align-self: center;
  justify-self: start;
  margin-top: 5px;
}
@media (max-width: 720px) {
  .food-meal-card[data-axis-meal-id] {
    height: auto;
    min-height: 145px;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto auto auto;
    align-content: start;
  }
  .food-meal-card[data-axis-meal-id] .food-meal-card__top,
  .food-meal-card[data-axis-meal-id] .food-meal-card__items,
  .food-meal-card[data-axis-meal-id] > b {
    grid-column: 1 / -1;
  }
  .food-meal-card[data-axis-meal-id] > em {
    grid-column: 1;
    grid-row: 4;
    margin: 7px 0 0 3px;
    font-size: 7px;
  }
  .food-meal-card[data-axis-meal-id] .axis2-row-actions {
    grid-column: 2;
    grid-row: 4;
    align-self: center;
    justify-self: end;
    margin: 6px 0 0;
  }
  .food-meal-card[data-axis-meal-id] .axis2-row-actions button {
    width: 30px;
    height: 30px;
    border-radius: 9px;
  }
}

/* Axis 0.9.5 — money accounts, current balances and locked PDS */
.money-account-row.axis2-account-row{
  min-height:50px;
  padding:7px 12px;
  grid-template-columns:29px minmax(0,1fr) auto;
  gap:10px;
}
.money-account-row.axis2-account-row .money-account-row__copy{
  min-width:0;
  display:grid;
  gap:2px;
  color:#bbc4d5;
}
.money-account-row.axis2-account-row .money-account-row__copy b{
  min-width:0;
  color:#dce2ef;
  font-size:10px;
  line-height:1.2;
  font-weight:650;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.money-account-row.axis2-account-row .money-account-row__copy small{
  color:#74839d;
  font-size:8px;
  line-height:1.2;
}
.money-account-row--piggy .money-account-row__icon{
  color:#f2bd54!important;
  background:#d99d3024!important;
}
.money-account-row--pds{
  border-color:#8e78ff35!important;
  background:linear-gradient(145deg,#1a2039,#12182d)!important;
}
.money-account-row--pds .money-account-row__icon{
  color:#b5a5ff!important;
  background:#7459e52b!important;
}
.money-account-row--pds strong{
  color:#c8bdff!important;
}
.money-accounts__all[data-axis2-balance-editor]{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border-color:#7557ff42;
  color:#e2ddff;
  background:linear-gradient(145deg,#211e43,#171b34);
  cursor:pointer;
}
.money-accounts__all[data-axis2-balance-editor]:hover{
  border-color:#8e75ff78;
  background:linear-gradient(145deg,#28204f,#1b1e3b);
}
.axis-balance-editor{
  display:grid;
  gap:10px;
}
.axis-balance-editor__notice{
  padding:12px 14px;
  border:1px solid #7557ff32;
  border-radius:12px;
  color:#aeb8ce;
  background:#7557ff0f;
  font-size:12px;
  line-height:1.5;
}
.axis-balance-field{
  display:grid;
  grid-template-columns:minmax(150px,1fr) minmax(130px,.58fr);
  align-items:center;
  gap:6px 14px;
  padding:12px 14px;
  border:1px solid #8190b421;
  border-radius:13px;
  background:linear-gradient(145deg,#151f34,#0f192b);
}
.axis-balance-field>span{
  min-width:0;
  display:flex;
  align-items:center;
  gap:8px;
}
.axis-balance-field>span b{
  color:#edf0f8;
  font-size:13px;
}
.axis-balance-field>span i{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:3px 7px;
  border:1px solid #8a72ff40;
  border-radius:999px;
  color:#b9aaff;
  background:#7658f316;
  font-size:9px;
  font-style:normal;
  white-space:nowrap;
}
.axis-balance-field input{
  width:100%;
  min-height:42px;
  padding:0 12px;
  border:1px solid #8b99b82a;
  border-radius:10px;
  outline:none;
  color:#fff;
  background:#080f1e;
  text-align:right;
  font-size:14px;
  font-weight:700;
}
.axis-balance-field input:focus{
  border-color:#7c60ffb0;
  box-shadow:0 0 0 3px #7557ff17;
}
.axis-balance-field>small{
  grid-column:1 / -1;
  color:#728099;
  font-size:10px;
  line-height:1.35;
}
.axis-balance-field.is-locked{
  border-color:#8e78ff32;
  background:linear-gradient(145deg,#191d35,#11162b);
}
@media(max-width:720px){
  .money-account-row.axis2-account-row{min-height:48px;padding:6px 10px}
  .money-account-row.axis2-account-row .money-account-row__copy b{font-size:9px}
  .money-account-row.axis2-account-row .money-account-row__copy small{font-size:7.5px}
  .axis-balance-field{grid-template-columns:1fr;gap:8px;padding:11px 12px}
  .axis-balance-field input{text-align:left}
  .axis-balance-field>small{grid-column:auto}
}
@media(max-width:370px){
  .money-account-row.axis2-account-row{grid-template-columns:25px minmax(0,1fr) auto;gap:7px;padding-inline:8px}
  .money-account-row.axis2-account-row .money-account-row__copy b{font-size:8.5px}
  .money-account-row.axis2-account-row .money-account-row__copy small{font-size:7px}
}
