/* TG007 Build 0215 – File Database visual refresh.
   Section-only overrides: no global site header, forum, or admin changes. */
.tg-file-nav-shell{border-top:1px solid #d5e1e9;border-bottom:1px solid #d5e1e9;background:linear-gradient(105deg,#f0f6fa,#e9f1f6)}
.tg-file-quicknav{display:flex;align-items:center;gap:clamp(.8rem,2vw,1.8rem);min-height:65px;padding-block:.65rem}
.tg-file-quicknav-title{flex:0 0 auto;color:#427295;font-size:.68rem;font-weight:850;letter-spacing:.12em;white-space:nowrap}
.tg-file-quicknav-links{display:flex;align-items:center;gap:.45rem;min-width:0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#b9cbd8 transparent;padding:.12rem .12rem .28rem}
.tg-file-quicknav-links a{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:39px;padding:.56rem .9rem;border:1px solid transparent;border-radius:.67rem;color:#334e62!important;text-decoration:none;font-weight:750;font-size:.85rem;line-height:1.2;white-space:nowrap;transition:background .15s,border-color .15s,box-shadow .15s}
.tg-file-quicknav-links a:hover,.tg-file-quicknav-links a:focus-visible{background:#fff;border-color:#bed1dc}
.tg-file-quicknav-links a.is-current{color:#fff!important;background:#285f87;border-color:#285f87;box-shadow:0 4px 12px rgba(31,86,127,.2)}
.tg-modern-hero--files .tg-modern-hero-eyebrow{letter-spacing:.115em}
.tg-modern-hero--files .tg-modern-hero-primary>p{font-size:clamp(.95rem,1.15vw,1.06rem);max-width:70ch;line-height:1.55}
.tg-file-hero-search{max-width:720px}
.tg-file-hero-search input,.tg-file-hero-search button{min-height:48px;font-size:.92rem}
.tg-file-feature-section,.tg-file-category-section,.tg-file-highlight-section,.tg-file-fresh-section{padding-block:clamp(2.2rem,3.4vw,3rem)}
.tg-file-feature-section .tg-section-heading,.tg-file-category-section .tg-section-heading,.tg-file-highlight-section .tg-section-heading,.tg-file-fresh-section .tg-section-heading{margin-bottom:1.05rem}
.tg-file-feature-section .tg-section-heading h2,.tg-file-category-section .tg-section-heading h2,.tg-file-highlight-section .tg-section-heading h2,.tg-file-fresh-section .tg-section-heading h2{font-size:clamp(1.55rem,2.1vw,2rem)}
.tg-file-feature-section .tg-kicker,.tg-file-category-section .tg-kicker,.tg-file-highlight-section .tg-kicker,.tg-file-fresh-section .tg-kicker{font-size:.7rem}
.tg-file-feature-section .tg-text-link,.tg-file-highlight-section .tg-text-link,.tg-file-category-section .tg-section-heading>p,.tg-file-fresh-section .tg-section-heading>p{font-size:.86rem;line-height:1.55}
/* Featured: balanced image + information and clearly legible stats. */
.tg-file-feature-card{grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);min-height:322px;border-radius:1.05rem;box-shadow:0 13px 32px rgba(16,43,63,.09)}
.tg-file-feature-image{min-height:322px;padding:1.35rem;background:radial-gradient(circle at 50% 40%,#405a6a 0%,#233542 65%,#172631 100%)}
.tg-file-feature-image img{width:auto;max-width:100%;max-height:280px;object-fit:contain;box-shadow:0 12px 25px rgba(0,0,0,.24)}
.tg-file-feature-copy{padding:clamp(1.3rem,2.5vw,2.15rem)}
.tg-file-feature-copy h3{font-size:clamp(1.65rem,2.45vw,2.2rem);line-height:1.16;margin:.64rem 0}
.tg-file-feature-tagline{font-size:1rem!important}
.tg-file-feature-copy>p:not(.tg-file-feature-tagline){font-size:.87rem!important;line-height:1.6;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}
.tg-file-feature-copy .tg-meta{font-size:.75rem}
.tg-file-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-top:1.1rem}
.tg-file-metrics span{padding:.62rem .75rem;font-size:.75rem}
.tg-file-metrics strong{font-size:1.05rem}
.tg-file-byline{margin-top:.9rem;font-size:.79rem}
/* Category directory: no tiny five-column typography. */
.tg-file-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}
.tg-file-category-card{min-height:183px;padding:1.1rem 1.15rem;border-radius:.95rem;border-color:#d6e0e7;box-shadow:0 5px 17px rgba(26,51,66,.038)}
.tg-file-category-card h3{font-size:1.04rem;margin:.86rem 0 .36rem;line-height:1.27}
.tg-file-category-card p{font-size:.83rem;line-height:1.53;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.tg-file-category-card-top{gap:.55rem}
.tg-file-category-count{font-size:.69rem;letter-spacing:0;text-transform:none;padding:.27rem .48rem;border:1px solid #d4e4ec;background:#f0f7fb;color:#32617f;border-radius:999px}
.tg-file-folder{width:36px;height:26px;flex-basis:36px}
.tg-file-folder::before{top:-6px;width:15px;height:7px}
.tg-file-folder::after{right:8px;left:8px;bottom:7px}
.tg-file-category-footer{font-size:.77rem;margin-top:auto;padding-top:.9rem}
.tg-file-category-arrow{width:28px;height:28px}
.tg-file-category-find{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;margin:0 0 1rem;padding:1rem 1.1rem;background:#fff;border:1px solid #dbe5eb;border-radius:.9rem}
.tg-file-category-find[hidden],.tg-file-category-no-matches[hidden],.tg-file-category-card[hidden]{display:none!important}
.tg-file-category-find label{font-size:.85rem;font-weight:800;color:#243e51}
.tg-file-category-find input{flex:1 1 260px;max-width:420px;min-height:42px;padding:.62rem .85rem;border:1px solid #cbdce7;border-radius:.65rem;background:#fff;color:#22333d;font-size:.87rem}
.tg-file-category-find input:focus{outline:3px solid #b9dcec;border-color:#3d7ead}
.tg-file-category-find [data-tg-category-status]{margin-left:auto;font-size:.78rem;font-weight:700;color:#5b7181}
.tg-file-category-no-matches{padding:1.3rem;border:1px dashed #b8cbd7;border-radius:.85rem;background:#fff;color:#36546a}
/* Modern, readable highlighted cards and discovery rows. */
.tg-file-card-grid,.tg-file-highlight-section .tg-file-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.tg-file-card{border-radius:1rem}
.tg-file-card-thumb,.tg-file-highlight-section .tg-file-card-thumb{height:184px;padding:1rem}
.tg-file-card-thumb img,.tg-file-highlight-section .tg-file-card-thumb img{max-height:158px}
.tg-file-card-body,.tg-file-highlight-section .tg-file-card-body{padding:1.1rem 1.2rem 1.05rem}
.tg-file-card h3,.tg-file-highlight-section .tg-file-card h3{font-size:1.12rem;line-height:1.3}
.tg-file-card-body>p,.tg-file-highlight-section .tg-file-card-body>p{font-size:.86rem;line-height:1.55}
.tg-file-card-footer,.tg-file-highlight-section .tg-file-card-footer{font-size:.77rem;gap:.65rem}
.tg-file-list-row{min-height:74px}
.tg-file-list-main strong{font-size:.92rem;line-height:1.32}
.tg-file-list-main small{font-size:.76rem}
.tg-file-list-stat{font-size:.9rem}
.tg-file-list-stat small{font-size:.69rem}
.tg-file-list-panel-head h3{font-size:1.1rem}
.tg-file-list-panel-head a{font-size:.76rem}
/* Results pages — visual previews remain fixed-size, regardless of description length. */
.tg-file-browser-section,.tg-file-search-section,.tg-file-detail-section,.tg-file-download-section,.tg-file-community-section{padding-block:clamp(2rem,3vw,3.2rem)}
.tg-file-browser-toolbar{padding:1rem 1.15rem;margin-bottom:1.6rem;border-radius:.85rem;background:linear-gradient(135deg,#f4f8fb,#eaf2f7);border:1px solid #d7e4ec}
.tg-file-sort>a,.tg-file-sort>span,.tg-file-browser-actions a{font-size:.87rem}
.tg-file-sort a{min-height:37px;padding:.48rem .8rem;border-radius:.58rem}
.tg-file-subcategory{min-height:73px;border-radius:.85rem}
.tg-file-subcategory strong{font-size:.93rem}
.tg-file-subcategory small{font-size:.75rem}
.tg-file-results-heading{margin-top:1.35rem}
.tg-file-result-list{display:grid;gap:.85rem}
.tg-file-result-card{grid-template-columns:200px minmax(0,1fr);border:1px solid #dbe4ea;border-radius:1rem;box-shadow:0 7px 21px rgba(31,60,79,.045);overflow:hidden}
.tg-file-result-thumb{min-height:180px;padding:1rem;background:#eaf1f5}
.tg-file-result-thumb img{max-width:100%;max-height:150px;width:auto;height:auto;object-fit:contain}
.tg-file-result-body{padding:1.2rem 1.35rem}
.tg-file-result-body .tg-meta{font-size:.76rem}
.tg-file-result-body h3{font-size:1.3rem;line-height:1.26;margin:.42rem 0}
.tg-file-result-by{font-size:.84rem;color:#607586}
.tg-file-result-body>p{font-size:.89rem;line-height:1.62;color:#516777}
.tg-file-result-footer{font-size:.78rem;margin-top:1rem;padding-top:.8rem;gap:.6rem 1rem}
.tg-file-result-footer a{padding:.4rem .75rem;border-radius:.5rem;border:1px solid #bad0df;background:#f0f7fb;white-space:nowrap}
.tg-file-result-footer a:hover{background:#dcebf5}
.tg-file-search-console{border-radius:1rem}
.tg-file-search-console input,.tg-file-search-console select{min-height:44px;font-size:.89rem}
.tg-file-search-console label{font-size:.83rem}
.tg-file-search-results-heading h2{font-size:clamp(1.35rem,2vw,1.9rem)}
.tg-file-search-summary{font-size:.83rem}
/* Detail page: substantial overview, clear information hierarchy. */
.tg-file-detail-grid{grid-template-columns:minmax(0,1.58fr) minmax(290px,.7fr);gap:1.25rem}
.tg-file-overview-card,.tg-file-info-card,.tg-file-rating-card{border:1px solid #dce6ed;border-radius:1rem;box-shadow:0 8px 24px rgba(35,62,79,.044);background:#fff}
.tg-file-overview-card{padding:clamp(1.3rem,2.6vw,2.1rem)}
.tg-file-description-content{font-size:1rem;line-height:1.75;color:#344c5b}
.tg-file-detail-meta{font-size:.88rem}
.tg-file-detail-sidebar .tg-file-info-card,.tg-file-detail-sidebar .tg-file-rating-card{padding:1.3rem}
.tg-file-info-card dt{font-size:.73rem;color:#5a7182}
.tg-file-info-card dd{font-size:.88rem;color:#233747;overflow-wrap:anywhere}
.tg-file-rating-score strong{font-size:2.4rem}
.tg-file-comment{border-radius:.9rem}
.tg-file-comment-text{font-size:.93rem;line-height:1.62}
.tg-file-comment-form textarea{font-size:.93rem;min-height:120px}
.tg-file-other-links a{font-size:.81rem}
/* Download and submission forms: comfortable touch targets; keep all upload plumbing untouched. */
.tg-file-download-card{border-radius:1.1rem;padding:clamp(1.4rem,3vw,2.5rem)}
.tg-file-download-card h2{font-size:clamp(1.35rem,2.2vw,1.9rem)}
.tg-file-download-card p{font-size:.96rem;line-height:1.64}
.tg-file-download-now{min-height:46px}
.tg-file-submit-section .tg-file-submit-block,.tg-file-submit-section .tg-file-tool-panel,.tg-file-queue-card{border-radius:1rem}
.tg-file-submit-section .tg-file-submit-block-head h2,.tg-file-submit-section .tg-file-submit-side-head h2{font-size:1.25rem}
.tg-file-submit-section .tg-file-field label,.tg-file-submit-section .tg-file-source-choice,.tg-file-submit-section .tg-file-picker-name{font-size:.89rem}
.tg-file-submit-section input:not([type="file"]):not([type="checkbox"]):not([type="radio"]),.tg-file-submit-section select,.tg-file-submit-section textarea{font-size:.94rem;min-height:44px}
.tg-file-submit-section textarea{min-height:125px}
.tg-file-queue-card h3{font-size:1.15rem}
.tg-file-queue-summary,.tg-file-queue-meta{font-size:.86rem}
@media (max-width:1080px){
 .tg-file-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .tg-file-feature-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .tg-file-quicknav-title{display:none}
}
@media (max-width:800px){
 .tg-file-quicknav{padding-block:.55rem}
 .tg-file-feature-card{grid-template-columns:1fr}
 .tg-file-feature-image{min-height:260px}
 .tg-file-feature-image img{max-height:220px}
 .tg-file-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tg-file-card-grid,.tg-file-highlight-section .tg-file-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tg-file-result-card{grid-template-columns:160px minmax(0,1fr)}
 .tg-file-result-thumb{min-height:150px}
 .tg-file-result-thumb img{max-height:132px}
 .tg-file-result-body{padding:1rem}
 .tg-file-result-body h3{font-size:1.14rem}
 .tg-file-detail-grid{grid-template-columns:1fr}
}
@media (max-width:560px){
 .tg-file-quicknav{margin-inline:0;padding-inline:.75rem}
 .tg-file-quicknav-links{gap:.35rem}
 .tg-file-quicknav-links a{font-size:.8rem;min-height:38px;padding:.48rem .7rem}
 .tg-file-category-find{align-items:stretch;flex-direction:column}
 .tg-file-category-find input{flex:0 0 auto;width:100%;max-width:none}
 .tg-file-category-find [data-tg-category-status]{margin-left:0}
 .tg-file-category-grid,.tg-file-card-grid,.tg-file-highlight-section .tg-file-card-grid{grid-template-columns:1fr}
 .tg-file-category-card{min-height:145px}
 .tg-file-category-card h3{margin:.52rem 0 .22rem}
 .tg-file-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tg-file-feature-copy{padding:1.2rem}
 .tg-file-feature-copy h3{font-size:1.5rem}
 .tg-file-browser-toolbar{padding:.9rem}
 .tg-file-sort{flex-wrap:wrap}
 .tg-file-result-card{grid-template-columns:1fr}
 .tg-file-result-thumb{min-height:175px;max-height:175px;border-right:0;border-bottom:1px solid #e3eaf0}
 .tg-file-result-thumb img{max-height:147px}
 .tg-file-result-footer a{margin-left:0}
 .tg-file-search-console{padding:1rem}
}
@media (prefers-reduced-motion:reduce){.tg-file-quicknav-links a,.tg-file-category-card{transition:none}}
