/* The Accra Handyman V2.6 – design system for the staff screens. Dark green primary, subtle status colours,
   one primary button per view, danger red only for destructive actions. Loaded after admin.css / staff.css. */
:root{--x-g:#0b5d44;--x-g-d:#08432f;--x-g-l:#e8f3ee;--x-ink:#14232b;--x-mut:#5b6b73;--x-line:#d9e0e4;--x-bg:#f3f6f7;--x-red:#a8281f;--x-red-l:#fbeceb;--x-amb:#8a5a00;--x-amb-l:#fdf3df;--x-blu:#1c5a8a;--x-blu-l:#e8f1f8;--x-gry-l:#eceff1}
.tahx-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.tahx-head h1{margin:.2em 0}
.tahx-actions{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.tahx-inline{display:inline}
.tahx-muted{color:var(--x-mut);font-size:.92em}.tahx-empty{color:var(--x-mut);padding:14px 4px}
.tahs .tahx-new,.tahs .button-primary{background:var(--x-g);border-color:var(--x-g-d);color:#fff}
.tahs .button-primary:hover{background:var(--x-g-d)}
.tahx-plain{list-style:none;margin:0;padding:0}.tahx-plain li{padding:6px 0;border-bottom:1px solid var(--x-line)}
/* status chips */
.tahx-st,.tahx-chip,.tahx-badge{display:inline-block;border-radius:999px;font-size:12px;font-weight:600;padding:2px 10px;line-height:1.6;white-space:nowrap}
.tahx-st--paid{background:var(--x-g-l);color:var(--x-g-d)}.tahx-st--part{background:var(--x-amb-l);color:var(--x-amb)}.tahx-st--unpaid{background:var(--x-blu-l);color:var(--x-blu)}
.tahx-st--overdue{background:var(--x-red-l);color:var(--x-red)}.tahx-st--void,.tahx-st--none{background:var(--x-gry-l);color:var(--x-mut)}
.tahx-chip{background:var(--x-gry-l);color:var(--x-ink);text-decoration:none}.tahx-chip.is-on{background:var(--x-g);color:#fff}
.tahx-badge{background:var(--x-g);color:#fff;font-size:11px;padding:0 8px}
/* metric tiles */
.tahx-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:12px 0}
.tahx-metric{display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid var(--x-line);border-radius:12px;padding:12px 14px;text-decoration:none;color:var(--x-ink)}
a.tahx-metric:hover{border-color:var(--x-g)}.tahx-metric__n{font-size:24px;font-weight:800;line-height:1.1;overflow-wrap:anywhere}.tahx-metric__l{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--x-mut)}.tahx-metric__s{font-size:12px;color:var(--x-mut)}
.tahx-metric.is-alert,.tahx-metric--attention.is-alert{border-color:var(--x-red);background:var(--x-red-l)}.tahx-metric.is-total{border-color:var(--x-g);background:var(--x-g-l)}
.tahx-cols{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px}@media(max-width:900px){.tahx-cols{display:block}}
.tahx-panel{background:#fff;border:1px solid var(--x-line);border-radius:12px;padding:6px 16px 14px;margin:0 0 14px}.tahx-panel h2{margin:12px 0 8px}
.tahx-item{display:block;padding:10px 4px;border-bottom:1px solid var(--x-line);text-decoration:none;color:var(--x-ink)}.tahx-item:hover{background:var(--x-bg)}.tahx-why{color:var(--x-red);font-size:13px}
.tahx-feed{list-style:none;margin:0;padding:0}.tahx-feed li{padding:8px 0;border-bottom:1px solid var(--x-line);font-size:14px}
/* tabs */
.tahx-tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:2px solid var(--x-line);margin:10px 0 14px;-webkit-overflow-scrolling:touch}
.tahx-tabs a{flex:0 0 auto;padding:10px 14px;text-decoration:none;color:var(--x-mut);font-weight:600;font-size:14px;border-bottom:3px solid transparent;margin-bottom:-2px;white-space:nowrap}
.tahx-tabs a.is-on,.tahx-tabs a[aria-current=page],.tahx-tabs a[aria-selected=true]{color:var(--x-g);border-bottom-color:var(--x-g)}
.tahx-js .tahx-pane[data-off]{display:none}
.tahx-filters .tahx-chip{margin:0 4px 6px 0}
/* request summary */
.tahx-sum{background:#fff;border:1px solid var(--x-line);border-radius:12px;padding:12px 16px;margin:8px 0}
.tahx-sum__top{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tahx-sum__ref{margin:0;font-size:22px}
.tahx-sum__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px 16px;margin:10px 0 0}.tahx-sum__grid dt{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--x-mut)}.tahx-sum__grid dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.tahx-sum__note{margin:10px 0 0}
/* bulk bar */
.tahx-bulk__bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:var(--x-g-l);border:1px solid var(--x-g);border-radius:10px;padding:8px 12px;margin:8px 0}
.tahx-bulk__bar select,.tahx-bulk__bar input{width:auto;min-width:160px}.tahx-bulk__n{font-weight:700}
.tahx-reqtable .check-column{width:34px}.tahx-reqtable tr.is-archived{opacity:.65}
.tahx-more-filters{flex:1 1 100%;background:#fff;border:1px solid var(--x-line);border-radius:8px;padding:6px 12px}.tahx-more-filters summary{cursor:pointer;font-weight:600;color:var(--x-g)}.tahx-more-filters>*:not(summary){margin:6px 8px 6px 0}
/* forms */
.tahx-fgrid fieldset{background:#fff;border:1px solid var(--x-line);border-radius:12px;margin:0 0 14px;padding:8px 16px 12px}.tahx-fgrid legend{font-weight:700;padding:0 6px}.tahx-fgrid p{margin:10px 0}.tahx-fgrid label{display:block;font-weight:600;font-size:14px;margin-bottom:3px}.tahx-fgrid input,.tahx-fgrid select,.tahx-fgrid textarea{max-width:520px;width:100%}.tahx-fgrid input[type=checkbox]{width:auto}
.tahx-fgrid input[type=date],.tahx-fgrid input[type=time]{width:auto}
/* chat */
.tahx-thread{max-height:420px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:8px 2px;background:var(--x-bg);border-radius:10px;margin:8px 0}
.tahx-msg{max-width:84%;padding:8px 12px;border-radius:14px;background:#fff;border:1px solid var(--x-line);overflow-wrap:anywhere}.tahx-msg--team{align-self:flex-end;background:var(--x-g-l);border-color:#b9d9c9}.tahx-msg--cust{align-self:flex-start}
.tahx-msg__meta{font-size:12px;color:var(--x-mut);margin-bottom:2px}.tahx-msg__img img{max-width:220px;max-height:220px;border-radius:8px;margin-top:6px;display:block}
.tahx-compose textarea{width:100%}.tahx-compose__row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.tahx-file{font-weight:400}
.tahx-list{display:flex;flex-direction:column;background:#fff;border:1px solid var(--x-line);border-radius:12px;overflow:hidden}
.tahx-row{display:flex;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--x-line);text-decoration:none;color:var(--x-ink)}.tahx-row:hover{background:var(--x-bg)}.tahx-row.is-unread{background:#f4faf7;font-weight:600}
.tahx-av{flex:0 0 38px;height:38px;border-radius:50%;background:var(--x-g);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}.tahx-row__main{flex:1;min-width:0}.tahx-row__main .tahx-muted{font-weight:400}.tahx-row__side{text-align:right;flex:0 0 auto;font-weight:400}
/* calendar */
.tahx-calbar{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center;margin:10px 0}.tahx-calnav{display:flex;gap:8px;align-items:center}
.tahx-seg{display:inline-flex;border:1px solid var(--x-g);border-radius:8px;overflow:hidden}.tahx-seg a{padding:8px 14px;text-decoration:none;color:var(--x-g);font-weight:600}.tahx-seg a.is-on{background:var(--x-g);color:#fff}
.tahx-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--x-line);border:1px solid var(--x-line);border-radius:10px;overflow:hidden}
.tahx-dow{background:var(--x-gry-l);padding:6px;font-size:12px;font-weight:700;text-align:center}.tahx-cell{background:#fff;min-height:96px;padding:4px;overflow:hidden}.tahx-cell.is-off{background:#f8f9fa;color:#9aa6ad}.tahx-cell.is-today{box-shadow:inset 0 0 0 2px var(--x-g)}
.tahx-cell__d{font-weight:700;text-decoration:none;font-size:13px}
.tahx-ev{display:block;font-size:12px;line-height:1.3;padding:2px 5px;margin:2px 0;border-radius:5px;background:var(--x-g-l);color:var(--x-g-d);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tahx-ev.is-unassigned{background:var(--x-amb-l);color:var(--x-amb)}
.tahx-grid--week .tahx-ev{white-space:normal}.tahx-more{font-size:12px}
.tahx-agenda{display:none}.tahx-agenda.is-day{display:block}.tahx-agenda h3{margin:16px 0 6px}.tahx-agenda .tahx-ev{font-size:14px;padding:10px 12px;white-space:normal;margin:6px 0}
@media(max-width:720px){.tahx-grid{display:none}.tahx-agenda{display:block}.tahx-seg a{padding:10px 12px}}
@media(max-width:480px){.tahx-metrics{grid-template-columns:1fr 1fr}.tahx-metric__n{font-size:20px}.tahx-msg{max-width:94%}}
.tahs-badge{background:var(--x-g);color:#fff;border-radius:999px;font-size:11px;padding:0 6px;margin-left:4px;font-weight:700}
.tahs .r,.tah-wrap .r{text-align:right;white-space:nowrap}
.tahs-nav a{position:relative}
.screen-reader-text{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
:focus-visible{outline:3px solid #1c7ed6;outline-offset:2px}
/* customer-facing finance chips reuse .tahx-st */
