.x-v [hidden]{display:none!important}
.x-plan{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:6px;-webkit-overflow-scrolling:touch}
.x-row{display:flex;min-width:640px;border-bottom:1px solid var(--line)}
.x-row:last-child{border-bottom:0}
.x-lab{flex:0 0 92px;padding:6px 8px;font-size:.78rem;color:var(--head);display:flex;flex-direction:column;justify-content:center}
.x-lab small{color:var(--muted);font-size:.66rem;line-height:1.2}
.x-grid{flex:1;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:2px;padding:3px 0}
.x-grid>*{grid-row:1;min-height:38px}
.x-hd .x-grid>*{min-height:0;font-size:.68rem;color:var(--muted);text-align:center;padding:4px 0}
.x-hd .x-pk{color:var(--o);font-weight:600}
.x-hd em{display:block;font-style:normal;font-size:.6rem}
.x-cell{border:1px dashed var(--line);background:transparent;border-radius:6px;cursor:pointer;padding:0}
.x-cell.x-pk{background:rgba(255,140,0,.06)}
.x-cell:hover,.x-cell.x-drop{border-color:var(--o)}
.x-cell.x-drop{background:rgba(255,140,0,.14)}
.x-stay{border:0;border-left:3px solid var(--o);border-radius:6px;background:rgba(255,140,0,.16);color:var(--head);font:inherit;font-size:.72rem;font-weight:600;text-align:left;padding:4px 6px;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0}
.x-stay.x-in{background:rgba(255,140,0,.34)}
.x-stay.x-bad{border-left-color:#d64545;background-image:repeating-linear-gradient(45deg,transparent 0 6px,rgba(214,69,69,.14) 6px 12px)}
.x-stay.x-on{outline:2px solid var(--o);outline-offset:1px}
.x-legend{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;margin:8px 0}
.x-k{display:inline-block;width:14px;height:10px;border-radius:3px;background:rgba(255,140,0,.16);border-left:3px solid var(--o);vertical-align:middle;margin-right:5px}
.x-k.x-in{background:rgba(255,140,0,.34)}
.x-k.x-bad{border-left-color:#d64545}
.x-k.x-pk{background:rgba(255,140,0,.06);border:1px dashed var(--o)}
.x-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px;margin:10px 0;overflow-wrap:anywhere;color:var(--text)}
.x-card p{margin:.35em 0}
.x-btns{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.x-form{display:grid;gap:8px;background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:10px}
.x-form h4{margin:0;color:var(--head)}
.x-form input:not([type=checkbox]),.x-v select,.x-v textarea,.x-nf input{width:100%;min-width:0;box-sizing:border-box;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--text);font:inherit;font-size:.88rem}
.x-v textarea{resize:vertical}
.x-r2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
.x-chk{display:flex;gap:8px;align-items:center;font-size:.85rem;color:var(--text);margin:6px 0}
.x-quote{font-size:.83rem;color:var(--text);border-top:1px solid var(--line);padding-top:6px;overflow-wrap:anywhere}
.x-quote p{margin:.25em 0}
.x-warn{color:#d64545;font-weight:600}
.x-wl,.x-doses,.x-list{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:6px}
.x-wl li,.x-doses li,.x-list li{display:flex;gap:10px;align-items:center;justify-content:space-between;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;flex-wrap:wrap;color:var(--text)}
.x-wl li>div,.x-doses li>div,.x-list li>div:first-child{flex:1 1 160px;min-width:0;overflow-wrap:anywhere}
.x-list li .x-btns{margin-top:0}
.x-wl small,.x-doses small,.x-list small,.x-vr small{display:block;color:var(--muted);font-size:.76rem}
.x-doses li>b{flex:0 0 66px;color:var(--head);font-size:.85rem}
.x-doses li.x-late{border-color:#d64545;background:rgba(214,69,69,.08)}
.x-doses li.x-due{border-color:var(--o)}
.x-doses li.x-done{opacity:.7}
.x-pill{display:inline-block;font-size:.72rem;font-weight:600;padding:3px 9px;border-radius:99px;background:var(--bg2);color:var(--head);border:1px solid var(--line);white-space:nowrap}
.x-pill.x-ok{background:rgba(46,160,90,.15);border-color:rgba(46,160,90,.45)}
.x-pill.x-bad{background:rgba(214,69,69,.15);border-color:rgba(214,69,69,.45);color:var(--head)}
.x-pill.x-warn{background:rgba(230,160,30,.18);border-color:rgba(230,160,30,.5);color:var(--head)}
.x-vr{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:6px;color:var(--text)}
.x-vr>div:first-child{flex:1 1 200px;min-width:0;overflow-wrap:anywhere}
.x-vr .x-btns{margin-top:0}
.x-vr.x-vbad{border-color:#d64545}
.x-vr.x-vwarn{border-color:rgba(230,160,30,.75)}
.x-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}
.x-bar label{display:flex;gap:6px;align-items:center;font-size:.85rem;color:var(--text)}
.x-bar select{width:auto}
.x-ck{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:6px;color:var(--text)}
.x-ck.x-fhot{border-color:#d64545;background:rgba(214,69,69,.08)}
.x-ck.x-fwarn{border-color:rgba(230,160,30,.75)}
.x-ckh{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline}
.x-seg{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.x-seg button{font:inherit;font-size:.75rem;padding:5px 9px;border-radius:99px;border:1px solid var(--line);background:var(--bg2);color:var(--text);cursor:pointer}
.x-seg button.x-on{background:var(--o);border-color:var(--o);color:var(--deep);font-weight:600}
.x-flag{margin:6px 0 0;font-size:.82rem;font-weight:600;color:var(--head)}
.x-phone{max-width:300px;margin:10px auto;border:8px solid var(--deep);border-radius:28px;background:var(--card);padding:14px 12px;font-size:.84rem;color:var(--text);overflow-wrap:anywhere;box-sizing:border-box}
.x-phh{font-size:.7rem;color:var(--muted);text-align:center;margin-bottom:8px}
.x-bub{background:var(--bg2);border-radius:14px 14px 14px 4px;padding:10px;margin:8px 0}
.x-pic{display:block;width:100%;height:auto;border-radius:10px}
.x-up{border:2px dashed var(--o);border-radius:12px;padding:14px;text-align:center;font-weight:600;color:var(--head);margin:8px 0}
.x-phone dl{margin:6px 0 0}
.x-phone dt{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:8px}
.x-phone dd{margin:2px 0 0;color:var(--head)}
.x-inv table{width:100%;border-collapse:collapse;font-size:.82rem;color:var(--text)}
.x-inv td{padding:5px 0;border-bottom:1px solid var(--line);vertical-align:top}
.x-inv td:last-child{text-align:right;white-space:nowrap;padding-left:8px}
.x-invh{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:6px;color:var(--head)}
.x-nf{display:flex;gap:6px;margin-top:8px}
.x-nf input{flex:1}
.x-nf .btn{flex:0 0 auto}
@media (max-width:560px){.x-r2{grid-template-columns:minmax(0,1fr)}.x-lab{flex-basis:70px}.x-nf{flex-direction:column}.x-phone{max-width:100%}.x-doses li>b{flex-basis:100%}}