/* Shared finishing layer: public pages, without changing game/profile artwork. */
body.tl-site {
    --tl-ui-radius: 12px;
    --tl-ui-line: rgba(164, 237, 209, .20);
    --tl-ui-muted: #aec3b8;
    --tl-ui-focus: #93e5b5;
}
body.tl-site .tl-site-main { min-width: 0; }
body.tl-site :is(.tc-inner-page,.tc-support-page,.tl-shop-wrap,.tl-politics,.tl-public-page,.tl-online,.tl-download__container) { min-width: 0; }
body.tl-site :is(.tc-inner-page,.tc-support-page,.tl-shop-wrap,.tl-politics,.tl-online) :is(h1,h2,h3,p,dd) { overflow-wrap: anywhere; }
body.tl-site :is(.tc-inner-hero,.tc-support-heading,.tl-shop-hero,.tl-politics-hero,.tl-download__hero,.tl-screens-hero) h1 {
    font-size: clamp(28px, 3.1vw, 44px);
    line-height: 1.15;
    letter-spacing: -.025em;
    text-wrap: balance;
}
body.tl-site :is(.tc-inner-hero,.tc-support-heading,.tl-shop-hero,.tl-politics-hero,.tl-download__hero,.tl-screens-hero) p {
    max-width: 68ch;
    line-height: 1.65;
}
body.tl-site .tc-inner-page > .py-24 { padding-block: 36px; }
body.tl-site .tc-inner-page .tc-inner-hero { margin-bottom: 24px; }
body.tl-site :is(.tc-panel,.tc-news-card,.tl-politics-panel,.tl-politics-card,.tl-download__card,.tl-shop-order) { border-radius: var(--tl-ui-radius); }
body.tl-site :is(.tc-inner-page,.tl-shop,.tc-support-page,.tl-politics,.tl-online) .grid > * { min-width: 0; }
body.tl-site :is(.tc-chip,.tl-shop-count,.tl-politics-status,.tl-download__tag) { width: fit-content; max-width: 100%; align-self: flex-start; }
body.tl-site :is(.tc-button,.tl-button,.tl-btn,.tl-shop-primary,.tl-download__button) { min-height: 42px; gap: 8px; border-radius: 9px; }
body.tl-site :is(a,button,input,select,textarea,summary):focus-visible { outline: 2px solid var(--tl-ui-focus); outline-offset: 3px; }
body.tl-site button:disabled { cursor: not-allowed; }
body.tl-site :is(.tc-inner-page,.tl-shop,.tc-support-page,.tl-politics) :is(input,select,textarea) { max-width: 100%; }
body.tl-site :is(.tc-inner-page,.tl-shop,.tc-support-page) input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]):not([type=range]):not([type=color]) { min-height: 42px; }
body.tl-site :is(.tc-inner-page,.tl-shop,.tc-support-page) select { min-height: 42px; }
body.tl-site :is(.tc-inner-page,.tl-shop) textarea { resize: vertical; line-height: 1.6; }
body.tl-site :is(.tl-politics-table-wrap,.tc-inner-page .overflow-x-auto) { max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; }
body.tl-site :is(.tl-politics-tabs,.tc-profile-tabs,.tl-shop-filters,.tl-online-server-switch) { flex-wrap: wrap; gap: 8px; }
body.tl-site .tl-politics-command-strip code { white-space: normal; overflow-wrap: anywhere; }
body.tl-site .tl-politics-card h3 { font-size: 19px; line-height: 1.35; }
body.tl-site .tl-politics-card dl { gap: 9px; }
body.tl-site .tl-politics-card dd { text-align: right; }
body.tl-site .tc-section-posts-index article { min-width: 0; }
body.tl-site .tc-section-posts-index article > .h-56 { height: 176px; }
body.tl-site .tc-section-posts-index article > .p-6 { padding: 20px; }
body.tl-site .tc-section-posts-index article h2 {
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;
    overflow: hidden; max-height: 2.7em; line-height: 1.35; font-size: 21px;
}
body.tl-site .tc-section-posts-index article .line-clamp-3 {
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3;
    overflow: hidden; line-height: 1.6; max-height: 4.8em;
}
body.tl-site :is(.tc-section-posts-show,.tc-section-pages-show,.tc-section-modpack-index) :is(.prose,.markdown-content) { max-width: 78ch; }
body.tl-site :is(.prose,.markdown-content) :is(img,video,iframe) { max-width: 100%; }
body.tl-site :is(.prose,.markdown-content) pre { overflow-x: auto; white-space: pre; }
body.tl-site .tl-description-details { margin-top: 10px; border-top: 1px solid var(--tl-ui-line); padding-top: 8px; }
body.tl-site .tl-description-details summary { cursor: pointer; color: #b4edcc; font-size: 13px; font-weight: 600; }
body.tl-site .tl-description-details[open] summary { margin-bottom: 10px; }
body.tl-site .tl-description-details p { line-height: 1.65; }
body.tl-site :is(.tc-section-skin-workshop-index,.tc-section-skin-workshop-editor) canvas { max-width: 100%; }
body.tl-site .tc-section-skin-workshop-editor .overflow-x-auto { overflow-x: auto; }
@media (max-width: 767px) {
    body.tl-site .tc-inner-page > .py-24 { padding-block: 24px; }
    body.tl-site :is(.tc-inner-hero,.tc-support-heading,.tl-shop-hero,.tl-politics-hero,.tl-download__hero,.tl-screens-hero) h1 { font-size: 29px; }
    body.tl-site .tc-section-posts-index article > .h-56 { height: 150px; }
    body.tl-site .tc-section-posts-index article > .p-6 { padding: 16px; }
    body.tl-site :is(.tc-button,.tl-button,.tl-btn,.tl-shop-primary,.tl-download__button) { min-height: 44px; }
    body.tl-site .tl-shop-top-actions { flex-wrap: wrap; }
    body.tl-site .tl-politics-command-strip { gap: 8px; }
    body.tl-site .tl-politics-card dl > div { gap: 12px; }
}
@media (prefers-reduced-motion: reduce) {
    body.tl-site :is(.tc-button,.tl-button,.tl-btn,.tc-news-card img,.tl-shop-primary) { transition: none; transform: none; }
}
