
.ftc-page { max-width: 1260px; margin: 0 auto; padding: 24px 16px; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
.ftc-h1 { margin: 0 0 10px; font-size: 28px; }
.ftc-h2 { margin: 18px 0 10px; font-size: 20px; }
.ftc-h3 { margin: 0; font-size: 16px; }
.ftc-sub { opacity: .8; margin-top: 4px; }
.ftc-summary { margin-top: 10px; white-space: pre-wrap; }
.ftc-empty { padding: 12px; border: 1px dashed rgba(0,0,0,.18); border-radius: 12px; opacity:.8; }

.ftc-theme-layout { display: grid; grid-template-columns: 1fr; gap: 16px; }
@media (min-width: 1000px){ .ftc-theme-layout { grid-template-columns: 1.4fr .9fr; } }
.ftc-domain-card { border:1px solid rgba(0,0,0,.08); border-radius: 12px; padding: 12px; background:#fff; cursor:pointer; margin-bottom: 12px; }
.ftc-domain-card.is-active { outline: 2px solid rgba(0,0,0,.15); }
.ftc-domain-head { display:flex; justify-content:space-between; align-items:center; gap:10px; }

.ftc-expert-row { display:grid; grid-template-columns: 52px 1fr auto; gap: 12px; align-items:center; border:1px solid rgba(0,0,0,.08); border-radius: 12px; padding: 10px; background:#fff; margin-bottom: 10px; }
.ftc-expert-grid { display:flex; flex-wrap:wrap; gap:12px; }
.ftc-expert-card { width: 180px; text-align:center; text-decoration:none; color:inherit; border:1px solid rgba(0,0,0,.08); border-radius: 12px; padding: 12px; background:#fff; }

.ftc-avatar { width: 52px; height: 52px; border-radius: 999px; object-fit: cover; border:1px solid rgba(0,0,0,.08); }
.ftc-avatar.placeholder { border-radius: 999px; background: rgba(0,0,0,.05); border:1px dashed rgba(0,0,0,.12); }

.ftc-company-head { display:flex; align-items:center; gap:12px; }
.ftc-logo { width: 84px; height: 84px; object-fit: contain; border:1px solid rgba(0,0,0,.08); border-radius: 12px; background:#fff; padding: 8px; }
.ftc-company-title { font-size: 26px; font-weight: 800; }

.ftc-expert-head { display:flex; align-items:center; gap: 14px; }
.ftc-meta { display:flex; flex-direction:column; gap:4px; }

.ftc-link { color: inherit; text-decoration: underline; opacity:.85; }
.ftc-link:hover { opacity:1; }

.ftc-links { display:flex; gap: 12px; flex-wrap: wrap; margin-top: 10px; }
.ftc-context { margin-top: 8px; opacity:.8; }

.ftc-cal { width: 100%; min-height: 700px; border: 0; border-radius: 12px; background:#fff; }