.x-who{margin-bottom:10px}
.x-who select{max-width:100%}
.x-phone{max-width:340px;margin:0 auto 10px;border:2px solid var(--line);border-radius:26px;padding:14px;background:var(--card);box-sizing:border-box}
.x-ph-top{font-size:.72rem;color:var(--muted);text-align:center;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:10px;overflow-wrap:anywhere}
.x-hi{font-weight:600;color:var(--head);margin:0 0 4px}
.x-note{background:var(--bg2);border-left:3px solid var(--o);padding:6px 8px;border-radius:6px;margin:0 0 10px}
.x-warn{color:var(--o);font-weight:500;margin:4px 0 8px}
.x-opts{display:grid;gap:6px;margin-bottom:10px}
.x-opt{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:8px;cursor:pointer}
.x-opt.on{border-color:var(--o);box-shadow:0 0 0 1px var(--o) inset}
.x-opt span{flex:1;min-width:0}
.x-opt b{display:block;font-size:.86rem;color:var(--head)}
.x-opt small{color:var(--muted);font-size:.73rem}
.x-opt em{font-style:normal;font-weight:600;color:var(--o);white-space:nowrap}
.x-r2,.x-g2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-bottom:8px}
.x-g2 .x-wide{grid-column:1/-1}
.x-r2 label,.x-form label{display:grid;gap:3px;font-size:.76rem;color:var(--muted)}
.x-phone select,.x-form input,.x-form select,.x-who select,.x-card select{width:100%;padding:7px 8px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text);font:inherit;font-size:.84rem;box-sizing:border-box}
.x-adds{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.8rem;margin-bottom:8px}
.x-tot{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);padding-top:8px}
.x-tot span{font-size:.78rem;color:var(--muted)}
.x-tot b{font-size:1.2rem;color:var(--head)}
.x-agree{display:flex;gap:8px;align-items:flex-start;font-size:.76rem;color:var(--text);margin:8px 0}
.x-full{width:100%}
.x-pb{text-align:center;display:grid;gap:8px}
.x-btns{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.x-due,.x-dms{list-style:none;padding:0;margin:0 0 10px;display:grid;gap:6px}
.x-due li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;background:var(--bg2);border-radius:10px;padding:8px 10px;font-size:.82rem}
.x-due li span{color:var(--muted);font-size:.75rem}
.x-due li em{grid-column:1/-1;font-style:normal;color:var(--o);font-size:.75rem}
.x-sms{background:var(--bg2);border-radius:14px 14px 14px 4px;padding:9px 11px;font-size:.8rem;color:var(--text);margin:0 0 8px;overflow-wrap:anywhere;line-height:1.45}
.x-sms small{display:block;color:var(--muted);font-size:.68rem;margin-bottom:3px}
.x-dms li{display:flex;gap:8px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:8px}
.x-dms li>div{flex:1;min-width:0}
.x-dms p{margin:2px 0;font-size:.8rem;overflow-wrap:anywhere}
.x-dms small{color:var(--muted);font-size:.7rem}
.x-dms .x-done{opacity:.6}
.x-ch{font-size:.65rem;font-weight:600;color:var(--o);border:1px solid var(--o);border-radius:20px;padding:1px 7px;white-space:nowrap}
.x-cls,.x-alist{display:grid;gap:6px;margin-bottom:12px;max-height:340px;overflow-y:auto}
.x-alist{max-height:200px}
.x-cli{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;text-align:left;border:1px solid var(--line);border-radius:10px;padding:7px 10px;background:var(--card);color:var(--text);font:inherit;cursor:pointer}
.x-cli.on{border-color:var(--o);box-shadow:0 0 0 1px var(--o) inset}
.x-cli b{color:var(--head);font-size:.86rem}
.x-cli small{color:var(--muted);font-size:.74rem;flex:1;min-width:0}
.x-bad{font-style:normal;font-size:.66rem;font-weight:600;color:var(--o);background:var(--bg2);border-radius:20px;padding:1px 7px}
.x-form{display:grid;gap:7px;background:var(--bg2);border-radius:12px;padding:12px;margin-bottom:10px}
.x-form b{color:var(--head)}
.x-glue{border:1px dashed var(--line);border-radius:12px;padding:10px}
.x-glue p{margin:0 0 6px;overflow-wrap:anywhere}
.x-rec{min-width:0}
.x-rh{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;align-items:baseline}
.x-rh b{font-size:1.15rem;color:var(--head)}
.x-rh span{color:var(--muted);font-size:.8rem}
.x-ok{background:var(--bg2);border-left:3px solid var(--o);border-radius:8px;padding:8px 10px;font-size:.8rem;overflow-wrap:anywhere;margin-bottom:8px}
.x-map{display:flex;align-items:flex-end;gap:8px;height:80px;padding:6px 10px;background:var(--bg2);border-radius:12px;margin-bottom:10px}
.x-map span{flex:1;max-width:44px;background:var(--o);border-radius:6px 6px 2px 2px;position:relative;opacity:.85}
.x-map i{position:absolute;top:-16px;left:0;right:0;text-align:center;font-style:normal;font-size:.68rem;color:var(--muted)}
.x-map p{margin:auto}
.x-phs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}
.x-phs span{width:62px;height:62px;border-radius:10px;background:linear-gradient(135deg,var(--bg2),var(--line));display:flex;align-items:flex-end;justify-content:center;font-size:.64rem;color:var(--muted);padding-bottom:4px;box-sizing:border-box}
.x-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:10px}
.x-card{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--card);min-width:0}
.x-card p{margin:4px 0;overflow-wrap:anywhere}
.x-ch2{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;color:var(--head)}
.x-st{font-size:.68rem;font-weight:600;border-radius:20px;padding:2px 8px;background:var(--bg2);color:var(--muted)}
.x-paid .x-st{color:var(--o)}
.x-noshow,.x-late{opacity:.85;border-style:dashed}
.x-tw{overflow-x:auto;margin-bottom:8px}
.x-tbl{width:100%;border-collapse:collapse;font-size:.8rem}
.x-tbl th{text-align:left;color:var(--muted);font-weight:500;font-size:.72rem;border-bottom:1px solid var(--line);padding:6px 4px}
.x-tbl td{border-bottom:1px solid var(--line);padding:7px 4px;vertical-align:top}
.x-tbl td small{display:block;color:var(--muted);font-size:.68rem}
@media (max-width:560px){.x-phone{border-radius:18px;padding:10px}.x-g2{grid-template-columns:minmax(0,1fr)}.x-dms li{flex-wrap:wrap}.x-tbl{font-size:.74rem}}