
    /* ===== Clauses ===== */
    .clause-item {
      border: 1.5px solid var(--border); border-radius: 10px;
      margin-bottom: 12px; overflow: hidden;
      transition: border-color .15s;
    }
    .clause-item:focus-within { border-color: var(--primary); }
    .clause-header {
      display: flex; align-items: center; gap: 10px;
      padding: 10px 14px; background: var(--bg);
      border-bottom: 1px solid var(--border);
    }
    .clause-num {
      width: 24px; height: 24px; border-radius: 50%;
      background: var(--primary); color: #fff;
      font-size: .75rem; font-weight: 700;
      display: flex; align-items: center; justify-content: center; flex-shrink: 0;
    }
    .clause-title-input {
      flex: 1; border: none; background: transparent;
      font-size: .92rem; font-weight: 700; color: var(--text); padding: 2px 4px;
    }
    .clause-title-input:focus { outline: none; }
    .clause-body { padding: 12px 14px; }
    .clause-body textarea { width: 100%; min-height: 100px; font-size: .88rem; }
    .clause-actions { display: flex; gap: 6px; margin-left: auto; }

    /* ===== Payment Table ===== */
    .payment-table { width: 100%; border-collapse: collapse; font-size: .88rem; }
    .payment-table th {
      background: var(--primary-light); color: var(--primary);
      font-weight: 700; padding: 9px 10px; text-align: left;
      border-bottom: 2px solid var(--primary);
    }
    .payment-table td { padding: 8px 6px; border-bottom: 1px solid var(--border); vertical-align: middle; }
    .payment-table tr:last-child td { border-bottom: none; }
    .payment-table input, .payment-table select {
      width: 100%; padding: 6px 8px; font-size: .85rem; border-radius: 6px;
    }
    .payment-total-row { background: var(--primary-light); font-weight: 700; }
    .payment-total-row td { padding: 10px; border-top: 2px solid var(--primary); }

    /* ===== Deliverables Table ===== */
    .deliverable-table { width: 100%; border-collapse: collapse; font-size: .88rem; }
    .deliverable-table th {
      background: var(--primary-light); color: var(--primary);
      font-weight: 700; padding: 9px 10px; text-align: left;
      border-bottom: 2px solid var(--primary);
    }
    .deliverable-table td { padding: 8px 6px; border-bottom: 1px solid var(--border); vertical-align: middle; }
    .deliverable-table tr:last-child td { border-bottom: none; }
    .deliverable-table input {
      width: 100%; padding: 6px 8px; font-size: .85rem; border-radius: 6px;
    }

    /* Print override handled by shared.css .doc-preview */
