/* Initial service: keep the existing member, board and approval interfaces. */
[hidden] { display: none !important; }
.auth-modal { max-height:calc(100dvh - 40px); display:flex; flex-direction:column; overflow:hidden; }
.auth-modal-header { flex-shrink:0; }
.auth-modal-body { min-height:0; overflow-y:auto; }
.write-panel:not(.open) { visibility:hidden; }
body { background:#fafbf9; color:#20303d; }
.main-area { min-width:0; }
.sidebar { background:#f1f4f0; border-color:#dce4df; }
.sidebar-motto { display:block; margin-top:4px; font-size:11px; font-weight:400; line-height:1.6; letter-spacing:-.02em; color:#68766f; }
.hero-card { background:#f5f7f1; border:1px solid #dde5db; box-shadow:none; padding:40px; }
.hero-title { font-size:clamp(32px,4.3vw,58px); line-height:1.22; letter-spacing:-.055em; }
.hero-title-brand { color:#164936; }
.hero-subtitle { margin:20px 0 28px; line-height:1.8; color:#506158; }
.hero-subtitle strong { font-weight:500; }
.intent-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:28px 0 22px; text-align:left; }
.intent-card { cursor:pointer; font:inherit; text-align:left; display:flex; flex-direction:column; align-items:flex-start; gap:9px; padding:24px; border:1px solid #c5d7c8; border-radius:14px; background:white; color:#264334; transition:transform .15s, border-color .15s; }
.intent-card:hover { transform:translateY(-3px); border-color:#356f54; }
.intent-card:focus-visible { outline:3px solid #5b9773; outline-offset:3px; }
.intent-card strong { font-size:22px; letter-spacing:-.04em; word-break:keep-all; }
.intent-card > span:not(.intent-kicker) { font-size:14px; color:#67756c; }
.intent-kicker { font-size:11px; font-weight:700; letter-spacing:.1em; }
.intent-card b { margin-top:auto; padding-top:12px; font-size:14px; }
.service-steps { display:flex; flex-wrap:wrap; gap:12px 22px; font-size:13px; color:#41574a; }
.service-steps b { display:inline-block; margin-right:6px; font-size:11px; color:#829387; }
.launch-note { font-size:12px; color:#67776e; margin:10px 0 24px; }
.hero-search-wrap { max-width:none; margin-top:24px; }
.hero-disclaimer { margin-top:16px; }
.connection-notice { display:flex; gap:16px; align-items:center; justify-content:space-between; padding:14px 18px; margin:10px 0 20px; background:#fff4df; color:#755321; border-radius:8px; font-size:13px; }
.connection-notice button { flex-shrink:0; cursor:pointer; padding:6px 12px; background:white; border:1px solid #c0a67b; border-radius:6px; color:inherit; }
.certificate-panel { border:1px solid #c6d8ca; border-radius:10px; padding:20px; margin:20px 0; }
.certificate-panel h2 { font-size:18px; }
.premium-section { padding:20px 0; border-top:1px solid #e2e7e2; }
.premium-section h4 { margin:0 0 12px; font-size:16px; }
.price-chip, .verified-chip { display:inline-block; font-size:12px; padding:3px 9px; background:#e9f1e7; border-radius:6px; color:#28563a; }
.price-chip { margin-left:6px; }
.premium-answer { border:1px solid #cbdcce; padding:18px; border-radius:10px; margin-bottom:12px; }
.answer-lock { text-align:center; padding:24px 8px; background:#f5f7f2; margin-top:15px; border-radius:8px; }
.answer-lock p { margin:8px; }
.answer-lock button { border:0; background:#e0e5df; padding:10px 24px; border-radius:7px; color:#5d6b5f; }
.answer-lock small { display:block; margin-top:8px; }
.answer-body { white-space:pre-wrap; overflow-wrap:anywhere; }
.reply-guide { color:#526958; font-size:13px; }
.write-btn { white-space:nowrap; }
.board-filter .field-label { white-space:nowrap; }
.comment-body { white-space:pre-wrap; overflow-wrap:anywhere; }
.latest-card { box-shadow:none; }
@media(min-width:701px) and (max-width:1200px) {
  .intent-grid { grid-template-columns:1fr; }
}
@media(max-width:700px) {
  .menu-list { display:flex; gap:6px; }
  .menu-list li { flex:1; min-width:0; }
  .menu-btn { padding:10px 5px; text-align:center; font-size:12px; white-space:nowrap; }
  .board-header { align-items:flex-start; }
  .board-header > div { min-width:0; }
  #toggleWrite { flex-shrink:0; font-size:13px; padding:10px 12px; }
  .board-table colgroup { display:none; }
  .board-table th:not(:nth-child(2)), .board-table td:not(:nth-child(2)):not([colspan]) { display:none; }
  .board-table th:nth-child(2), .board-table td:nth-child(2) { width:100%; text-align:left; }
  .board-table td[colspan] { display:table-cell; text-align:left; }
  .board-table { table-layout:auto; }
  .hero-card { padding:24px 18px; }
  .intent-grid { grid-template-columns:1fr; gap:12px; }
  .intent-card { padding:20px; }
  .intent-card strong { font-size:22px; }
  .service-steps { flex-direction:column; gap:8px; }
  .connection-notice { align-items:flex-start; }
  .certificate-panel input { max-width:100%; margin-bottom:12px; }
}
