/* COR-X Task Hub · Partneri module (founder side of the B2B partner platform).
   Layout primitives (grid-view, g-panel, g-row, g-kpis, g-field, g-btn) come from
   grid.css, invoicing.css supplies iv-* pieces reused here. Only partner-specific
   bits below. */

.pt-toolbar { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin-bottom: 14px; }
.pt-toolbar .g-field { min-width: 220px; }
.pt-row { display: grid; grid-template-columns: 1.6fr 1fr 1fr auto; gap: 16px; align-items: center; padding: 12px 16px; }
.pt-row .g-row-sub { margin-top: 3px; }
.pt-cell { font-size: 13px; color: var(--text-secondary); }
.pt-cell b { display: block; color: var(--text); font-size: 14px; }
.pt-cell.warn b { color: #a35a00; }
.pt-badge { display: inline-block; font-size: 10.5px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; padding: 2px 7px; border-radius: 3px; border: 1px solid var(--border); color: var(--text-secondary); margin-left: 6px; vertical-align: middle; }
.pt-badge.ok { background: #c3ff32; border-color: #c3ff32; color: #0a0a0a; }
.pt-badge.warn { background: #e8b200; border-color: #e8b200; color: #0a0a0a; }
.pt-badge.mute { opacity: .7; }
.pt-detail { padding: 8px 16px 16px; border-top: 1px solid var(--border); background: var(--bg-inset); display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px 24px; font-size: 13px; }
.pt-detail h4 { margin: 8px 0 6px; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--text-muted); }
.pt-detail ul { margin: 0; padding: 0; list-style: none; }
.pt-detail li { padding: 3px 0; color: var(--text-secondary); }
.pt-detail li b { color: var(--text); }
.pt-detail .pt-edit { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 8px; align-items: end; }
.pt-detail .pt-edit input, .pt-detail .pt-edit select { width: 100%; }
.pt-app { display: grid; grid-template-columns: 1.5fr 1fr auto; gap: 16px; align-items: start; padding: 14px 16px; }
.pt-app .pt-msg { grid-column: 1 / -1; padding: 10px 12px; background: var(--bg-inset); border-left: 3px solid var(--border); font-size: 13px; color: var(--text-secondary); white-space: pre-wrap; }
.pt-app .pt-actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.pt-app select { padding: 6px 8px; }
.pt-bars { display: grid; gap: 6px; padding: 12px 16px 16px; }
.pt-bar { display: grid; grid-template-columns: 160px 1fr 70px; gap: 10px; align-items: center; font-size: 12.5px; }
.pt-bar i { display: block; height: 12px; background: var(--text); border-radius: 2px; min-width: 2px; }
.pt-bar .n { text-align: right; font-weight: 600; }
.pt-manual { margin: 8px 16px 12px; padding: 10px 12px; border-left: 3px solid #e8b200; background: var(--bg-inset); font-size: 13px; }
.pt-manual ol { margin: 6px 0 0; padding-left: 18px; }
@media (max-width: 860px) { .pt-row, .pt-app { grid-template-columns: 1fr; gap: 8px; } .pt-app .pt-actions { justify-content: flex-start; } }
