/* Content (B13) — page layout only. Components, tokens, icons and themes come from lifeos.css («مِحْوَر»). */

.ct-page [hidden] { display: none !important; }
.ct-summary { padding: 4px 2px; }
.ct-filters .field { flex: 1 1 180px; max-width: 280px; }
.ct-check { display: inline-flex; align-items: center; gap: 8px; font-size: 13.5px; color: var(--ink-2); min-height: 40px; cursor: pointer; }
.ct-check input { width: 18px; height: 18px; accent-color: var(--accent); margin: 0; }
.ct-item { align-items: flex-start; }
.ct-item .t { overflow-wrap: anywhere; }
.ct-kind { flex: none; width: 32px; height: 32px; border-radius: 8px; display: grid; place-items: center; background: var(--surface-2); color: var(--ink-3); }
.ct-link { color: var(--ink); font-weight: 500; }
.ct-link:hover { color: var(--accent-soft-ink); text-decoration: underline; text-underline-offset: 3px; }
.ct-error { color: var(--danger-ink); font-size: 13px; }
.ct-issues { margin-top: 4px; padding-inline-start: 18px; list-style: disc; }

/* stage pipe (lifeos .pipe) */
.ct-pipe { overflow-x: auto; align-items: start; }
.ct-pipe .st { background: var(--surface-2); border-radius: 12px; padding: 10px 8px; min-height: 120px; }
.ct-card { text-align: start; color: inherit; }
.ct-card-title { font-size: 14.5px; overflow-wrap: anywhere; }
.ct-dash { padding: 10px 4px; }

/* one piece */
.ct-head { align-items: flex-start; }
.ct-title { font-size: 30px; margin-top: 4px; overflow-wrap: anywhere; }
.ct-back { margin-bottom: 6px; }
.ct-split { grid-template-columns: minmax(0, 1fr) 400px; }
.ct-stepper { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; padding: 0; margin: 0; counter-reset: ct-step; }
.ct-stepper li { counter-increment: ct-step; display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 12px; border-radius: 999px;
  border: 1px solid var(--line-2); color: var(--ink-3); font-size: 13px; font-weight: 500; }
.ct-stepper li::before { content: counter(ct-step); font-variant-numeric: tabular-nums; font-size: 12px; }
.ct-stepper li.done { color: var(--ink-2); background: var(--surface-2); border-color: transparent; }
.ct-stepper li.on { color: var(--accent-soft-ink); background: var(--accent-soft); border-color: transparent; font-weight: 600; }
.ct-stepper li.pub::before { content: "✓"; }
.ct-stepper li.pub:not(.done) { border-style: dashed; }
.ct-stepper li.pub:not(.done)::before { content: ""; }
.ct-stepper li.pub.done { color: var(--ok-ink); background: var(--ok-soft); }
.ct-text { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 15px; line-height: 1.8; }
.ct-draft { font-size: 16px; line-height: 1.8; }
.ct-state:empty { display: none; }
.ct-state .state { white-space: normal; }
.ct-originals, .ct-choice { border: 0; padding: 0; margin: 0; min-width: 0; }
.ct-originals { border-top: 1px solid var(--line); padding-top: 12px; }
.ct-originals legend, .ct-choice legend { padding: 0; margin-bottom: 8px; }
.ct-pub { display: flex; flex-direction: column; gap: 8px; padding: 12px 4px; border-bottom: 1px solid var(--line); }
.ct-pub:last-child { border-bottom: 0; }
.ct-metrics { margin-top: 4px; }
.ct-form-host:empty { display: none; }
.ct-armed { font-weight: 600; }
.ct-rules { list-style: disc; padding-inline-start: 18px; }
.ct-day .panel-h .h3 { font-variant-numeric: tabular-nums; }

.w4b-fold > summary { cursor: pointer; font-size: 13px; color: var(--ink-2); padding: 6px 0; }
.w4b-fold[open] > summary { margin-bottom: 6px; }
details.panel.w4b-fold > summary { font-weight: 600; font-size: 15px; color: var(--ink); padding: 0; }

@media (max-width: 1023px) {
  .ct-split { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .ct-page .btn, .ct-page .tabs button, .ct-check, .ct-page .radio { min-height: 44px; }
  .ct-page .input, .ct-page .select, .ct-page .textarea { font-size: 16px; }
  .ct-title { font-size: 26px; }
  .ct-filters .field { max-width: none; }
  .ct-item { flex-wrap: wrap; }
  .w4b-fold > summary { min-height: 44px; display: flex; align-items: center; }
}
