:host { display: block; }
.tc {
  margin: 0.4rem 0 0.2rem;
  padding: 0.75rem 0.9rem;
  border: 1px solid color-mix(in srgb, var(--fiko-accent, #6ea8fe) 35%, transparent);
  border-radius: 12px;
  background: color-mix(in srgb, var(--fiko-accent, #6ea8fe) 8%, transparent);
}
/* Geri alinamaz islem (silme) kirmizi: kullanici "bu tehlikeli" diye anlasin. */
.tc[data-danger='true'] {
  border-color: color-mix(in srgb, var(--fiko-danger, #e5534b) 45%, transparent);
  background: color-mix(in srgb, var(--fiko-danger, #e5534b) 9%, transparent);
}
.tc[data-state='answered'], .tc[data-state='cancelled'] { opacity: 0.75; }
.tc-title { margin: 0 0 0.3rem; font-size: 0.92rem; font-weight: 600; }
.tc-msg { margin: 0 0 0.55rem; font-size: 0.8rem; opacity: 0.85; }
.tc-fields { display: grid; gap: 0.35rem; margin-bottom: 0.55rem; }
.tc-row { display: grid; grid-template-columns: minmax(7rem, 11rem) 1fr; gap: 0.5rem; align-items: center; }
.tc-label { font-size: 0.78rem; opacity: 0.85; }
.tc-req { color: var(--fiko-danger, #e5534b); font-weight: 700; }
.tc-input {
  width: 100%; box-sizing: border-box;
  border: 1px solid var(--fiko-line, rgba(255, 255, 255, 0.15));
  background: color-mix(in srgb, var(--fiko-surface, #1b1f24) 60%, transparent);
  color: inherit; border-radius: 7px; padding: 0.3rem 0.45rem; font-size: 0.82rem;
}
.tc-area { resize: vertical; min-height: 3.6rem; font-family: inherit; }
.tc-check { justify-self: start; width: 1.05rem; height: 1.05rem; accent-color: var(--fiko-accent, #6ea8fe); cursor: pointer; }
.tc-row[data-missing='true'] .tc-check { outline: 2px solid var(--fiko-danger, #e5534b); outline-offset: 1px; }
/* Eksik zorunlu alan vurgulanir: neyi dolduracagi belli olsun. */
.tc-row[data-missing='true'] .tc-input {
  border-color: var(--fiko-danger, #e5534b);
  background: color-mix(in srgb, var(--fiko-danger, #e5534b) 10%, transparent);
}
.tc-fixed { font-size: 0.8rem; opacity: 0.75; word-break: break-word; }
/* Alan ipucu: kontrolun altinda, ikinci sutunda gri ve kucuk. */
.tc-hint { grid-column: 2; margin-top: -0.2rem; font-size: 0.72rem; opacity: 0.6; }
.tc-warn { margin: 0 0 0.5rem; font-size: 0.76rem; color: var(--fiko-warn, #d9a441); }
.tc-actions { display: flex; gap: 0.5rem; flex-wrap: wrap; align-items: center; }
.tc-btn {
  border: 1px solid color-mix(in srgb, var(--fiko-accent, #6ea8fe) 45%, transparent);
  background: transparent; color: inherit; border-radius: 8px;
  padding: 0.35rem 0.8rem; font-size: 0.84rem; cursor: pointer;
}
.tc-btn:hover:not(:disabled) { background: color-mix(in srgb, var(--fiko-accent, #6ea8fe) 16%, transparent); }
.tc-btn.primary { background: color-mix(in srgb, var(--fiko-accent, #6ea8fe) 22%, transparent); font-weight: 600; }
.tc[data-danger='true'] .tc-btn.primary {
  background: color-mix(in srgb, var(--fiko-danger, #e5534b) 26%, transparent);
  border-color: color-mix(in srgb, var(--fiko-danger, #e5534b) 55%, transparent);
}
.tc-btn:disabled { opacity: 0.45; cursor: default; }
.tc-wait { font-size: 0.8rem; opacity: 0.7; }
.tc-answer { margin: 0; font-size: 0.84rem; display: flex; gap: 0.35rem; align-items: baseline; }
.tc-mark { font-weight: 700; color: var(--fiko-accent, #6ea8fe); }