/* ===== Bottom-sheet: dedicated drag handle (only this drags) ===== */
.sheet-drag-handle{ flex:none; display:flex; justify-content:center; align-items:center;
  padding:12px 0 6px; cursor:grab; touch-action:none; -webkit-user-select:none; user-select:none; }
.sheet-drag-handle:active{ cursor:grabbing; }
.sheet-drag-handle .handle{ width:44px; height:5px; border-radius:5px; background:var(--border); display:block; }
.sheet .sheet-body{ touch-action:pan-y; }
/* keep .lrow value column from touching the sheet edge on small screens */
.sheet .sheet-body .lrow > div:last-child{ padding-left:10px; min-width:0; word-break:break-word; text-align:right; }

/* ===== Action-card alignment: icon vertically centered, text left ===== */
.auth-btn{ align-items:center; text-align:left; }
.auth-btn > div{ text-align:left; line-height:1.35; min-width:0; }
.auth-btn > i{ display:flex; align-items:center; justify-content:center; }
.set-row, .lrow, .req, .side-link{ text-align:left; }
.set-row > div:not(.sic):not(.chev), .req > div{ text-align:left; }
.qa{ text-align:left; }
.qa .qt, .qa .qs{ text-align:left; }
/* Dark-mode fix: use semantic theme text colours for non-accent quick actions */
.qa:not(.accent){ color:var(--text); }
.qa:not(.accent) .qt{ color:var(--text); }
.qa:not(.accent) .qs{ color:var(--text-muted); opacity:1; }
/* compact detail grid for Lifafa details */
.lf-dgrid{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.lf-dgrid-item{ background:var(--surface-2); border-radius:10px; padding:8px 10px; }
.lf-dgrid-item .tiny{ margin-bottom:2px; }

/* ===== Safe Wallet segmented control ===== */
.seg{ display:flex; gap:6px; background:var(--surface-2); border-radius:16px; padding:6px; position:relative; }
.seg-btn{ flex:1; display:flex; flex-direction:column; align-items:center; gap:2px; padding:12px 8px; border-radius:12px;
  font-weight:800; font-size:.9rem; color:var(--text-muted); transition:color .2s var(--ease), background .25s var(--ease); position:relative; z-index:1; }
.seg-btn .seg-sub{ font-size:.66rem; font-weight:600; opacity:.85; }
.seg-btn i{ font-size:1rem; margin-bottom:2px; }
.seg-btn.active{ color:#fff; }
.seg-ind{ position:absolute; top:6px; bottom:6px; width:calc(50% - 9px); border-radius:12px; background:var(--grad);
  box-shadow:0 8px 18px -8px var(--primary); transition:left .3s var(--ease); z-index:0; left:6px; }
.seg-ind.right{ left:calc(50% + 3px); }

.sw-src{ font-size:.8rem; color:var(--text-muted); margin-top:14px; }
.sw-src b{ color:var(--text); }
.pct-row{ display:flex; gap:8px; margin:10px 0; }
.pct-btn{ flex:1; padding:10px 0; border-radius:12px; background:var(--surface-2); font-weight:700; font-size:.85rem;
  color:var(--text-muted); transition:background .2s, color .2s, transform .12s; }
.pct-btn:active{ transform:scale(.94); }
.pct-btn.active{ background:var(--primary-soft); color:var(--primary-dark); }
.sw-preview{ background:var(--surface-2); border-radius:14px; padding:12px 14px; margin-top:6px; font-size:.85rem; }
.sw-preview .pr{ display:flex; justify-content:space-between; padding:3px 0; }
.sw-preview .pr b{ font-variant-numeric:tabular-nums; }


/* Active Sessions: detail-rich, consistently left-aligned layout. */
.sheet .sheet-body .session-row{align-items:flex-start;text-align:left!important;gap:12px}
.sheet .sheet-body .session-row>.session-main{flex:1;min-width:0;padding-left:0!important;text-align:left!important;word-break:normal!important}
.session-title{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-weight:800;text-align:left}
.session-detail{display:flex;align-items:flex-start;gap:7px;margin-top:6px;font-size:.75rem;color:var(--text-muted);text-align:left}
.session-detail>i{width:14px;margin-top:2px;flex:0 0 14px;text-align:center}
.session-detail span{min-width:0}
.session-ua{display:flex;align-items:flex-start;gap:7px;margin-top:7px;padding:8px 9px;border-radius:10px;background:var(--surface-2);color:var(--text-muted);font-size:.68rem;line-height:1.35;text-align:left}
.session-ua>i{margin-top:2px;flex:0 0 auto}
.session-ua span{min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}
.session-revoke{margin-top:9px}
.session-icon{margin-top:1px}
