#aca-tm-app { --tm-line:#d8dade; --tm-bg:#f6f7f9; --tm-accent:#2b6cb0; --tm-warn:#c05621; --tm-ok:#2f855a;
	font: 14px/1.45 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	color:#1a202c; max-width:1200px; margin:0 auto; }
#aca-tm-app * { box-sizing:border-box; }

.tm-bar { display:flex; align-items:center; gap:14px; flex-wrap:wrap; padding:10px 0; border-bottom:1px solid var(--tm-line); margin-bottom:14px; }
.tm-bar label { font-weight:600; }
.tm-bar select { padding:6px 8px; font-size:14px; }
.tm-who { margin-left:auto; color:#4a5568; }

.tm-tabs { display:flex; gap:4px; flex-wrap:wrap; margin-bottom:16px; }
.tm-tabs button { border:1px solid var(--tm-line); background:#fff; padding:8px 14px; cursor:pointer; border-radius:6px 6px 0 0; font-size:14px; }
.tm-tabs button.on { background:var(--tm-accent); color:#fff; border-color:var(--tm-accent); }
.tm-tabs button.lock { opacity:.5; cursor:not-allowed; }

.tm-hint { background:var(--tm-bg); border:1px solid var(--tm-line); border-radius:6px; padding:10px 14px; margin-bottom:14px; color:#4a5568; }
.tm-actions { margin:14px 0; display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.tm-btn { background:var(--tm-accent); color:#fff; border:0; padding:9px 16px; border-radius:6px; cursor:pointer; font-size:14px; }
.tm-btn.sec { background:#fff; color:#2d3748; border:1px solid var(--tm-line); }
.tm-btn.warn { background:var(--tm-warn); }
.tm-done { color:var(--tm-ok); font-weight:600; }

/* board */
.tm-board { display:grid; grid-template-columns:repeat(auto-fill, minmax(180px,1fr)); gap:12px; align-items:start; }
.tm-col { background:var(--tm-bg); border:1px solid var(--tm-line); border-radius:8px; min-height:80px; }
.tm-col.pool { grid-column:1 / -1; background:#fff; }
.tm-col h4 { margin:0; padding:8px 10px; border-bottom:1px solid var(--tm-line); font-size:13px; display:flex; justify-content:space-between; }
.tm-col h4 .n { color:#718096; font-weight:400; }
.tm-list { list-style:none; margin:0; padding:8px; min-height:46px; display:flex; flex-direction:column; gap:6px; }
.tm-col.pool .tm-list { display:grid; grid-template-columns:repeat(auto-fill, minmax(220px,1fr)); }
.tm-task { background:#fff; border:1px solid var(--tm-line); border-radius:6px; padding:7px 9px; cursor:grab; box-shadow:0 1px 1px rgba(0,0,0,.04); }
#aca-tm-app .ic { display:block; font-size:11px; color:#a0aec0; margin-bottom:2px; }
.tm-task.locked { cursor:default; }
.ui-sortable-helper { box-shadow:0 4px 12px rgba(0,0,0,.18); }
.tm-ph { outline:2px dashed var(--tm-accent); outline-offset:-3px; height:34px; border-radius:6px; }

/* tables */
.tm-table { border-collapse:collapse; width:100%; margin-top:8px; }
.tm-table th, .tm-table td { border:1px solid var(--tm-line); padding:6px 9px; text-align:left; vertical-align:top; font-size:13px; }
.tm-table th { background:var(--tm-bg); position:sticky; top:0; }
.tm-table td.disagree { background:#fff5f5; }
.tm-table td.agree { background:#f0fff4; }
.tm-pill { display:inline-block; padding:1px 7px; border-radius:10px; background:#edf2f7; font-size:12px; }
.tm-maj { font-weight:600; }
.tm-empty { color:#a0aec0; }

.tm-catblock { margin:18px 0; }
.tm-catblock h3 { margin:0 0 8px; padding-bottom:4px; border-bottom:2px solid var(--tm-accent); }
.tm-cmpgrid { display:grid; grid-template-columns:repeat(auto-fit, minmax(180px,1fr)); gap:12px; }
.tm-cmpcol h5 { margin:0 0 6px; }
.tm-cmpcol ol { margin:0; padding-left:22px; }
.tm-cmpcol.consensus { background:#f0fff4; border:1px solid #c6f6d5; border-radius:8px; padding:8px 10px; }
.tm-warnbox { color:var(--tm-warn); }
