.ct-panel,.ct-summary { padding:20px; border:1px solid var(--line); border-radius:10px; background:var(--panel,#f5f7f3); margin:16px 0; min-width:0; overflow-wrap:anywhere; }
.ct-heading,.ct-actions,.ct-filter-row { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; }
.ct-heading h2,.ct-heading h3 { margin:0; }
.ct-actions { justify-content:flex-start; margin:16px 0; }
.ct-muted,.ct-coverage,.ct-counter small { font-size:12px; line-height:1.7; color:var(--muted); }
.ct-counters,.ct-two-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:20px 0; }
.ct-counter { padding:16px; border:1px solid var(--line); border-radius:8px; min-width:0; }
.ct-counter h3 { margin:0 0 10px; font-size:16px; }
.ct-counter > strong { font-size:28px; }
.ct-counter p { font-size:13px; line-height:1.6; }
.ct-counter dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.ct-counter dt { font-size:12px; color:var(--muted); }.ct-counter dd { margin:6px 0; }.ct-counter small { display:block; }
.ct-warning,.ct-error,.ct-progress { padding:12px; border-radius:6px; line-height:1.6; }.ct-warning,.ct-progress { background:#f7edd4; color:#674507; }.ct-warning small { display:block; margin-top:8px; }.ct-error { background:#f8dce1; color:#8e223a; }
.ct-filter-row { justify-content:flex-start; margin:16px 0; }.ct-filter-row label { display:grid; gap:6px; font-size:13px; }.ct-filter-row input,.ct-filter-row select,.ct-pin input { padding:8px; border:1px solid var(--line); border-radius:6px; background:var(--panel,#fff); color:var(--text); max-width:100%; }
.ct-map { height:430px; width:100%; border:1px solid var(--line); border-radius:8px; z-index:0; }.ct-map-picking { cursor:crosshair; }
.ct-timeline { display:grid; gap:8px; margin:16px 0; font-size:13px; }.ct-timeline input { width:100%; }
.ct-stop { display:grid; width:100%; gap:6px; text-align:left; background:transparent; color:var(--text); border:1px solid var(--line); border-radius:6px; padding:12px; margin-bottom:8px; cursor:pointer; }.ct-stop span { font-size:12px; color:var(--muted); }
.ct-check { border:1px solid var(--line); border-radius:8px; padding:16px; margin:12px 0; }.ct-check p,.ct-match { font-size:13px; line-height:1.65; }.ct-badge { background:#f7edd4; border-radius:4px; padding:5px 8px; font-size:12px; }.ct-badge-ok { background:#dcefe2; color:#235c37; }
.ct-pin { border-top:1px solid var(--line); padding-top:12px; margin-top:12px; }.ct-pin > button { margin:4px 0; }
.ct-table-wrap { overflow:auto; }.ct-table-wrap table { width:100%; border-collapse:collapse; }.ct-table-wrap th,.ct-table-wrap td { text-align:left; padding:10px; border-bottom:1px solid var(--line); white-space:nowrap; font-size:12px; }.ct-days { margin:20px 0; }.ct-days summary { cursor:pointer; }
@media(max-width:760px) { .ct-counters,.ct-two-columns { grid-template-columns:1fr; }.ct-panel,.ct-summary { padding:12px; }.ct-map { height:330px; }.ct-counter dl { grid-template-columns:1fr; }.ct-filter-row label { flex:1 1 120px; } }
