.runtime-panel { margin:20px 0; }
.runtime-context {
  display:grid;
  grid-template-columns:minmax(150px,220px) 1fr auto;
  gap:14px 20px;
  align-items:end;
  margin-bottom:18px;
}
.runtime-context label { margin:0; }
.runtime-context p { align-self:center; margin:0; color:var(--muted); }
.runtime-lane-help { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; min-width:0; }
.runtime-lane-help p { flex:1 1 150px; min-width:0; }
.runtime-reset { grid-column:1/-1; justify-self:end; min-height:44px; padding:8px 12px; }
.runtime-mode { display:grid; gap:6px; }
.control-label { color:var(--muted); font-size:.78rem; font-weight:750; }
.lane-switch { display:grid; grid-template-columns:1fr 1fr; gap:3px; padding:3px; border:1px solid var(--border); border-radius:13px; background:#090a16aa; }
.lane-switch button { min-height:44px; padding:8px 14px; background:transparent; color:var(--muted); border-radius:9px; }
.lane-switch button[aria-pressed="true"] { background:linear-gradient(135deg,var(--accent),var(--cool)); color:#10101d; }
.runtime-balance { display:grid; align-content:center; justify-items:end; min-height:48px; padding:5px 0; }
.runtime-balance span { font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; color:var(--muted); font-weight:800; }
.runtime-balance strong { font-size:1.3rem; color:var(--accent); }
.runtime-status-control { grid-column:1/-1; display:grid; grid-template-columns:auto minmax(220px,1fr) auto; gap:10px; align-items:end; padding:12px; border:1px solid var(--border); border-radius:14px; background:color-mix(in srgb,var(--surface) 80%,var(--bg)); }
.runtime-status-control label { display:grid; gap:5px; color:var(--muted); font-size:.78rem; font-weight:750; }
.runtime-status-control label span { font-weight:500; }
.runtime-status-control input,.runtime-status-control button { min-height:44px; }
.runtime-status-chip { align-self:center; display:inline-flex; align-items:center; min-height:32px; padding:5px 10px; border:1px solid color-mix(in srgb,#9fffc9 55%,var(--border)); border-radius:999px; color:#9fffc9; font-size:.78rem; font-weight:850; }
.runtime-status-chip.paused { color:#ffd69f; border-color:color-mix(in srgb,#ffd69f 60%,var(--border)); background:color-mix(in srgb,#ffd69f 8%,transparent); }
.inline-confirmation { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:8px; align-items:center; padding-top:8px; border-top:1px solid var(--border); }
.inline-confirmation[hidden] { display:none; }
.inline-confirmation p { margin:0; color:var(--text); }
.attention-summary { margin:0 0 14px; padding:14px; border:1px solid color-mix(in srgb,var(--cool) 30%,var(--border)); border-radius:16px; background:color-mix(in srgb,var(--cool) 6%,var(--surface)); }
.attention-summary h3 { margin:0 0 10px; font-size:1rem; }
.attention-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.attention-card { min-height:56px; padding:9px; display:grid; gap:2px; justify-items:start; text-align:left; background:color-mix(in srgb,var(--surface) 82%,var(--bg)); color:var(--text); border-color:var(--border); }
.attention-card strong { font-size:1.05rem; color:var(--cool); }
.attention-card span { color:var(--muted); font-size:.75rem; }
.attention-card.safety-yellow { border-color:#ffd36a; }.attention-card.safety-red { border-color:#ff7d96; }
.task-conversation { margin-top:10px; border-top:1px solid var(--border); padding-top:8px; }
.task-conversation summary { min-height:44px; display:flex; align-items:center; cursor:pointer; color:var(--cool); font-weight:800; }
.comment-list { display:grid; gap:7px; margin:6px 0; }
.comment-row { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:8px; padding:8px 10px; border-radius:11px; background:color-mix(in srgb,var(--surface) 75%,var(--bg)); }
.comment-row.owner { border-left:3px solid var(--accent); }
.comment-row.pet { border-left:3px solid var(--cool); }
.comment-row span { overflow-wrap:anywhere; }
.comment-row small { color:var(--muted); }
.comment-composer { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:end; }
.comment-composer textarea,.claim-card textarea,.checkin-item textarea { min-height:68px; }
.comment-composer button,.claim-actions button,.checkin-item button { min-height:44px; }
.claim-card.status-ready { border-color:color-mix(in srgb,var(--accent) 55%,var(--border)); }
.checkin-item.safety-yellow { border-left:4px solid #ffd36a; }
.checkin-item.safety-red { border-left:4px solid #ff7d96; }
.owner-response { padding:9px 11px; border-radius:10px; background:color-mix(in srgb,var(--accent) 9%,var(--surface)); }
.point-adjuster {
  display:grid;
  grid-template-columns:minmax(210px,.8fr) minmax(240px,1.2fr);
  gap:14px 20px;
  padding:clamp(16px,3vw,24px);
  border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);
  border-radius:18px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 11%,var(--surface)),color-mix(in srgb,var(--surface) 92%,var(--bg)));
}
.point-adjuster h3,.runtime-section h3 { margin:0 0 6px; }
.point-adjuster-heading { display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; }
.point-adjuster-heading h3 { margin:0; }
.point-lane-chip { display:inline-flex; align-items:center; min-height:28px; padding:4px 9px; border:1px solid color-mix(in srgb,var(--accent) 58%,transparent); border-radius:999px; background:color-mix(in srgb,var(--accent) 14%,var(--surface)); color:var(--text); font-size:.75rem; font-weight:800; }
.point-lane-chip.sandbox { border-color:color-mix(in srgb,var(--cool) 70%,transparent); background:color-mix(in srgb,var(--cool) 18%,var(--surface)); }
.point-lane-chip.paused { border-color:#ffd69f; color:#ffd69f; background:color-mix(in srgb,#ffd69f 8%,var(--surface)); }
.quick-console-link { display:inline-flex; align-items:center; min-height:44px; margin-left:auto; color:var(--cool); font-size:.82rem; font-weight:800; text-decoration:none; }
.quick-console-link:hover,.quick-console-link:focus-visible { text-decoration:underline; }
.point-adjuster-copy p { margin:0; color:var(--muted); max-width:46ch; }
.point-reason { margin:0; }
.point-reason span { color:var(--muted); font-weight:500; }
.point-reason input { min-height:44px; }
.point-action-row {
  display:grid;
  grid-template-columns:minmax(72px,auto) repeat(3,minmax(64px,96px));
  gap:8px;
  align-items:center;
}
.point-action-row>span { color:var(--muted); font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.point-button { min-height:48px; padding:10px 14px; border-radius:12px; font-size:1.05rem; }
.point-button.add { background:color-mix(in srgb,var(--accent) 25%,var(--surface)); color:var(--text); border-color:color-mix(in srgb,var(--accent) 60%,transparent); }
.point-button.subtract { background:color-mix(in srgb,var(--accent2) 13%,var(--surface)); color:var(--text); border-color:color-mix(in srgb,var(--accent2) 48%,transparent); }
.point-button:disabled,.point-feedback button:disabled { opacity:.55; cursor:wait; }
.point-feedback { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; }
.point-status { flex:1; min-height:1.4em; color:var(--muted); }
.point-status:empty { display:none; }
.point-feedback button { flex:0 0 auto; min-height:44px; padding:8px 13px; }
.point-status.good { color:#9fffc9; }
.point-status.bad { color:#ff9eb2; }
.runtime-section { margin-top:24px; padding-top:20px; border-top:1px solid var(--border); }
.point-history { display:grid; gap:8px; }
.point-history-item { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:12px; align-items:center; padding:11px 13px; border:1px solid var(--border); border-radius:13px; background:color-mix(in srgb,var(--surface) 82%,var(--bg)); }
.point-delta { min-width:3.4rem; font-size:1.08rem; text-align:center; }
.point-delta.positive { color:#9fffc9; }
.point-delta.negative { color:#ff9eb2; }
.point-history-copy { display:grid; gap:3px; min-width:0; }
.point-history-copy span { overflow-wrap:anywhere; }
.point-history-copy small { color:var(--muted); }
.delete-point-event { min-width:44px; min-height:44px; padding:0; border-radius:50%; background:transparent; color:var(--muted); border-color:transparent; font-size:1.5rem; line-height:1; }
.delete-point-event:hover,.delete-point-event:focus-visible { color:#ff9eb2; border-color:color-mix(in srgb,#ff9eb2 58%,transparent); background:color-mix(in srgb,#ff9eb2 10%,transparent); }
.delete-point-event:disabled { opacity:.45; cursor:wait; }
.runtime-toolbar { display:grid; grid-template-columns:minmax(220px,1fr) auto auto; gap:12px; align-items:end; }
.runtime-toolbar label { margin:0; }
.share-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.share-card { display:grid; grid-template-columns:1fr auto; gap:8px; align-items:center; padding:12px; border:1px solid var(--border); border-radius:14px; background:color-mix(in srgb,var(--surface) 80%,var(--bg)); }
.share-card span { grid-column:1/-1; color:var(--muted); font-size:.75rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.share-card a { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--accent); }
.runtime-disclosure { margin-top:10px; border-top:1px solid var(--border); }
.runtime-disclosure>summary { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; min-height:48px; padding:9px 2px; cursor:pointer; list-style:none; font-weight:800; }
.runtime-disclosure>summary::-webkit-details-marker { display:none; }
.runtime-disclosure>summary::before { content:'›'; color:var(--accent); font-size:1.4rem; line-height:1; transition:transform .15s ease; }
.runtime-disclosure[open]>summary::before { transform:rotate(90deg); }
.runtime-disclosure>summary small { margin-left:auto; color:var(--muted); font-size:.75rem; font-weight:600; }
.runtime-disclosure>summary small.attention { color:#ff9eb2; font-weight:850; }
.runtime-disclosure[open]>summary { margin-bottom:10px; }
@media(max-width:760px) {
  .runtime-context { grid-template-columns:1fr auto; }
  .runtime-context p { grid-column:1/-1; grid-row:2; }
  .point-adjuster { grid-template-columns:1fr; }
  .point-feedback { grid-column:1; }
  .runtime-toolbar { grid-template-columns:1fr 1fr; }
  .runtime-toolbar label { grid-column:1/-1; }
  .runtime-status-control { grid-template-columns:1fr auto; }
  .runtime-status-control label { grid-column:1/-1; }
}
@media(max-width:560px) {
  .runtime-panel { margin:8px 0; }
  .runtime-panel>.section-heading { margin-bottom:10px; }
  .runtime-panel>.section-heading h2 { font-size:1.25rem; }
  .runtime-panel>.section-heading>p { display:none; }
  .runtime-context { grid-template-columns:minmax(0,1fr); align-items:end; gap:6px 10px; margin-bottom:10px; }
  .runtime-mode,.runtime-lane-help,.runtime-balance,.runtime-reset { grid-column:1; }
  .runtime-lane-help { grid-row:auto; }
  .runtime-context p { margin:0; font-size:.8rem; }
  .runtime-balance { justify-items:end; min-height:44px; padding:0; }
  .runtime-balance strong { font-size:1.15rem; }
  .point-adjuster { border:0; border-radius:0; background:none; padding:2px 0 0; gap:10px; }
  .point-adjuster-copy h3 { font-size:1rem; }
  .point-adjuster-heading { justify-content:space-between; }
  .point-adjuster-copy p { display:none; }
  .point-reason { gap:5px; }
  .point-action-row { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .point-action-row>span { grid-column:1/-1; }
  .point-feedback { min-height:0; }
  .runtime-disclosure { margin-top:7px; }
  .runtime-disclosure>summary { min-height:46px; padding:7px 0; }
  .runtime-toolbar,.share-grid { grid-template-columns:1fr; }
  .runtime-toolbar button,.share-card button { width:100%; }
  .share-card { grid-template-columns:1fr; }
  .runtime-context p { margin:6px 0 0; color:var(--muted); font-size:.9rem; }
  .runtime-status-control,.comment-composer { grid-template-columns:minmax(0,1fr); }
  .inline-confirmation,.attention-grid { grid-template-columns:minmax(0,1fr); }
  .runtime-status-control button,.comment-composer button { width:100%; }
  .comment-row { grid-template-columns:minmax(0,1fr); }
}
