/* 질문 풀이 화면의 결 — 예전에는 본문 안 <style> 로 실렸다.
 * 인라인이면 문서 뒤에 서서 디자인 계층(v9.css)을 같은 특이도에서 이겨
 * 버린다. 그래서 파일로 빼고, 순서를 renovation.css → 이 파일 → v9.css 로
 * 두었다. 규칙은 그대로 옮겼다. */
/* ---------------------------------------------------------------------------
   질문 풀이 화면의 결 — 따뜻한 종이 위에 먹색 글, 솔색 한 줄, 주홍은 아주 조금.
   사이트 공통 스킨(renovation.css) 위에 **이 화면들에만** 얹는다. `.tp-skin` 이
   붙은 곳에서만 색·폭·크기가 바뀌므로 다른 화면은 그대로다.
--------------------------------------------------------------------------- */
/* 색은 **사이트가 이미 쓰는 값**을 그대로 부른다(renovation.css `:root`).
   새 팔레트를 만들지 않는다 — 바탕은 흰색, 글은 먹색, 강조는 주홍, 솔색은 링크·
   버튼 같은 작은 자리에만. 로고는 어떤 규칙으로도 건드리지 않는다. */
.tp-skin{
  --tp-paper:var(--white,#fff); --tp-paper-2:var(--surface,#f7f6f4); --tp-surface:#fff;
  --tp-ink:var(--text,#211e1b); --tp-ink-2:var(--text-muted,#746c65); --tp-ink-3:var(--text-muted,#746c65);
  /* 예전 솔색 자리는 모두 주 색(주홍)으로 옮겼다. 브랜드 색은 하나뿐이다. */
  --tp-pine:var(--action,#d13a14); --tp-pine-wash:var(--action-soft,#fff0ea);
  --tp-vermilion:var(--action,#d13a14); --tp-vermilion-dark:var(--action-pressed,#b32f13);
  --tp-vermilion-wash:var(--action-soft,#fff0ea);
  --tp-line:var(--border,#e5e0dc); --tp-line-soft:var(--border,#e5e0dc);
  --tp-radius:var(--r-md,12px);
}
/* 이 서비스는 PC 에서도 **같은 모바일 한 열**로 본다. 원본 셸(`.rn-mobile`,
   min(100%,430px))을 그대로 쓰고 폭을 건드리지 않는다. 바탕은 흰 종이. */
.tp-skin{color:var(--tp-ink)}
.tp-skin *{box-sizing:border-box}
.tp-skin input, .tp-skin select, .tp-skin textarea{min-width:0;max-width:100%}
/* 전역 `a` 에 색을 주면 머리의 브랜드 워드마크까지 물든다(원래는 `color:inherit`).
   본문 안의 링크에만 색을 준다. */
.tp-skin :is(.tp-note,.tp-more,.tp-open,.tp-fold__body,.tp-evidence__body,.tp-aside-card) a{color:var(--tp-pine)}
/* 바깥 여백은 디자인 계층(st-system.css)의 셸이 한 번만 만든다. 여기서 또
   주면 글이 40px 안쪽에서 시작한다 — 그 이중 여백을 걷어 냈다. */
.tp-shell{width:100%;max-width:430px;margin:0 auto;padding:0 16px}
.tp-wrap{width:100%;max-width:430px;margin:0 auto;padding:20px 16px 40px}
/* 360px 에서도 좌우가 숨 쉬도록 여백만 조금 줄인다. */

.tp-back{display:inline-block;margin:16px 0 0;color:var(--tp-ink-3);font-size:14px;text-decoration:none}
.tp-back:hover{color:var(--tp-pine)}
.tp-eyebrow{margin:0 0 8px;font-size:13px;letter-spacing:.04em;color:var(--tp-pine);font-weight:600}
.tp-note{margin:10px 0 0;font-size:14px;line-height:1.65;color:var(--tp-ink-3)}
.tp-note a{font-weight:600}

/* ── 홈 머리: 종이 한 장 위에 제목·삽화·입력 ─────────────────────────────── */
.tp-top{padding:20px 0 26px}

.tp-top__inner{display:block}
.tp-top__main .tp-ask{margin-top:18px}
.tp-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.tp-head h1{margin:0;font-size:32px;line-height:1.32;word-break:keep-all}
.tp-head__lede{margin:12px 0 0;font-size:16px;line-height:1.7;color:var(--tp-ink-2);word-break:keep-all}
/* 장면의 치수는 공통 스타일시트(renovation.css `.tp-art-pic--*`)에 있다.
   여기서는 질문 풀이 화면에서만 필요한 자리만 손본다. */
/* 걸음 제목 옆 장면 한 컷. 제목이 먼저 자리를 잡고(min-width:0) 그림은 밀리지 않는다. */
.tp-order-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.tp-order-head__text{flex:1;min-width:0}
.tp-order-head h1{min-width:0}
.tp-head__pic{flex:none;width:clamp(112px,33vw,150px)}
.tp-head__art{display:block;width:100%;height:auto;border-radius:8px}
.tp-aside-pic{display:block}


/* ── 질문 상자 ───────────────────────────────────────────────────────────── */
.tp-ask{display:grid;gap:12px}
.tp-ask__field{width:100%;min-height:112px;padding:14px;border:1px solid var(--tp-line);border-radius:12px;
  background:var(--tp-surface);color:var(--tp-ink);font:inherit;font-size:16px;line-height:1.7;resize:vertical}
.tp-ask__field::placeholder{color:#9AA09B}
.tp-ask__field:focus{outline:2px solid var(--tp-pine);outline-offset:1px;border-color:var(--tp-pine)}
.tp-ask__count{margin:-6px 2px 0;text-align:right;font-size:13px;color:var(--tp-ink-3)}
.tp-ask__lead{margin:0;font-size:14px;font-weight:600;color:var(--tp-ink-2)}
.tp-chips{display:flex;flex-wrap:wrap;gap:8px}
.tp-chip--ask{padding:9px 13px;border:1px solid var(--tp-line);border-radius:999px;background:var(--tp-surface);
  font:inherit;font-size:14px;line-height:1.35;color:var(--tp-ink-2);cursor:pointer;text-align:left;
  max-width:100%;white-space:normal;word-break:keep-all}
.tp-chip--ask:hover{border-color:var(--tp-pine);color:var(--tp-pine)}
.tp-more-ex{margin:0}
.tp-more-ex summary{cursor:pointer;font-size:14px;color:var(--tp-pine);padding:4px 0}
.tp-more-ex .tp-chips{margin-top:10px}
.tp-ask__price{margin:2px 0 0;font-size:16px;font-weight:700;color:var(--tp-ink)}
.tp-ask__price small{display:block;margin-top:4px;font-size:13.5px;font-weight:400;color:var(--tp-ink-3)}
.tp-btn{display:block;width:100%;min-height:52px;padding:15px 18px;border:0;border-radius:10px;
  background:var(--tp-pine);color:#fff;font:inherit;font-size:17px;font-weight:700;cursor:pointer}
.tp-btn:hover{background:var(--rn-green-dark,#1b564b);filter:brightness(.92)}
.tp-ask__note{margin:0;padding:12px 14px;border-radius:10px;background:var(--tp-vermilion-wash);
  color:var(--tp-vermilion-dark);font-size:14px;line-height:1.6;border-left:3px solid var(--tp-vermilion)}
.tp-ask__restored{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:-4px 0 0;font-size:14px;color:var(--tp-ink-3)}
.tp-ask__restored button{padding:7px 11px;border:1px solid var(--tp-line);border-radius:999px;background:transparent;
  font:inherit;font-size:13.5px;color:var(--tp-pine);cursor:pointer}
.tp-ask__choice{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px 14px;border-radius:10px;
  background:var(--tp-paper-2);font-size:14px;color:var(--tp-ink-2)}
.tp-ask__choice.is-waiting{background:var(--tp-vermilion-wash);border:1px solid var(--tp-vermilion)}
.tp-ask__choice button{min-height:40px;padding:8px 12px;border:1px solid var(--tp-line);border-radius:999px;
  background:var(--tp-surface);font:inherit;font-size:14px;cursor:pointer}
.tp-ask__choice button:hover{border-color:var(--tp-pine);color:var(--tp-pine)}


/* ── 줄 하나짜리 입구(날짜·종합)와 무료 두 장 ───────────────────────────── */
.tp-band{width:100%;padding:0 0 26px}
.tp-band h2{margin:0 0 12px;font-size:16px;color:var(--tp-ink-2);font-family:"IBM Plex Sans KR",sans-serif;font-weight:600}
.tp-row{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--tp-line);
  border-radius:12px;background:var(--tp-surface);color:inherit;text-decoration:none}
.tp-row+.tp-row{margin-top:10px}
.tp-row:hover{border-color:var(--tp-pine)}
.tp-row__body{flex:1;min-width:0}
.tp-row b{display:block;font-family:"Gowun Batang",serif;font-size:17px;line-height:1.4}
.tp-row span{display:block;margin-top:4px;font-size:14px;line-height:1.6;color:var(--tp-ink-3);word-break:keep-all}
.tp-row__meta{flex:none;text-align:right;font-size:15px;font-weight:700;color:var(--tp-ink);white-space:nowrap}
.tp-row__meta small{display:block;margin-top:3px;font-size:12.5px;font-weight:600;color:var(--tp-pine)}
.tp-badge{display:inline-block;padding:3px 9px;border-radius:999px;background:var(--tp-paper-2);
  border:1px solid var(--tp-line);color:var(--tp-pine);font-size:12.5px;font-weight:700}
/* 무료 문패는 **언제나 한 열**이다. 넓은 화면에서 두 열로 접었더니, 셸은 430px
   그대로인데 카드가 194px 로 줄어 안쪽 격자(그림 146px + 글)에서 **글 칸이 0px** 이
   되어 상품명이 세로로 깨졌다. 화면 폭이 아니라 셸 폭이 기준이어야 한다. */
.tp-skin .rn-doors{display:grid;gap:10px;grid-template-columns:minmax(0,1fr)}
.tp-skin .rn-door{border-radius:12px;border-color:var(--tp-line);background:var(--tp-surface)}
.tp-skin .rn-section{padding:0 0 26px}

/* ── 상품 설명·안내 상자 ─────────────────────────────────────────────────── */
.tp-hero{padding:18px 0 4px}
/* 제목 옆 작은 장면. 폼을 밀지 않도록 폭을 고정하고 제목이 먼저 자리를 잡는다. */
.tp-hero__row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.tp-hero__row h1{flex:1;min-width:0}
.tp-hero__row .tp-art-pic--head{margin-top:2px}

.tp-hero h1{margin:0;font-size:32px;line-height:1.34;word-break:keep-all}
.tp-hero p{margin:12px 0 0;font-size:16px;line-height:1.7;color:var(--tp-ink-2);word-break:keep-all}
.tp-lede{margin:12px 0 0;font-size:16px;line-height:1.7;color:var(--tp-ink-2)}
.tp-promise{margin:20px 0 0;padding:0 0 0 14px;border-left:3px solid var(--tp-pine);
  font-size:15.5px;line-height:1.7;color:var(--tp-ink-2)}
.tp-box{margin:22px 0 0;padding:18px;border:1px solid var(--tp-line);border-radius:12px;background:var(--tp-surface)}
.tp-box>b{display:block;margin-bottom:12px;font-family:"Gowun Batang",serif;font-size:18px}
.tp-box ol,.tp-box ul{margin:0;padding-left:18px}
.tp-box li{margin:8px 0;font-size:15.5px;line-height:1.7;word-break:keep-all}
.tp-answers{list-style:none;padding:0;margin:0}
.tp-answers li{margin:12px 0;padding-left:14px;border-left:2px solid var(--tp-line)}
.tp-answers b{font-size:16px}
.tp-buy{margin:24px 0 0;padding:20px;border:1px solid var(--tp-line);border-radius:12px;background:var(--tp-paper-2)}
.tp-buy__price{display:flex;align-items:baseline;gap:8px;margin:0;font-size:28px;font-weight:700;font-family:"IBM Plex Sans KR",sans-serif}
.tp-buy__price small{font-size:14px;font-weight:400;color:var(--tp-ink-3)}
.tp-buy__fine{margin:8px 0 16px;font-size:14px;color:var(--tp-ink-3)}
.tp-cta{display:flex;align-items:center;justify-content:center;min-height:52px;padding:0 16px;border:0;border-radius:12px;
  background:var(--tp-pine);color:#fff;font:inherit;font-size:16px;font-weight:700;text-align:center;text-decoration:none;cursor:pointer}
.tp-cta:hover{filter:brightness(.92)}
.tp-fold{margin:24px 0 0;border-top:1px solid var(--tp-line)}
.tp-fold details{border-bottom:1px solid var(--tp-line)}
.tp-fold summary{list-style:none;cursor:pointer;padding:16px 2px;font-size:16px;font-weight:600;
  display:flex;align-items:center;justify-content:space-between;gap:10px}
.tp-fold summary::-webkit-details-marker{display:none}
.tp-fold summary::after{content:"▾";color:var(--tp-ink-3);font-size:12px}
.tp-fold details[open] summary::after{content:"▴"}
.tp-fold__body{padding:0 2px 18px;font-size:15.5px;line-height:1.8;color:var(--tp-ink-2)}
.tp-fold__body p{margin:0 0 12px}
.tp-fold__body ul{margin:0;padding-left:18px}
.tp-fold__body li{margin:7px 0}
/* 실제로 답해 준 글을 그대로 보여 주는 자리. 어두운 판은 두지 않는다 —
   바탕은 흰 종이 하나다(옅은 면 + 한 겹 테두리로만 구분). */
.tp-sample{padding:16px;border-radius:var(--r-md,12px);background:var(--surface,#f7f6f4);
  border:1px solid var(--border,#e5e0dc);color:var(--text,#211e1b)}
.tp-sample__t{margin:0 0 12px;font-size:13px;line-height:20px;color:var(--text-muted,#746c65)}
.tp-sample p{margin:0 0 14px;font:400 17px/30px "Gowun Batang",serif;word-break:keep-all}
.tp-sample p:last-child{margin-bottom:0}
.tp-open{margin:22px 0 0;padding:18px;border:1px solid var(--tp-line);border-radius:12px;background:var(--tp-surface)}
.tp-open b{display:block;font-family:"Gowun Batang",serif;font-size:17px}
.tp-open p{margin:8px 0 0;font-size:15px;line-height:1.7;color:var(--tp-ink-2)}
.tp-open a{display:inline-block;margin-top:12px;font-size:15px;font-weight:600}

/* ── 주문 세 걸음 ────────────────────────────────────────────────────────── */
.tp-steps{display:flex;align-items:center;gap:8px;margin:16px 0 0;padding:0;font-size:13.5px;color:var(--tp-ink-3)}
.tp-steps li{display:flex;align-items:center;gap:6px;list-style:none}
.tp-steps li+li::before{content:"";width:16px;height:1px;background:var(--tp-line)}
.tp-steps i{display:flex;width:22px;height:22px;align-items:center;justify-content:center;border-radius:50%;
  background:var(--tp-paper-2);color:var(--tp-ink-3);font-style:normal;font-size:12.5px;font-weight:700}
.tp-steps .is-now{color:var(--tp-ink);font-weight:600}
.tp-steps .is-now i{background:var(--tp-pine);color:#fff}
.tp-steps .is-done i{background:var(--tp-paper-2);border:1px solid var(--tp-pine);color:var(--tp-pine)}
.tp-next,.tp-stepback{font:inherit}
.tp-next{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;margin:20px 0 0;padding:0 16px;
  border:0;border-radius:12px;background:var(--tp-pine);color:#fff;font-size:16px;font-weight:700;cursor:pointer}
.tp-next:hover{filter:brightness(.92)}
.tp-stepback{display:inline-block;margin:16px 0 0;padding:8px 0;color:var(--tp-ink-3);font-size:14px;
  background:none;border:0;cursor:pointer}
.tp-stepback:hover{color:var(--tp-pine)}
.tp-hints{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.tp-chip--hint{min-height:40px;padding:9px 12px;border:1px dashed var(--tp-line);border-radius:999px;background:transparent;
  font:inherit;font-size:14px;color:var(--tp-ink-3);cursor:pointer}
.tp-chip--hint:hover{border-style:solid;border-color:var(--tp-pine);color:var(--tp-pine)}
.tp-pair{display:flex;gap:12px;align-items:flex-start;cursor:pointer}
.tp-pair input{margin-top:1px;width:22px;height:22px;flex:none;accent-color:var(--tp-pine)}
.tp-pair b{display:block;font-size:15px;line-height:22px}
.tp-pair small{display:block;margin-top:2px;color:var(--tp-ink-3);font-size:13px;line-height:20px}
.tp-pair__price{margin:14px 0 0;font-size:15px;font-weight:600;color:var(--tp-ink)}
/* 폼 칸들 — 공통 스킨 위에 같은 결로 */
.tp-skin .rn-form-wrap{width:100%;padding:0 var(--st-gut,16px) 120px}
.tp-skin .rn-order-heading span[class=""],.tp-skin .rn-order-heading>span,.tp-skin .tp-order-head__text>span{
  display:block;color:var(--tp-vermilion);font-size:14px;font-weight:700}
.tp-skin .rn-form{margin-top:20px;gap:18px}
.tp-skin .rn-btn--gold,.tp-skin .rn-form-dock .rn-btn{min-height:52px;border-radius:12px;background:var(--tp-pine);
  border-color:var(--tp-pine);color:#fff;font-size:16px;font-weight:700}
.tp-skin .rn-btn--gold:hover{filter:brightness(.92)}
.tp-skin .rn-form-dock{background:rgba(255,255,255,.97);border-top:1px solid var(--tp-line)}
.tp-skin .rn-form__fine{font-size:13.5px;color:var(--tp-ink-3)}
.tp-situation .rn-bcard__row--stack{grid-template-columns:minmax(0,1fr)}

/* ── 결제 화면(③)도 같은 결 ─────────────────────────────────────────────── */
.tp-skin .rn-pay__main{width:100%;margin:0;padding:0 var(--st-gut,16px) 80px}
.tp-skin .rn-pay h1{font-family:"Gowun Batang",serif;color:var(--tp-ink)}
.tp-skin .rn-pay__card,.tp-skin .rn-pay__box{background:var(--tp-surface);border:1px solid var(--tp-line);border-radius:12px}

/* ── 완성본 ─────────────────────────────────────────────────────────────── */
.tp-read{width:100%}
.tp-asked{margin:14px 0 0;padding:14px 16px;border-radius:10px;background:var(--tp-paper-2);
  font-size:15.5px;line-height:1.7;color:var(--tp-ink-2);word-break:keep-all}
.tp-answer{margin:20px 0 0;padding:2px 0 2px 16px;border-left:3px solid var(--tp-pine)}
.tp-answer__t{margin:0 0 6px;font-size:13px;font-weight:700;letter-spacing:.05em;color:var(--tp-pine)}
.tp-read h1{margin:0;font-size:28px;line-height:1.4;word-break:keep-all}
.tp-meta{margin:10px 0 0;font-size:13.5px;line-height:1.6;color:var(--tp-ink-3)}
.tp-part{margin:28px 0 0;padding-top:24px;border-top:1px solid var(--tp-line-soft)}
.tp-part:first-of-type{margin-top:22px;padding-top:0;border-top:0}
.tp-part h2{margin:0 0 14px;font-size:21px;line-height:1.45;word-break:keep-all}
.tp-part p{margin:0 0 16px;font-size:17px;line-height:1.85;word-break:keep-all;color:var(--tp-ink)}
.tp-table-wrap{margin:2px 0 8px;border:1px solid var(--tp-line);border-radius:12px;overflow:hidden}
.tp-table{width:100%;border-collapse:collapse;font-size:15px}
.tp-table td{padding:13px 12px;border-top:1px solid var(--tp-line-soft);vertical-align:top;line-height:1.7}
.tp-table tr:first-child td{border-top:0}
.tp-table tr:nth-child(even) td{background:var(--tp-paper-2)}
.tp-table td:first-child{width:108px;padding-right:0;font-weight:700;word-break:keep-all;color:var(--tp-ink)}
/* 창·피할 해는 색이 아니라 **테두리와 글자색**으로 갈린다. 사이트에 없는 색을
   새로 만들지 않으려고 바탕은 모두 같은 흰 계열로 둔다. */
.tp-label{display:inline-block;margin-right:8px;padding:2px 9px;border-radius:999px;font-size:12.5px;font-weight:700;
  background:var(--tp-paper-2);border:1px solid var(--tp-line);color:var(--tp-ink-3)}
.tp-label--first,.tp-label--second{background:var(--st-wood-50,#eaf5ef);border-color:var(--wood,#1b6754);color:var(--wood,#1b6754)}
.tp-label--avoid{background:var(--tp-vermilion-wash);border-color:var(--tp-vermilion);color:var(--tp-vermilion-dark)}
.tp-label--care{background:var(--st-earth-50,#fff4d8);border-color:var(--earth,#8b5d19);color:var(--earth,#8b5d19)}
.tp-label--plain{background:var(--surface,#f7f6f4);border-color:var(--border,#e5e0dc);color:var(--text-muted,#746c65)}
/* 읽는 글은 명조 17/30. 딱지·표 머리 같은 UI 글자는 고딕 그대로 둔다. */
.tp-read .tp-part p,.tp-read .tp-actions li,.tp-asked,.tp-sample p{
  font-family:"Gowun Batang",serif;font-size:17px;line-height:30px;letter-spacing:-.02em}
.tp-read .tp-part h2{font-family:"Gowun Batang",serif}
.tp-table td,.tp-label,.tp-evidence summary,.tp-ev__src li{font-family:var(--font-ui,"Noto Sans KR",sans-serif)}
.tp-actions{margin:0;padding-left:18px}
.tp-actions li{margin:10px 0;font-size:17px;line-height:1.8}
/* 근거 — 명제 하나에 근거 여러 줄. 상자 안에서 **묶음 경계**가 보여야 한다.
   작은 회색 글이 길게 이어지지 않도록 명제는 본문 무게로, 근거는 한 칸 들여
   같은 안쪽 여백으로 정렬한다(기존 소액 리포트의 마감을 따른다). */
.tp-evidence{margin:28px 0 0;border:1px solid var(--tp-line);border-radius:14px;background:var(--tp-surface);
  overflow:hidden}
.tp-evidence summary{list-style:none;cursor:pointer;padding:15px 16px;font-size:15.5px;font-weight:700;
  display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid transparent}
.tp-evidence[open] summary{border-bottom-color:var(--tp-line)}
.tp-evidence summary::-webkit-details-marker{display:none}
.tp-evidence summary::after{content:"▾";color:var(--tp-ink-3);font-size:12px}
.tp-evidence[open] summary::after{content:"▴"}
.tp-evidence__body{padding:14px 12px 16px}
.tp-evidence__note{margin:0 4px 12px;font-size:13px;line-height:1.65;color:var(--tp-ink-3)}
.tp-evidence__list{display:grid;gap:8px;margin:0;padding:0;list-style:none;counter-reset:ev}
.tp-ev{padding:12px 13px;border:1px solid var(--tp-line-soft);border-radius:10px;background:var(--tp-paper-2)}
.tp-ev__claim{margin:0;font-family:"Gowun Batang",serif;font-size:15px;line-height:1.6;color:var(--tp-ink);
  word-break:keep-all}
.tp-ev__claim::before{counter-increment:ev;content:counter(ev);display:inline-block;min-width:18px;margin-right:7px;
  color:var(--tp-pine);font-family:"IBM Plex Sans KR",sans-serif;font-size:12px;font-weight:700;vertical-align:1px}
.tp-ev__src{display:grid;gap:5px;margin:9px 0 0;padding:0;list-style:none}
.tp-ev__src li{padding:0 0 0 11px;border-left:2px solid var(--tp-line);font-size:13px;line-height:1.65;
  color:var(--tp-ink-2);word-break:keep-all}
.tp-inputs{margin:16px 0 0;font-size:14.5px}
.tp-inputs summary{cursor:pointer;color:var(--tp-ink-3);padding:8px 0;font-weight:600}
.tp-inputs dl{margin:10px 0 0;padding:16px;border-radius:10px;background:var(--tp-paper-2)}
.tp-inputs dt{font-size:13.5px;font-weight:700;color:var(--tp-ink-3)}
.tp-inputs dd{margin:3px 0 12px;font-size:15px;line-height:1.7}
.tp-inputs dd:last-child{margin-bottom:0}
.tp-more{margin:26px 0 0;padding:18px;border-radius:12px;background:var(--tp-paper-2);font-size:15px;line-height:1.75}
.tp-more a{font-weight:600}
.tp-disclaimer{margin:22px 0 0;font-size:13.5px;line-height:1.7;color:var(--tp-ink-3)}
.tp-sibling{margin:22px 0 0;padding:18px;border:1px solid var(--tp-line);border-radius:12px;background:var(--tp-surface)}
.tp-sibling>b{display:block;margin-bottom:6px;font-size:15.5px;font-weight:600}
.tp-sibling a{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:12px 0;
  border-top:1px solid var(--tp-line-soft);color:inherit;text-decoration:none;font-size:15.5px}
.tp-sibling a:first-of-type{border-top:0}
.tp-sibling i{font-style:normal;font-weight:700;font-size:14.5px;white-space:nowrap;color:var(--tp-pine)}
.tp-list{margin-top:20px}
.tp-q{display:block;padding:18px;margin:0 0 10px;border:1px solid var(--tp-line);border-radius:12px;
  background:var(--tp-surface);color:inherit;text-decoration:none}
.tp-q:hover{border-color:var(--tp-pine)}
.tp-q h3{margin:0;font-size:18px;line-height:1.45;word-break:keep-all}
.tp-q p{margin:6px 0 0;font-size:14.5px;line-height:1.6;color:var(--tp-ink-3)}
.tp-q__row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:14px}
.tp-q__price{font-size:16px;font-weight:700}
.tp-q__price small{margin-left:6px;font-size:13px;font-weight:400;color:var(--tp-ink-3)}
.tp-q__go{font-size:14px;font-weight:600;color:var(--tp-pine)}
.tp-field{margin:18px 0 0}
.tp-field>label,.tp-field__lab{display:block;margin:0 0 8px;font-size:15px;font-weight:600}
.tp-field textarea{width:100%;min-height:132px;padding:14px;border:1px solid var(--tp-line);border-radius:12px;
  background:var(--tp-surface);font:inherit;font-size:16px;line-height:1.7;resize:vertical}
.tp-chip{display:inline-flex}
.tp-chip input{position:absolute;opacity:0;width:0;height:0}
.tp-chip span{display:inline-block;min-height:44px;padding:11px 14px;border:1px solid var(--tp-line);border-radius:999px;
  background:var(--tp-surface);font-size:15px;line-height:1.4;cursor:pointer}
.tp-chip input:checked+span{border-color:var(--tp-pine);background:var(--tp-pine-wash);color:var(--tp-pine);font-weight:600}
.tp-chip input:focus-visible+span{outline:2px solid var(--tp-pine);outline-offset:2px}
