/* TG007 Build 0216 — snippets-family presentation refresh.
   Additive visual layer: business logic, permissions, CSRF, and routes unchanged. */
.tg-snippet-nav-shell{border-block:1px solid #d8e6ee;background:linear-gradient(180deg,#f7fbfd,#eaf3f8)}
.tg-snippet-quicknav{display:flex;align-items:center;gap:1.2rem;min-height:61px;padding-block:.55rem}
.tg-snippet-quicknav-title{flex:0 0 auto;font-weight:850;font-size:.68rem;letter-spacing:.085em;color:#53768f}
.tg-snippet-quicknav-links{display:flex;align-items:center;gap:.42rem;min-width:0;overflow-x:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.tg-snippet-quicknav-links a{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:.58rem .95rem;border-radius:.64rem;border:1px solid transparent;color:#34556d!important;font-size:.84rem;line-height:1.25;font-weight:800;text-decoration:none;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}
.tg-snippet-quicknav-links a:hover,.tg-snippet-quicknav-links a:focus-visible{border-color:#c4dce9;background:#fff;color:#164c73!important;outline-offset:2px}
.tg-snippet-quicknav-links a.is-current{border-color:#235e87;background:linear-gradient(130deg,#367fa9,#22597f);box-shadow:0 4px 12px rgba(34,87,126,.16);color:#fff!important}
/* Code-library index. Comfortable typography and coherent rhythm with /files. */
.tg-snippet-feature-section,.tg-snippet-category-section,.tg-snippet-highlight-section,.tg-snippet-archive-section{padding-block:clamp(2.1rem,3.4vw,3rem)}
.tg-snippet-feature-card{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);border-radius:1.06rem;border-color:#d9e5ed;box-shadow:0 12px 30px rgba(28,55,75,.06)}
.tg-snippet-feature-code{min-height:305px;padding:1.45rem 1.65rem}
.tg-snippet-feature-code-label{font-size:.77rem;margin-bottom:.7rem}
.tg-snippet-feature-code pre{max-height:225px;font-size:.85rem;line-height:1.65;overflow-wrap:anywhere}
.tg-snippet-feature-copy{padding:clamp(1.25rem,2.8vw,2.1rem)}
.tg-snippet-feature-copy h3{font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1.17;margin:.65rem 0}
.tg-snippet-feature-copy>p{font-size:.94rem;line-height:1.6}
.tg-snippet-feature-copy .tg-meta{font-size:.79rem}
.tg-snippet-feature-metrics{gap:.48rem;margin-top:1rem}
.tg-snippet-feature-metrics span{font-size:.77rem;padding:.64rem .7rem}
.tg-snippet-feature-metrics strong{font-size:1.1rem}
.tg-snippet-feature-byline{font-size:.83rem;margin-top:.85rem}
.tg-snippet-category-find{display:flex;align-items:center;flex-wrap:wrap;gap:.7rem;padding:1rem 1.1rem;margin-bottom:1rem;background:#fff;border:1px solid #d7e5ed;border-radius:.9rem}
.tg-snippet-category-find[hidden],.tg-snippet-category-no-results[hidden],.tg-snippet-category-card[hidden]{display:none!important}
.tg-snippet-category-find label{font-size:.87rem;font-weight:850;color:#25475e}
.tg-snippet-category-find input{flex:1 1 230px;max-width:440px;min-height:44px;padding:.65rem .85rem;border:1px solid #c7dbe8;border-radius:.65rem;background:#fff;color:#263b4b;font:inherit;font-size:.9rem}
.tg-snippet-category-find input:focus-visible{outline:3px solid rgba(54,126,169,.18);border-color:#4285b0}
.tg-snippet-category-find [data-tg-snippet-category-status]{margin-left:auto;font-size:.81rem;color:#597283;font-weight:700}
.tg-snippet-category-no-results{padding:1.25rem;border:1px dashed #bed0df;border-radius:.85rem;background:#fff;color:#3c6079}
.tg-snippet-category-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem}
.tg-snippet-category-card{min-height:165px;padding:1.05rem 1.12rem;border:1px solid #d8e4eb;border-radius:.95rem;box-shadow:0 5px 16px rgba(29,61,81,.04)}
.tg-snippet-code-tile-small{width:36px;height:36px;flex-basis:36px;border-radius:.62rem;font-size:.66rem}
.tg-snippet-category-count{font-size:.72rem;letter-spacing:0;text-transform:none;line-height:1.3}
.tg-snippet-category-card h3{font-size:1.08rem;line-height:1.25;margin:.85rem 0 .4rem}
.tg-snippet-category-card-footer{font-size:.79rem;margin-top:auto;padding-top:.8rem}
.tg-snippet-category-arrow{width:29px;height:29px;flex-basis:29px}
/* Highlighted/community cards — avoid tiny four-across type. */
.tg-snippet-highlight-section .tg-snippet-archive-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.tg-snippet-archive-grid{gap:1rem}
.tg-snippet-highlight-section .tg-snippet-archive-card,.tg-snippet-archive-card{padding:1.2rem 1.25rem;border-radius:1rem;border-color:#d9e3ec;box-shadow:0 7px 21px rgba(28,55,75,.05)}
.tg-snippet-highlight-section .tg-snippet-code-tile,.tg-snippet-code-tile{width:42px;height:42px;flex-basis:42px;border-radius:.68rem;font-size:.68rem}
.tg-snippet-archive-context a,.tg-snippet-archive-context>span{font-size:.77rem}
.tg-snippet-archive-context small{font-size:.76rem}
.tg-snippet-highlight-section .tg-snippet-archive-card h3,.tg-snippet-archive-card h3{font-size:1.18rem;line-height:1.3;margin:.8rem 0 .42rem}
.tg-snippet-highlight-section .tg-snippet-archive-card>p,.tg-snippet-archive-card>p{font-size:.88rem;line-height:1.58}
.tg-snippet-highlight-section .tg-snippet-archive-tags a:nth-child(n+3){display:inline-flex}
.tg-snippet-archive-tags a{font-size:.74rem;min-height:1.75rem;padding:.25rem .6rem}
.tg-snippet-highlight-section .tg-snippet-archive-author,.tg-snippet-highlight-section .tg-snippet-archive-stats,.tg-snippet-archive-author,.tg-snippet-archive-stats{font-size:.77rem}
.tg-snippet-highlight-section .tg-snippet-archive-author>a,.tg-snippet-highlight-section .tg-snippet-archive-author>img,.tg-snippet-archive-author>a,.tg-snippet-archive-author>img{width:29px;height:29px;flex-basis:29px}
.tg-snippet-highlight-section .tg-snippet-archive-stats>a,.tg-snippet-archive-stats>a{width:32px;height:32px}
.tg-snippet-sort label{font-size:.8rem}
.tg-snippet-sort select{font-size:.88rem;min-height:43px}
.tg-snippet-archive-heading .tg-section-heading p{font-size:.85rem}
/* Search and member list — same visual density as refreshed files. */
.tg-snippet-search-wrap,.tg-snippet-search-form{max-width:none}
.tg-snippet-search-form{padding:clamp(1rem,2.2vw,1.55rem);border:1px solid #d9e5ed;border-radius:1rem;background:linear-gradient(135deg,#f7fafc,#edf5fa)}
.tg-snippet-search-form>label{font-size:.88rem}
.tg-snippet-search-form input{min-height:47px;font-size:.96rem}
.tg-snippet-search-intro,.tg-snippet-search-categories,.tg-snippet-category-panel{border:1px solid #dbe6ec;border-radius:1rem;box-shadow:0 7px 20px rgba(35,60,81,.04)}
.tg-snippet-search-intro h2,.tg-snippet-search-categories h2{font-size:1.37rem}
.tg-snippet-search-intro p{font-size:.94rem;line-height:1.66}
.tg-snippet-category-grid a{min-height:60px;padding:.9rem 1rem;border-radius:.72rem;font-size:.88rem}
.tg-snippet-category-grid strong{font-size:.86rem}
.tg-snippet-row{border-color:#dbe6ed;border-radius:.95rem;box-shadow:0 7px 19px rgba(30,55,74,.04)}
.tg-snippet-row h2{font-size:1.22rem;line-height:1.3}
.tg-snippet-row p{font-size:.89rem;line-height:1.55}
.tg-snippet-row-meta,.tg-snippet-row-topline{font-size:.79rem}
.tg-my-snippet-card{border-radius:.95rem;padding:1.3rem 1.4rem;gap:1.3rem;box-shadow:0 7px 19px rgba(30,55,74,.04)}
.tg-my-snippet-card h3{font-size:1.26rem;line-height:1.3}
.tg-my-snippet-card-kickers,.tg-my-snippet-meta{font-size:.82rem}
.tg-my-snippet-summary{font-size:.92rem;line-height:1.63}
.tg-my-snippet-card-actions{min-width:116px}
.tg-my-snippet-action{min-height:40px;border-radius:.55rem;font-size:.83rem}
/* Detail view: code is the product; make it readable without changing tooling. */
.tg-snippet-detail-section,.tg-snippet-community-section{padding-block:clamp(2rem,3vw,3.1rem)}
.tg-snippet-detail-grid{grid-template-columns:minmax(0,1.52fr) minmax(265px,.7fr);gap:1.3rem}
.tg-snippet-overview-card,.tg-snippet-code-card,.tg-snippet-info-card,.tg-snippet-response-card,.tg-snippet-manage-card,.tg-snippet-comment-form,.tg-snippet-comment{border-radius:1rem;border-color:#dbe5eb;box-shadow:0 8px 22px rgba(26,52,71,.045)}
.tg-snippet-overview-card,.tg-snippet-info-card,.tg-snippet-response-card{padding:clamp(1.25rem,2.2vw,1.65rem)}
.tg-snippet-description-content{font-size:.98rem;line-height:1.72}
.tg-snippet-code-toolbar h2{font-size:1.25rem}
.tg-snippet-code-toolbar small,.tg-snippet-info-card dt{font-size:.78rem}
.tg-snippet-code-actions .tg-btn{min-height:39px;font-size:.84rem}
.tg-snippet-code-scroll code{font-size:.86rem;line-height:1.65}
.tg-snippet-info-card dd{font-size:.89rem;overflow-wrap:anywhere}
.tg-snippet-comment-body{font-size:.96rem;line-height:1.66}
.tg-snippet-comment-form textarea{min-height:125px;font-size:.94rem}
.tg-snippet-response-stats strong{font-size:1.9rem}
/* Submission and edit pages: more comfortable form controls, no action changes. */
.tg-snippet-editor-layout{gap:1.25rem}
.tg-snippet-editor-main,.tg-snippet-editor-aside>section,.tg-file-submit-block,.tg-snippet-publish-panel,.tg-snippet-rules-panel{border-radius:1rem}
.tg-snippet-editor-section,.tg-snippet-submit-section{padding-block:clamp(2rem,3vw,3.1rem)}
.tg-snippet-form label,.tg-snippet-submit-form .tg-file-field label{font-size:.91rem}
.tg-snippet-form input,.tg-snippet-form select,.tg-snippet-form textarea,.tg-snippet-submit-form .tg-file-field>input[type=text],.tg-snippet-submit-form .tg-file-field>select,.tg-snippet-submit-form .tg-file-field>textarea{font-size:.94rem;min-height:44px}
.tg-snippet-form textarea,.tg-snippet-submit-form .tg-snippet-code-input{line-height:1.6}
.tg-file-submit-block .tg-snippet-submit-code-field .tg-snippet-code-input{font-size:.9rem;line-height:1.6}
.tg-file-submit-block-head h2,.tg-snippet-editor-section .tg-section-heading h2{font-size:1.3rem}
.tg-snippet-editor-aside li,.tg-snippet-publish-panel p,.tg-snippet-rules-panel li{font-size:.88rem;line-height:1.58}
/* Responsive layouts and reduced-motion accessibility. */
@media(max-width:1100px){.tg-snippet-quicknav-title{display:none}.tg-snippet-category-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tg-snippet-feature-card{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.tg-snippet-quicknav{padding-block:.6rem}.tg-snippet-category-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tg-snippet-feature-card{grid-template-columns:1fr}.tg-snippet-feature-code{min-height:260px}.tg-snippet-highlight-section .tg-snippet-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tg-snippet-detail-grid{grid-template-columns:1fr}}
@media(max-width:580px){.tg-snippet-quicknav{padding-inline:.65rem}.tg-snippet-quicknav-links{gap:.25rem}.tg-snippet-quicknav-links a{font-size:.78rem;min-height:38px;padding:.45rem .7rem}.tg-snippet-category-find{flex-direction:column;align-items:stretch}.tg-snippet-category-find input{max-width:none;flex:0 0 auto;width:100%}.tg-snippet-category-find [data-tg-snippet-category-status]{margin-left:0}.tg-snippet-category-card-grid,.tg-snippet-highlight-section .tg-snippet-archive-grid,.tg-snippet-archive-grid{grid-template-columns:1fr}.tg-snippet-category-card{min-height:145px}.tg-snippet-feature-copy{padding:1.2rem}.tg-snippet-feature-copy h3{font-size:1.45rem}.tg-snippet-feature-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.tg-snippet-archive-heading{grid-template-columns:1fr}.tg-snippet-sort{grid-template-columns:auto minmax(0,1fr) auto}.tg-snippet-archive-card-footer{flex-wrap:wrap}.tg-snippet-search-form>div{grid-template-columns:1fr}.tg-my-snippet-card{grid-template-columns:1fr;padding:1.1rem}.tg-my-snippet-card-actions{border-left:0;border-top:1px solid #e2eaf0;padding:1rem 0 0;flex-direction:row;flex-wrap:wrap;justify-content:flex-start}.tg-snippet-code-toolbar{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.tg-snippet-quicknav-links a,.tg-snippet-category-card,.tg-snippet-archive-card{transition:none}}
