/* Shared media and editorial layouts for published travel content. */
.tg-page .tg-discovery-card {
  position: relative;
  container-type: inline-size;
  align-self: start;
  aspect-ratio: 4 / 3;
  min-width: 0;
  min-height: 0;
  height: auto;
  display: block;
  padding: 0;
  overflow: hidden;
  border: 1px solid #dce9e5;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 4px 18px #163a3408;
  transition: border-color .2s, box-shadow .2s, transform .2s;
}
.tg-page .tg-discovery-card:hover { border-color: #87bcb1; box-shadow: 0 12px 28px #163a3412; transform: translateY(-3px); }
.tg-page .tg-discovery-card:focus-within { box-shadow: 0 0 0 3px #087d7440; }
.tg-page .tg-card-link { position: absolute; inset: 0; width: 100%; height: 100%; min-height: 0; display: grid; grid-template-rows: auto minmax(0,1fr); text-decoration: none; }
.tg-page .tg-card-link:focus-visible { outline-offset: -3px; border-radius: inherit; }
.tg-page .tg-card-media { position: relative; display: block; width: 100%; aspect-ratio: 2 / 1; min-height: 0; overflow: hidden; background: #f0f5f2; box-shadow: inset 0 -1px #e5eeea; }
.tg-page .tg-card-image, .tg-page .tg-card-image-placeholder { position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: 100%; max-height: 100%; margin: 0; aspect-ratio: auto; object-fit: contain; object-position: center; border-radius: 0; }
.tg-page .tg-card-image-placeholder { display: grid; place-items: center; color: #819c93; background: linear-gradient(145deg,#edf5f0,#f8faf6); font: 600 clamp(.8rem,4cqw,1.15rem)/1.5 var(--tg-font-songti); letter-spacing: .16em; }
.tg-page .tg-card-body { display: flex; flex-direction: column; justify-content: center; gap: clamp(2px,1cqw,5px); min-height: 0; padding: clamp(3px,2cqw,10px) clamp(10px,4cqw,18px); overflow: hidden; }
body.tg-page .tg-card-body :is(h2,h3) { margin: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #163c35; font: 650 clamp(.82rem,4.8cqw,1.16rem)/1.35 var(--tg-font-ui) !important; letter-spacing: .01em; }
.tg-page .tg-card-facts { display: flex; align-items: center; flex-wrap: nowrap; gap: .45em; min-width: 0; margin: 0; color: #5c7266; font: 400 clamp(.64rem,3.3cqw,.82rem)/1.3 var(--tg-font-ui); }
.tg-page .tg-card-kind-label { flex: 0 0 auto; color: #14776b; font-weight: 600; }
.tg-page .tg-card-area { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.tg-page .tg-card-area::before { content: none; }
.tg-page .tg-open-state { flex: 0 0 auto; margin-left: auto; font-size: inherit; }
.tg-page .tg-card-summary { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; margin: 0; overflow: hidden; text-overflow: ellipsis; color: #60766b; font: clamp(.7rem,3.6cqw,.84rem)/1.45 var(--tg-font-ui); }
.tg-page .tg-card-badge { position:absolute; z-index:1; top:.5rem; left:.5rem; max-width:calc(100% - 4.5rem); display:flex; align-items:center; gap:.4rem; padding:.25rem .5rem; color:#315d50; font:500 clamp(.7rem,3.2cqw,.8rem)/1.25 var(--tg-font-ui); border:1px solid #ffffffc9; border-radius:10px; background:#fffffff0; box-shadow:0 2px 10px #163a3410; backdrop-filter:blur(8px); }
.tg-page .tg-card-badge--services { top:auto; bottom:.5rem; max-width:calc(100% - 1rem); }
.tg-page .tg-card-badge--services :is(.tg-card-kind-label,.tg-card-secondary) { min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.tg-page .tg-card-badge--services .tg-card-kind-label { flex:0 1 auto; }
.tg-page .tg-card-badge--services .tg-card-secondary { flex:1 1 auto; font:inherit; }
.tg-page .tg-card-badge--services .tg-card-secondary::before { content:'·'; margin-right:.4rem; color:#9aaea5; }
.tg-page .tg-card-badge--city:not(:has(.tg-card-area:not([hidden]))) { display:none; }
.tg-page .tg-discovery-card:has([data-place-distance]:not([hidden])) .tg-card-badge--services { max-width:calc(100% - 7rem); }
.tg-page .tg-card-secondary { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; color:#60786c; font:400 clamp(.7rem,3cqw,.75rem)/1.3 var(--tg-font-ui); }
.tg-page .tg-discovery-card .tg-tag-list { display: none; }
.tg-page .tg-save-place { width: 2.75rem; height: 2.75rem; min-height: 2.75rem; top: .65rem; right: .65rem; border: 1px solid #ffffffb3; background: #ffffffed; box-shadow: 0 2px 12px #173a3412; backdrop-filter: blur(8px); }
.tg-page .tg-saved-remove { position: absolute; z-index: 2; top: .65rem; right: .65rem; width: auto; min-height: 44px; margin: 0; padding: .4rem .75rem; border: 1px solid #dce9e2; border-radius: 999px; color: #476657; background: #ffffffed; font-size: .75rem; cursor: pointer; }
.tg-page .tg-save-place[aria-pressed='true'] { color: #c55651; background: #fff4f2; border-color: #edc9c3; }
.tg-page .tg-place-distance { top: auto; bottom: calc(100% - 50cqw + .6rem); left: auto; right:.5rem; font-size: .7rem; background: #ffffffed; color: #305e53; }
.tg-page .tg-search-results { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem; }
.tg-page .tg-guide-links .tg-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
@container (max-width: 18rem) { .tg-page .tg-card-summary { -webkit-line-clamp:1; } }
.tg-destination-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.6rem; }
.tg-destination-options a { display:flex; align-items:center; justify-content:center; min-height:44px; padding:.6rem; border:1px solid #dce9e5; border-radius:12px; text-decoration:none; color:#315d50; }
.tg-destination-options a[aria-current] { color:#fff; background:#087d74; border-color:#087d74; }
@media(max-width:64rem) { .tg-page .tg-footer-identity,.tg-page .tg-footer-inner > nav { display:none; } .tg-page .tg-footer-inner { justify-content:center; } }

/* A wide image stage and a quieter reading column establish a shared rhythm. */
.tg-content-detail { --tg-detail-wide: 68rem; }
.tg-content-detail .tg-section { padding-block: 2.25rem; }
.tg-page .tg-profile-detail { padding-top: 2.25rem; }
.tg-page .tg-content-detail > header, .tg-page .tg-attraction-identify, .tg-page .tg-guide-header { padding-bottom: 2.5rem; }
.tg-page .tg-content-detail header .tg-reading, .tg-page .tg-profile-detail > header.tg-reading, .tg-page .tg-attraction-identify > .tg-reading { width: min(100% - 3rem,var(--tg-detail-wide)); max-width: var(--tg-detail-wide); }
.tg-page .tg-content-detail h1 { max-width: 24em; margin: .6rem 0 1rem; color: #193f35; font-size: clamp(1.85rem,3.5vw,3.1rem); line-height: 1.4; letter-spacing: .025em; overflow-wrap: anywhere; }
.tg-page .tg-content-detail .tg-eyebrow { margin: 0; color: #237c6e; font: 600 .75rem/1.6 var(--tg-font-ui); letter-spacing: .08em; }
.tg-page .tg-content-detail .tg-lede { max-width: 48rem; margin: 0 0 1.25rem; color: #60766d; font-size: clamp(.95rem,1.4vw,1.08rem); line-height: 1.9; }
.tg-page .tg-content-detail .tg-breadcrumbs { margin-bottom: 1.5rem; font-size: .75rem; color: #5c7266; }
.tg-page :is(.tg-profile-cover,.tg-attraction-cover,.tg-guide-cover) { position: relative; display: block; width: min(100% - 3rem,68rem); max-width: none; aspect-ratio: 2 / 1; min-height: 0; padding: 0; margin: 1.75rem auto 0; overflow: hidden; background: #edf3ee; border: 1px solid #dfe9e2; border-radius: 22px; }
.tg-page :is(.tg-profile-cover,.tg-attraction-cover,.tg-guide-cover) > img { display: block; position: absolute; inset: 0; width: 100%; height: 100%; max-width: 100%; max-height: 100%; object-fit: contain; object-position: center; margin: 0; border-radius: 0; }
.tg-page .tg-profile-logo { float: right; width: 64px; height: 64px; margin: 0 0 1rem 1.5rem; padding: 4px; border: 1px solid #dfe9e2; border-radius: 16px; background: #fff; object-fit: contain; }
.tg-page .tg-profile-facts { margin-top: 2rem; padding: 1.5rem 1.75rem; border: 1px solid #dce9e2; border-radius: 18px; background: #fff; box-shadow: 0 6px 22px #163a3405; }
.tg-page .tg-profile-facts h2, .tg-page .tg-profile-section > h2, .tg-page .tg-content-detail .tg-quick-decision h2 { margin: 0 0 1.1rem; color: #244e41; font-size: 1.3rem; line-height: 1.6; }
.tg-page .tg-profile-facts p { margin: .65rem 0; color: #556f62; font-size: .95rem; }
.tg-page .tg-profile-facts strong { color: #294f42; }
.tg-page .tg-profile-section { padding-block: 2rem; border-color: #dce8df; }
.tg-page .tg-profile-section .tg-card { padding: 1.25rem; border-color: #dce9e2; border-radius: 14px; box-shadow: none; }
.tg-page .tg-profile-section .tg-card h3 { font-size: 1.1rem; line-height: 1.55; }
.tg-page .tg-profile-section .tg-card p { margin-block: .6rem; font-size: .92rem; }
.tg-page .tg-profile-section details { padding: 1rem 0; border-color: #e2ece5; }
.tg-page .tg-profile-section details summary { color: #315e4d; font-size: .95rem; font-weight: 600; cursor: pointer; }
.tg-page .tg-content-detail .tg-tag-list span { background: #edf5ef; color: #547560; border-radius: 6px; }
.tg-page .tg-content-detail .tg-button { border-radius: 10px; min-height: 44px; font-size: .9rem; }
.tg-page .tg-fact-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: .85rem; }
.tg-page .tg-fact-grid > div { padding: 1.1rem 1.2rem; border-radius: 14px; border-color: #dce9e2; }
.tg-page .tg-fact-grid dt { color: #5c7266; font-size: .75rem; }
.tg-page .tg-fact-grid dd { color: #365747; font-size: .95rem; line-height: 1.65; }
.tg-page .tg-guide-meta { display: inline-block; padding: .45rem .8rem; margin: .25rem 0 0; border: 1px solid #dce8df; border-radius: 8px; background: #ffffffb3; color: #6a8071; font: .78rem/1.6 var(--tg-font-ui); }
.tg-page .tg-guide-body { padding-top: 2.5rem; font-size: 1.03rem; line-height: 1.95; }
.tg-page .tg-guide-body > h2 { padding-top: .6rem; margin-top: 2.25rem; color: #28583f; font-size: 1.45rem; line-height: 1.6; scroll-margin-top: 6rem; }
.tg-page .tg-guide-body > h2:first-child { margin-top: 0; }
.tg-page .tg-guide-body > p { color: #455e4e; }
.tg-page .tg-guide-links { padding-top: 2rem; margin-top: 2.5rem; border-color: #dce8df; }
.tg-page .tg-guide-links > h2 { margin: 0 0 1rem; color: #28583f; font-size: 1.3rem; }
.tg-page .tg-fact-list > div { padding: .9rem 1rem; border-color: #dce9e2; border-radius: 12px; }
.tg-page .tg-guide-cta { padding: 1.75rem; border-radius: 18px; background: #194c40; }
.tg-page .tg-content-detail .tg-comments { margin-top: 2.5rem; padding-top: 2rem; border-color: #dce8df; }
.tg-page .tg-comments form, .tg-page .tg-profile-interactions form { border-color: #dce9e2; border-radius: 18px; box-shadow: 0 5px 20px #163a3405; }
.tg-page .tg-comment-pictures img { background: #f1f5f1; }
@media (max-width: 64rem) { .tg-page .tg-search-results { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 48rem) {
  .tg-content-detail .tg-section { padding-block: 1.6rem; }
  .tg-page.tg-install-visible .tg-mobile-action-bar { bottom: calc(4.7rem + var(--tg-install-space,5.2rem) + var(--tg-footer-line,0rem) + env(safe-area-inset-bottom)); }
  .tg-page.tg-is-home :is([data-featured-attractions],[data-featured-profiles],[data-latest-guides]) .tg-grid { display: grid; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 78%; gap: 1rem; overflow-x: auto; padding: .2rem .1rem .85rem; scroll-snap-type: x mandatory; }
  .tg-page.tg-is-home .tg-discovery-card { scroll-snap-align: start; border-radius: 15px; }
  .tg-page .tg-content-detail h1 { font-size: clamp(1.75rem,6.5vw,2.2rem); line-height: 1.45; }
  .tg-page .tg-content-detail header .tg-reading, .tg-page .tg-profile-detail > header.tg-reading, .tg-page .tg-attraction-identify > .tg-reading { width: calc(100% - 2rem); }
  .tg-page :is(.tg-profile-cover,.tg-attraction-cover,.tg-guide-cover) { width: calc(100% - 2rem); margin-top: 1.4rem; border-radius: 14px; }
  .tg-page .tg-content-detail > header, .tg-page .tg-attraction-identify, .tg-page .tg-guide-header { padding-bottom: 1.5rem; }
  .tg-page .tg-profile-detail { padding-top: 1.5rem; }
  .tg-page .tg-profile-facts { padding: 1.25rem; border-radius: 14px; }
  .tg-page .tg-fact-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; }
  .tg-page .tg-fact-grid > div { padding: .9rem; }
  .tg-page .tg-guide-body { padding-top: 1.75rem; font-size: 1rem; line-height: 1.9; }
  .tg-page .tg-guide-body > h2 { font-size: 1.25rem; }
}
@media (max-width: 36rem) {
  .tg-page .tg-search-results, .tg-page .tg-guide-links .tg-grid { grid-template-columns: minmax(0,1fr); }
  .tg-page .tg-profile-logo { width: 52px; height: 52px; margin-left: 1rem; border-radius: 12px; }
}
@media (prefers-reduced-motion: reduce) { .tg-page .tg-discovery-card { transition: none; } .tg-page .tg-discovery-card:hover { transform: none; } }

/* Thai Easy Trip template alignment: readyPage, attractionDetailHero and guideReadingFlow.
   Adapted to Taiguojian Chinese content and existing public interactions. */
.tg-page .tg-profile-detail {
  width: min(100%,760px); max-width:760px; margin-inline:auto; padding:0 0 2rem;
  min-height:100vh; background:#fff; box-shadow:0 0 40px #0b5d5712;
}
.tg-page .tg-profile-detail > .tg-profile-cover {
  width:100%; height:250px; aspect-ratio:auto; margin:0; border:0; border-radius:0;
  background:linear-gradient(135deg,#d8f6f2,#f8fcfc);
}
.tg-page .tg-profile-detail > .tg-profile-cover img { object-fit:cover; }
.tg-page .tg-profile-detail > header.tg-reading {
  position:relative; width:100%; max-width:none; margin:0; padding:24px 22px;
}
.tg-page .tg-profile-detail .tg-profile-logo {
  float:none; display:block; width:88px; height:88px; margin:0 0 14px; padding:0;
  border:5px solid #fff; border-radius:22px; object-fit:cover; box-shadow:0 8px 25px #1234;
}
.tg-page .tg-profile-detail:has(> .tg-profile-cover) .tg-profile-logo { margin-top:-68px; position:relative; }
.tg-page .tg-profile-detail h1 { margin:15px 0 8px; font-size:34px; line-height:1.2; letter-spacing:normal; color:#1f2937; }
.tg-page .tg-profile-detail .tg-lede { font-size:18px; line-height:1.7; color:#435451; }
.tg-page .tg-profile-detail .tg-breadcrumbs { margin-bottom:16px; }
.tg-page .tg-profile-detail .tg-profile-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:20px; }
.tg-page .tg-profile-detail .tg-button { min-height:48px; padding:11px; border-radius:12px; font-size:16px; font-weight:700; }
.tg-page .tg-profile-detail > .tg-reading { width:100%; max-width:none; padding-inline:22px; }
.tg-page .tg-profile-detail > .tg-profile-facts { margin:0; padding:20px 22px; border:0; border-radius:0; background:#eaf9f7; box-shadow:none; }
.tg-page .tg-profile-detail .tg-profile-section { padding-block:25px; border-color:#deebe9; }
.tg-page .tg-profile-detail .tg-profile-section > h2 { font-size:26px; color:#1f2937; margin-bottom:14px; }
.tg-page .tg-profile-detail .tg-profile-section .tg-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.tg-page .tg-profile-detail .tg-profile-section .tg-card { border:1px solid #dbeae8; border-radius:16px; padding:14px; overflow:hidden; }
.tg-page .tg-profile-detail .tg-profile-section .tg-card img { width:100%; aspect-ratio:1; object-fit:cover; border-radius:10px; }
.tg-page .tg-profile-detail .tg-profile-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.tg-page .tg-profile-detail .tg-profile-gallery img { aspect-ratio:1; object-fit:cover; border-radius:16px; }
.tg-page .tg-profile-detail .tg-item-price { color:#db3e3e; font-weight:800; font-size:22px; }
.tg-page .tg-profile-detail .tg-profile-section details { border-top:1px solid #deebe9; padding:12px 0; }
.tg-page .tg-profile-detail .tg-profile-section summary { min-height:44px; display:flex; align-items:center; font-weight:700; }
.tg-page .tg-profile-detail > .tg-comments { width:calc(100% - 44px); }
.tg-page .tg-attraction-identify {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(24px,5vw,64px);
  align-items:center; width:min(100% - 48px,1200px); margin:auto; padding-block:64px 36px;
}
.tg-page .tg-attraction-identify > .tg-reading { width:100%; max-width:none; margin:0; }
.tg-page .tg-attraction-identify > .tg-attraction-cover { grid-column:1; grid-row:1; width:100%; margin:0; aspect-ratio:1; border-radius:18px; }
.tg-page .tg-attraction-identify > .tg-reading { grid-column:2; grid-row:1; }
.tg-page .tg-attraction-identify > .tg-attraction-cover img { object-fit:cover; }
.tg-page .tg-attraction-identify:not(:has(.tg-attraction-cover)) { display:block; max-width:736px; }
.tg-page .tg-attraction-identify h1 { color:#1f2937; letter-spacing:normal; font-size:clamp(28px,3.4vw,44px); line-height:1.25; }
.tg-page .tg-attraction-detail .tg-fact-grid > div { background:#eaf9f7; border-color:#dbeae8; }
.tg-page .tg-content-detail.tg-guide-detail .tg-guide-header > .tg-reading { width:min(100% - 48px,736px); max-width:736px; }
.tg-page .tg-guide-detail .tg-guide-cover { width:min(100% - 48px,736px); aspect-ratio:16/9; border:0; border-radius:18px; }
.tg-page .tg-guide-detail .tg-guide-cover img { object-fit:cover; }
.tg-page .tg-guide-detail h1 { font-size:clamp(28px,4vw,42px); line-height:1.35; letter-spacing:normal; color:#1f2937; }
.tg-page .tg-guide-reading-flow { display:grid; grid-template-columns:200px minmax(0,736px) 200px; gap:32px; width:min(100% - 48px,1200px); margin:auto; justify-content:center; align-items:start; }
.tg-page .tg-guide-reading-flow:not(:has(.tg-guide-toc)) { display:block; max-width:736px; }
.tg-page .tg-guide-reading-flow > .tg-guide-body { width:100%; max-width:736px; margin:0; padding-top:0; min-width:0; }
.tg-page .tg-guide-toc { position:sticky; top:6rem; min-width:0; font:14px/1.65 var(--tg-font-ui); }
.tg-page .tg-guide-toc details { padding:16px; border:1px solid #dbeae8; border-radius:14px; background:#fff; }
.tg-page .tg-guide-toc summary { font-weight:700; color:#087d74; cursor:pointer; min-height:32px; }
.tg-page .tg-guide-toc nav { display:grid; gap:6px; max-height:65vh; overflow:auto; }
.tg-page .tg-guide-toc a { display:block; padding:7px 0; color:#435451; text-decoration:none; overflow-wrap:anywhere; }
.tg-page .tg-guide-toc a:hover { color:#087d74; text-decoration:underline; }
.tg-page .tg-guide-toc .tg-toc-level-3 { padding-left:14px; font-size:13px; }
.tg-page .tg-guide-detail .tg-guide-meta { border:0; background:transparent; padding:0; color:#6b7280; }
.tg-page .tg-guide-detail .tg-guide-body { line-height:1.9; }
.tg-page .tg-guide-detail .tg-guide-body :is(h2,h3) { scroll-margin-top:6rem; }
@media(max-width:1100px) {
  .tg-page .tg-guide-reading-flow { display:block; max-width:736px; }
  .tg-page .tg-guide-toc { position:static; margin-bottom:24px; }
}
@media(max-width:760px) {
  .tg-page .tg-attraction-identify { grid-template-columns:1fr; padding-top:42px; width:calc(100% - 32px); }
  .tg-page .tg-attraction-identify > .tg-attraction-cover { grid-column:1; grid-row:1; }
  .tg-page .tg-attraction-identify > .tg-reading { grid-column:1; grid-row:2; }
  .tg-page .tg-guide-reading-flow { display:block; width:calc(100% - 32px); }
  .tg-page .tg-guide-toc { position:static; margin-bottom:24px; }
  .tg-page .tg-content-detail.tg-guide-detail .tg-guide-header > .tg-reading,.tg-page .tg-guide-detail .tg-guide-cover { width:calc(100% - 32px); }
}
@media(max-width:520px) {
  .tg-page .tg-profile-detail > .tg-profile-cover { height:205px; }
  .tg-page .tg-profile-detail h1 { font-size:29px; }
  .tg-page .tg-profile-detail .tg-profile-actions,.tg-page .tg-profile-detail .tg-profile-section .tg-grid,.tg-page .tg-profile-detail .tg-profile-gallery { grid-template-columns:1fr; }
}

/* Translation page: a clear language row, focused writing area and stateful result. */
.tg-page.tg-is-translate .tg-translate-intro { margin-bottom:1rem; align-items:center; }
.tg-page.tg-is-translate .tg-translate-intro h1 { color:#163c35; letter-spacing:.02em; }
.tg-page.tg-is-translate .tg-translator { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.tg-page.tg-is-translate :is(.tg-translate-form,.tg-translation-result) { border:1px solid #d8e9e5; border-radius:20px; background:#fff; padding:1.25rem; box-shadow:0 8px 30px #0b5d5708; }
.tg-page.tg-is-translate .tg-translate-toolbar { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); padding-bottom:.75rem; border-bottom:1px solid #e4efeb; }
.tg-page.tg-is-translate .tg-translate-toolbar label { min-width:0; }
.tg-page.tg-is-translate .tg-translate-toolbar select { width:100%; background:#f4faf8; border-color:#d8e9e5; font:600 .9rem/1.5 var(--tg-font-ui); }
.tg-page.tg-is-translate .tg-swap-button { border:1px solid #d8e9e5; background:#fff; color:#087d74; font:600 .8rem/1.4 var(--tg-font-ui); }
.tg-page.tg-is-translate .tg-translate-toolbar p { min-width:0; text-align:center; padding:.5rem .4rem; border-radius:11px; background:#eaf9f7; color:#54716a; }
.tg-page.tg-is-translate .tg-translate-toolbar strong { color:#087d74; font-size:.95rem; }
.tg-page.tg-is-translate .tg-field > span { color:#294f46; font-size:.8rem; }
.tg-page.tg-is-translate .tg-translate-form textarea { border:1px solid #dce9e5; border-radius:13px; background:#fbfdfc; color:#1f2937; line-height:1.7; box-shadow:none; }
.tg-page.tg-is-translate .tg-translate-form textarea:focus { border-color:#087d74; outline:3px solid #087d741c; outline-offset:1px; background:#fff; }
.tg-page.tg-is-translate .tg-translate-meta { color:#72877e; }
.tg-page.tg-is-translate .tg-translate-submit-row > .tg-button { border-radius:12px; box-shadow:none; font:650 .95rem/1.5 var(--tg-font-ui); }
.tg-page.tg-is-translate .tg-result-heading { padding-bottom:.75rem; border-bottom:1px solid #e4efeb; }
.tg-page.tg-is-translate .tg-result-heading h2 { color:#244e43; font-size:1rem; }
.tg-page.tg-is-translate [data-translation-status] { padding:.3rem .5rem; border-radius:999px; color:#60766b; background:#f0f5f2; white-space:nowrap; }
.tg-page.tg-is-translate [data-translation-status][data-state="success"] { color:#087d74; background:#eaf9f7; }
.tg-page.tg-is-translate [data-translation-status][data-state="loading"] { color:#16617d; background:#edf7fc; }
.tg-page.tg-is-translate [data-translation-status][data-state="error"] { color:#a14538; background:#fff1ed; }
.tg-page.tg-is-translate .tg-result-text { border:1px solid #e4efeb; border-radius:13px; background:#f4fbf8; color:#135d52; line-height:1.75; }
.tg-page.tg-is-translate .tg-translation-result:has([data-state="idle"]) .tg-result-text { color:#82948c; background:#fbfdfc; border-style:dashed; font-size:1rem; }
.tg-page.tg-is-translate .tg-translation-actions button { border-radius:11px; box-shadow:none; font-family:var(--tg-font-ui); }
.tg-page.tg-is-translate .tg-translate-error { margin:.25rem 0 0; padding:.65rem .8rem; border:1px solid #f1d7cf; border-radius:11px; background:#fff5f1; font: .85rem/1.6 var(--tg-font-ui); }
.tg-page.tg-is-translate .tg-translation-fallback { padding:.75rem; background:#f6faf8; border-radius:12px; font: .8rem/1.6 var(--tg-font-ui); }
.tg-page.tg-is-translate .tg-translation-fallback .tg-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; }
.tg-page.tg-is-translate .tg-translation-fallback button { padding:.4rem; border-radius:10px; font-size:.75rem; }
@media(max-width:768px) {
  .tg-page.tg-is-translate .tg-translate-intro { margin-bottom:.5rem; }
  .tg-page.tg-is-translate .tg-translator { grid-template-columns:1fr; gap:.65rem; }
  .tg-page.tg-is-translate :is(.tg-translate-form,.tg-translation-result) { padding:.75rem; border-radius:16px; gap:.35rem; }
  .tg-page.tg-is-translate .tg-translate-toolbar,.tg-page.tg-is-translate .tg-result-heading { padding-bottom:.4rem; }
  .tg-page.tg-is-translate .tg-swap-button { padding-inline:.65rem; }
  .tg-page.tg-is-translate .tg-translation-result:has([data-state="idle"]) .tg-result-text { font-size:.9rem; }
}
