.x-days{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.x-day{background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:10px;min-width:0;margin-bottom:10px}
.x-day.x-now{border-color:var(--o)}
.x-day h4{margin:0 0 8px;font-size:.9rem;color:var(--head)}
.x-ls{display:block;width:100%;text-align:left;font:inherit;font-size:.82rem;color:var(--text);background:var(--card);border:1px solid var(--line);border-left:4px solid var(--o);border-radius:8px;padding:6px 8px;margin:0 0 6px;cursor:pointer;overflow-wrap:anywhere}
.x-ls small{display:block;color:var(--muted);font-size:.72rem}
.x-ls.x-on{outline:2px solid var(--o);outline-offset:1px}
.x-ls.x-taught{border-left-color:#3a9d5d}
.x-ls.x-late{border-left-color:#d64545}
.x-ls.x-credit{opacity:.55;text-decoration:line-through;border-left-color:var(--line)}
.x-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px;margin:0 0 12px;overflow-wrap:anywhere;min-width:0}
.x-card.x-low{border-color:var(--o)}
.x-card p{margin:.3em 0}
.x-card .dk-cap{margin:6px 0}
.x-row{display:flex;justify-content:space-between;align-items:center;gap:6px;flex-wrap:wrap}
.x-tag{font-size:.72rem;padding:2px 8px;border-radius:99px;background:var(--bg2);border:1px solid var(--line);color:var(--muted);white-space:nowrap}
.x-tag.x-paid{color:#2f8a4f;border-color:#2f8a4f}
.x-tag.x-rem{color:var(--o);border-color:var(--o)}
.x-acts{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.x-acts .btn{font-size:.8rem}
.x-mv{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:6px}
.x-mv select{flex:1 1 140px}
.x-form{display:grid;gap:8px}
.x-form label{display:grid;gap:3px}
.x-form input,.x-form select,.x-mv select,.x-sel{font:inherit;font-size:.85rem;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--bg2);color:var(--text);width:100%;min-width:0;box-sizing:border-box}
.x-sel{margin-bottom:10px}
.x-r2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.x-r3{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.x-chips{display:flex;flex-wrap:wrap;gap:6px}
.x-chips label{display:flex;gap:4px;align-items:center;font-size:.78rem;background:var(--bg2);border:1px solid var(--line);border-radius:99px;padding:3px 9px;cursor:pointer;color:var(--text)}
.x-chips input{width:auto;margin:0}
.x-phone{max-width:330px;margin:0 auto 12px;background:var(--bg2);border:2px solid var(--line);border-radius:24px;padding:14px 12px;overflow-wrap:anywhere}
.x-phone>small{display:block;color:var(--muted);font-size:.72rem;margin-bottom:6px}
.x-ph-h{font-weight:600;color:var(--head);margin-bottom:8px}
.x-ph-h small{display:block;font-weight:400;color:var(--muted);font-size:.72rem}
.x-bub{background:var(--card);color:var(--text);border-radius:14px;padding:8px 11px;margin:0 0 8px;font-size:.8rem}
.x-bub b{color:var(--head)}
.x-link{color:var(--o);font-weight:600;overflow-wrap:anywhere}
.x-goal{display:grid;grid-template-columns:minmax(0,1fr) 60px 34px;gap:6px;align-items:center;margin-top:4px}
.x-goal small{color:var(--muted);text-align:right}
.x-tw{overflow-x:auto;margin:8px 0}
.x-tbl{width:100%;border-collapse:collapse;font-size:.8rem}
.x-tbl td{padding:6px 4px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--text)}
.x-tbl small{display:block;color:var(--muted)}
.x-hot{color:var(--o);font-weight:600}
.x-rep{border:1px dashed var(--o);border-radius:12px;padding:8px 10px;background:var(--card);font-size:.8rem;color:var(--text)}
.x-rep p{margin:.25em 0}
@media (max-width:560px){.x-r3{grid-template-columns:repeat(2,minmax(0,1fr))}.x-r2{grid-template-columns:minmax(0,1fr)}.x-acts .btn{flex:1 1 auto}.x-phone{max-width:none}}