/* Three visible group choices on the 375px phone canvas. */
.app-window[data-tab="practices"] .ip-group-tabs{gap:6px;padding:2px 0 7px;scroll-padding-inline:0;scroll-snap-type:x proximity}
.app-window[data-tab="practices"] .ip-group-tab{flex:0 0 calc((100% - 12px)/3);width:calc((100% - 12px)/3);max-width:none;height:50px;min-height:50px;gap:4px;padding:4px 6px;border-radius:12px;scroll-snap-align:start}
.app-window[data-tab="practices"] .ip-group-tab .ip-group-icon{width:22px;height:25px;flex:0 0 22px;margin:0;border-radius:6px}
.app-window[data-tab="practices"] .ip-group-icon>.device-color-icon{width:22px;height:25px}
.app-window[data-tab="practices"] .ip-group-icon>.ip-icon{width:16px;height:19px}
.app-window[data-tab="practices"] .ip-group-label{display:block;flex:1;min-width:0;margin:0;color:inherit;text-align:left}
.app-window[data-tab="practices"] .ip-group-label>strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;max-width:none;white-space:normal;overflow-wrap:anywhere;font-size:12px;line-height:15px;overflow:hidden}
.app-window[data-tab="practices"] .lifecycle-tab-status{font-size:9px;line-height:10px;margin:0}
.app-window[data-tab="practices"] .ip-unbound-context{flex-wrap:nowrap;gap:8px;min-height:44px;margin:0 0 5px;padding:0 2px;font-size:11px;color:#71627f}
.app-window[data-tab="practices"] .ip-unbound-context>button{flex:none;min-height:44px;font-size:12px}

/* A compact hardware card retains its current readout, sources and four actions. */
.app-body-practices .ip-practice-cards{gap:12px}
.app-body-practices .ip-hardware-practice{padding:12px 14px}
.app-body-practices .ip-hardware-practice .ip-channel-meta{gap:7px}
.app-body-practices .ip-hardware-practice .ip-practice-index{font-size:11px;line-height:18px}
.app-body-practices .ip-hardware-practice .channel-type{font-size:10px;line-height:14px;padding:2px 5px}
.app-body-practices .ip-hardware-practice .channel-type-symbol{height:14px;min-width:14px;font-size:9px}
.app-body-practices .ip-hardware-practice .ip-practice-title>h3{margin-top:2px;font-size:18px;line-height:26px}
.app-body-practices .ip-hardware-practice .ip-detail-title{min-height:26px;line-height:26px;overflow-wrap:anywhere}
.app-body-practices .ip-hardware-practice .ip-more{width:32px;min-height:44px;margin-top:-5px}
.app-body-practices .ip-hardware-reading{margin-top:5px;padding-bottom:7px}
.app-body-practices .ip-reading-main{display:flex;align-items:center;justify-content:space-between;gap:8px}
.app-body-practices .ip-hardware-practice .ip-reading-label{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;font-size:12px;line-height:17px;color:#71627f;flex-shrink:0}
.app-body-practices .ip-hardware-practice .ip-reading-label>span{font-size:10px;line-height:14px;color:#7b6987}
.app-body-practices .ip-hardware-practice .ip-raw-count{margin:0;font-size:34px;line-height:40px;letter-spacing:1px}
.app-body-practices .ip-reading-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:8px;margin-top:2px}
.app-body-practices .ip-hardware-practice .ip-sync-text{font-size:10px;line-height:15px;color:#756881}
.app-body-practices .ip-list-today{display:flex;align-items:baseline;gap:5px;min-width:0;white-space:nowrap}
.app-body-practices .ip-list-today>span{font-size:10px;line-height:18px;color:#71627f}
.app-body-practices .ip-list-today>strong{font-size:16px;line-height:20px;font-weight:400;color:#51426d;--count-size-7:15px;--count-size-8:14px;--count-size-9:13px}
.app-body-practices .ip-list-cumulative{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:8px}
.app-body-practices .ip-list-cumulative .ip-source-stat>span{font-size:11px;line-height:16px;color:#71627f}
.app-body-practices .ip-list-cumulative .ip-source-stat>strong{font-size:21px;line-height:24px;margin-top:2px;letter-spacing:0;--count-size-7:18px;--count-size-8:16px;--count-size-9:14px}
.app-body-practices .ip-list-cumulative .ip-source-total>strong{color:#4e3f66}
.app-body-practices .ip-hardware-practice .ip-practice-actions{gap:8px;margin-top:9px}
.app-body-practices .ip-hardware-practice .ip-practice-actions>button{min-height:44px;padding:5px 1px;font-size:15px}
.app-body-practices .ip-hardware-practice .ip-channel-reminder{font-size:10px;line-height:15px;margin-top:3px}
.app-body-practices .ip-hardware-practice .ip-limit-note{min-height:44px;margin-top:6px;padding:6px 9px;font-size:11px;line-height:16px}
