/* =====================================================================
   tt-theme.css — chrome, layout, thành phần, widget, nội dung Gutenberg
   Tiền tố class: tt-   |  Mobile-first  |  Không phụ thuộc JS cho layout
   ===================================================================== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--tt-bg);color:var(--tt-text);font-family:var(--tt-font);font-size:var(--tt-fs-md);line-height:var(--tt-lh-base);-webkit-font-smoothing:antialiased}
a{color:var(--tt-link);text-decoration:underline;text-decoration-color:var(--tt-border-strong);text-underline-offset:2px}
a:hover{color:var(--tt-link-hover);text-decoration-color:currentColor}
:focus-visible{outline:2px solid var(--tt-focus);outline-offset:2px}
button,input,select{font:inherit;color:inherit}
svg.tt-i{width:1.125em;height:1.125em;flex:none;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tt-num{font-variant-numeric:tabular-nums}
.tt-container{max-width:var(--tt-container);margin:0 auto;padding-left:var(--tt-gutter);padding-right:var(--tt-gutter)}
.tt-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- Header ---------- */
.tt-header{background:var(--tt-surface);border-bottom:1px solid var(--tt-border);position:sticky;top:0;z-index:20}
.tt-header__in{display:flex;align-items:center;gap:var(--tt-sp-3);min-height:60px}
.tt-logo{font-weight:var(--tt-fw-black);font-size:var(--tt-fs-lg);letter-spacing:-.01em;color:var(--tt-primary);text-decoration:none;display:flex;align-items:center;gap:var(--tt-sp-2)}
.tt-logo .tt-logo__mark{width:28px;height:28px;border-radius:var(--tt-radius-sm);background:var(--tt-primary);color:#fff;display:grid;place-items:center;font-size:var(--tt-fs-sm);font-weight:var(--tt-fw-black)}
.tt-logo em{font-style:normal;color:var(--tt-accent)}
.tt-nav{display:none;gap:var(--tt-sp-1);margin-left:var(--tt-sp-4)}
.tt-nav a{text-decoration:none;color:var(--tt-text-2);font-size:var(--tt-fs-sm);font-weight:var(--tt-fw-medium);padding:0 var(--tt-sp-3);min-height:var(--tt-control-h);display:inline-flex;align-items:center;border-radius:var(--tt-radius-md)}
.tt-nav a:hover{background:var(--tt-surface-2);color:var(--tt-text)}
.tt-nav a[aria-current="page"]{color:var(--tt-primary);background:var(--tt-primary-soft)}
.tt-header__spacer{flex:1}
.tt-search{display:none;align-items:center;gap:var(--tt-sp-2);background:var(--tt-surface-2);border:1px solid var(--tt-border);border-radius:var(--tt-radius-full);padding:0 var(--tt-sp-4);min-height:var(--tt-control-h);color:var(--tt-text-3);min-width:220px}
.tt-search input{border:0;background:transparent;outline:0;flex:1;min-width:0;font-size:var(--tt-fs-sm);color:var(--tt-text)}
.tt-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:var(--tt-control-h);height:var(--tt-control-h);border-radius:var(--tt-radius-md);border:1px solid var(--tt-border);background:var(--tt-surface);color:var(--tt-text-2);cursor:pointer}
.tt-menu{position:relative}
.tt-menu summary{list-style:none;cursor:pointer}
.tt-menu summary::-webkit-details-marker{display:none}
.tt-menu__panel{position:absolute;right:0;top:calc(100% + 8px);background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:var(--tt-radius-lg);box-shadow:var(--tt-shadow-md);padding:var(--tt-sp-2);min-width:240px;display:grid}
.tt-menu__panel a{text-decoration:none;color:var(--tt-text);padding:var(--tt-sp-3) var(--tt-sp-4);border-radius:var(--tt-radius-md);min-height:var(--tt-control-h);display:flex;align-items:center;font-weight:var(--tt-fw-medium)}
.tt-menu__panel a:hover{background:var(--tt-surface-2)}
@media (min-width:768px){.tt-search{display:flex}.tt-iconbtn--search{display:none}}
@media (min-width:1200px){.tt-nav{display:flex}.tt-menu{display:none}}

/* ---------- Breadcrumb, badge, meta ---------- */
.tt-crumbs{display:flex;flex-wrap:wrap;gap:var(--tt-sp-1) var(--tt-sp-2);font-size:var(--tt-fs-xs);color:var(--tt-text-3);padding:var(--tt-sp-4) 0 0;margin:0;list-style:none}
.tt-crumbs a{color:var(--tt-text-3);text-decoration:none}
.tt-crumbs a:hover{color:var(--tt-primary);text-decoration:underline}
.tt-crumbs li+li::before{content:"/";margin-right:var(--tt-sp-2);color:var(--tt-border-strong)}
.tt-badge{display:inline-flex;align-items:center;gap:var(--tt-sp-1);font-size:var(--tt-fs-xs);font-weight:var(--tt-fw-bold);padding:2px var(--tt-sp-2);border-radius:var(--tt-radius-sm);background:var(--tt-accent-soft);color:var(--tt-accent);white-space:nowrap}
.tt-badge--primary{background:var(--tt-primary-soft);color:var(--tt-primary)}
.tt-badge--success{background:var(--tt-success-soft);color:var(--tt-success)}
.tt-meta{display:flex;flex-wrap:wrap;gap:var(--tt-sp-2) var(--tt-sp-4);font-size:var(--tt-fs-sm);color:var(--tt-text-3);align-items:center}
.tt-meta a{color:inherit}

/* ---------- Trang tool: heading + bố cục 2 cột ---------- */
.tt-page-head{padding:var(--tt-sp-4) 0 var(--tt-sp-5)}
.tt-page-head h1{font-size:var(--tt-fs-xl);line-height:var(--tt-lh-tight);font-weight:var(--tt-fw-black);letter-spacing:-.015em;margin:var(--tt-sp-3) 0 var(--tt-sp-3);text-wrap:pretty}
.tt-page-head .tt-lead{font-size:var(--tt-fs-md);color:var(--tt-text-2);margin:0 0 var(--tt-sp-3);max-width:70ch;text-wrap:pretty}
@media (min-width:768px){.tt-page-head h1{font-size:var(--tt-fs-2xl)}.tt-page-head .tt-lead{font-size:var(--tt-fs-lg);line-height:var(--tt-lh-snug)}}
.tt-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--tt-sp-6);padding-bottom:var(--tt-sp-8)}
.tt-sidebar{display:none}
@media (min-width:1200px){.tt-layout{grid-template-columns:minmax(0,1fr) var(--tt-sidebar)}.tt-sidebar{display:block}.tt-toc-mobile{display:none}}
.tt-sidebar__sticky{position:sticky;top:76px;display:grid;gap:var(--tt-sp-5)}

/* ---------- Mục lục ---------- */
.tt-toc{background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:var(--tt-radius-lg);padding:var(--tt-sp-4)}
.tt-toc h2,.tt-toc__title{font-size:var(--tt-fs-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--tt-text-3);margin:0 0 var(--tt-sp-3);font-weight:var(--tt-fw-bold)}
.tt-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.tt-toc a{display:block;text-decoration:none;color:var(--tt-text-2);font-size:var(--tt-fs-sm);padding:var(--tt-sp-2) var(--tt-sp-3);border-left:2px solid transparent;border-radius:0 var(--tt-radius-sm) var(--tt-radius-sm) 0}
.tt-toc a:hover{color:var(--tt-primary);background:var(--tt-surface-2)}
.tt-toc a[aria-current]{color:var(--tt-primary);border-left-color:var(--tt-primary);font-weight:var(--tt-fw-semibold)}
.tt-toc-mobile{border:1px solid var(--tt-border);border-radius:var(--tt-radius-lg);background:var(--tt-surface);margin:var(--tt-sp-5) 0 0}
.tt-toc-mobile summary{list-style:none;display:flex;align-items:center;gap:var(--tt-sp-2);padding:var(--tt-sp-3) var(--tt-sp-4);min-height:var(--tt-control-h);font-weight:var(--tt-fw-semibold);cursor:pointer}
.tt-toc-mobile summary::-webkit-details-marker{display:none}
.tt-toc-mobile summary .tt-i{margin-left:auto;transition:transform .15s}
.tt-toc-mobile[open] summary .tt-i{transform:rotate(180deg)}
.tt-toc-mobile ol{margin:0;padding:0 var(--tt-sp-4) var(--tt-sp-3) var(--tt-sp-6);display:grid;gap:var(--tt-sp-1);font-size:var(--tt-fs-sm)}
.tt-toc-mobile a{display:block;padding:var(--tt-sp-2) 0;text-decoration:none;color:var(--tt-text-2)}

/* ---------- Nút ---------- */
.tt-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--tt-sp-2);min-height:var(--tt-control-h);padding:0 var(--tt-sp-5);border-radius:var(--tt-radius-md);border:1px solid transparent;font-weight:var(--tt-fw-semibold);font-size:var(--tt-fs-md);text-decoration:none;cursor:pointer;transition:background .12s,border-color .12s}
.tt-btn--primary{background:var(--tt-primary);color:var(--tt-text-inverse)}
.tt-btn--primary:hover{background:var(--tt-primary-hover)}
.tt-btn--secondary{background:var(--tt-surface);color:var(--tt-primary);border-color:var(--tt-border-strong)}
.tt-btn--secondary:hover{background:var(--tt-primary-soft);border-color:var(--tt-primary)}
.tt-btn--ghost{background:transparent;color:var(--tt-text-2)}
.tt-btn--ghost:hover{background:var(--tt-surface-2)}
.tt-btn--block{width:100%}
.tt-btn--sm{min-height:36px;padding:0 var(--tt-sp-3);font-size:var(--tt-fs-sm)}
.tt-btn:disabled{opacity:.55;cursor:not-allowed}

/* ---------- Nút tool (icon + tên), 3 cỡ ---------- */
.tt-toolbtn{display:inline-flex;align-items:center;gap:var(--tt-sp-2);text-decoration:none;color:var(--tt-text);background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:var(--tt-radius-md);font-weight:var(--tt-fw-medium);min-height:var(--tt-control-h);padding:var(--tt-sp-2) var(--tt-sp-3);font-size:var(--tt-fs-sm);line-height:var(--tt-lh-snug)}
.tt-toolbtn .tt-i{color:var(--tt-primary)}
.tt-toolbtn:hover{border-color:var(--tt-primary);background:var(--tt-primary-soft);color:var(--tt-primary)}
.tt-toolbtn--md{font-size:var(--tt-fs-md);padding:var(--tt-sp-3) var(--tt-sp-4)}
.tt-toolbtn--lg{font-size:var(--tt-fs-md);padding:var(--tt-sp-4);flex-direction:column;align-items:flex-start;gap:var(--tt-sp-3)}
.tt-toolbtn--lg .tt-i{width:24px;height:24px}
.tt-toolgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--tt-sp-2)}

/* ---------- Card tool liên quan ---------- */
.tt-cards{display:grid;gap:var(--tt-sp-3);grid-template-columns:1fr;margin:var(--tt-sp-4) 0}
@media (min-width:768px){.tt-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tt-card{display:flex;gap:var(--tt-sp-3);padding:var(--tt-sp-4);background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:var(--tt-radius-lg);text-decoration:none;color:var(--tt-text)}
.tt-card:hover{border-color:var(--tt-primary);box-shadow:var(--tt-shadow-sm)}
.tt-card__icon{width:40px;height:40px;border-radius:var(--tt-radius-md);background:var(--tt-primary-soft);color:var(--tt-primary);display:grid;place-items:center;flex:none}
.tt-card__icon .tt-i{width:20px;height:20px}
.tt-card h3{margin:0 0 2px;font-size:var(--tt-fs-md);font-weight:var(--tt-fw-semibold);color:var(--tt-primary)}
.tt-card p{margin:0;font-size:var(--tt-fs-sm);color:var(--tt-text-2)}
.tt-sidelist{display:grid;gap:var(--tt-sp-2)}

/* ---------- Box: pháp lý, cảnh báo, tính ngay ---------- */
.tt-box{border-radius:var(--tt-radius-lg);padding:var(--tt-sp-4);border:1px solid var(--tt-border);background:var(--tt-surface);margin:var(--tt-sp-4) 0}
.tt-box__title{display:flex;align-items:center;gap:var(--tt-sp-2);font-weight:var(--tt-fw-bold);font-size:var(--tt-fs-sm);margin:0 0 var(--tt-sp-2)}
.tt-box p:last-child{margin-bottom:0}
.tt-box--legal{background:var(--tt-legal-soft);border-color:var(--tt-legal-border)}
.tt-box--legal .tt-box__title{color:var(--tt-legal)}
.tt-box--warn{background:var(--tt-warn-soft);border-color:var(--tt-warn-border)}
.tt-box--warn .tt-box__title{color:var(--tt-warn)}
.tt-box--warn p{color:var(--tt-text);font-size:var(--tt-fs-sm)}
.tt-legal-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--tt-sp-2)}
.tt-legal-list li{display:grid;grid-template-columns:auto 1fr;gap:var(--tt-sp-3);align-items:start;padding:var(--tt-sp-3);background:var(--tt-surface);border:1px solid var(--tt-legal-border);border-radius:var(--tt-radius-md)}
.tt-legal-list .tt-i{color:var(--tt-legal);margin-top:3px}
.tt-legal-list strong{display:block;color:var(--tt-legal);font-size:var(--tt-fs-sm)}
.tt-legal-list a{font-size:var(--tt-fs-sm);display:inline-flex;align-items:center;gap:4px}
.tt-legal-list a .tt-i{width:.9em;height:.9em;margin:0}

/* ---------- Accordion FAQ (dùng block details của Gutenberg) ---------- */
.tt-content details,.tt-faq details{border:1px solid var(--tt-border);border-radius:var(--tt-radius-md);background:var(--tt-surface);margin:0 0 var(--tt-sp-2)}
.tt-content details summary,.tt-faq summary{list-style:none;display:flex;align-items:center;gap:var(--tt-sp-3);padding:var(--tt-sp-3) var(--tt-sp-4);min-height:var(--tt-control-h);font-weight:var(--tt-fw-semibold);cursor:pointer;color:var(--tt-text)}
.tt-content details summary::-webkit-details-marker,.tt-faq summary::-webkit-details-marker{display:none}
.tt-faq summary::after{content:"";width:10px;height:10px;margin-left:auto;flex:none;border-right:2px solid var(--tt-text-3);border-bottom:2px solid var(--tt-text-3);transform:rotate(45deg);transition:transform .15s}
.tt-faq details[open] summary::after{transform:rotate(-135deg)}
.tt-faq details[open] summary{border-bottom:1px solid var(--tt-border)}
.tt-faq details>*:not(summary){padding:0 var(--tt-sp-4)}
.tt-faq details p{margin:var(--tt-sp-3) 0}
.tt-faq details p:last-child{padding-bottom:var(--tt-sp-3);margin-bottom:0}
.tt-faq details h3{margin:0;font:inherit;flex:1 1 auto;min-width:0}
.tt-faq summary,.tt-toc-mobile summary,.tt-disclosure summary{height:auto}
.tt-toc-mobile summary>span,.tt-disclosure summary>span{flex:1 1 auto;min-width:0}

/* ---------- Nội dung Gutenberg mặc định ---------- */
.tt-content{max-width:76ch}
.tt-content>*{margin-top:0;margin-bottom:var(--tt-sp-4)}
.tt-content h2{font-size:var(--tt-fs-xl);line-height:var(--tt-lh-tight);font-weight:var(--tt-fw-bold);letter-spacing:-.01em;margin-top:var(--tt-sp-7);padding-top:var(--tt-sp-4);border-top:1px solid var(--tt-border);scroll-margin-top:80px;text-wrap:pretty}
.tt-content h2:first-child{margin-top:var(--tt-sp-5);border-top:0;padding-top:0}
.tt-content h3{font-size:var(--tt-fs-lg);line-height:var(--tt-lh-snug);font-weight:var(--tt-fw-semibold);margin-top:var(--tt-sp-5);scroll-margin-top:80px}
.tt-content p{color:var(--tt-text);text-wrap:pretty}
.tt-content ul,.tt-content ol{padding-left:1.4em}
.tt-content li{margin-bottom:var(--tt-sp-2)}
.tt-content li::marker{color:var(--tt-primary);font-weight:var(--tt-fw-bold)}
.tt-content strong{font-weight:var(--tt-fw-bold)}
.tt-content figure{margin-left:0;margin-right:0}
.tt-content figcaption{font-size:var(--tt-fs-sm);color:var(--tt-text-3);margin-top:var(--tt-sp-2)}
.tt-content img{max-width:100%;height:auto;border-radius:var(--tt-radius-md)}
.tt-content .wp-block-buttons{display:flex;flex-wrap:wrap;gap:var(--tt-sp-2)}
.tt-content .wp-block-button__link{display:inline-flex;align-items:center;min-height:var(--tt-control-h);padding:0 var(--tt-sp-5);border-radius:var(--tt-radius-md);background:var(--tt-primary);color:#fff;text-decoration:none;font-weight:var(--tt-fw-semibold)}
.tt-content .is-style-outline .wp-block-button__link{background:transparent;color:var(--tt-primary);border:1px solid var(--tt-border-strong)}

/* Bảng (block Table mặc định + bảng biểu thuế) */
.tt-content .wp-block-table,.tt-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--tt-border);border-radius:var(--tt-radius-md);background:var(--tt-surface)}
.tt-content table,.tt-table{width:100%;border-collapse:collapse;font-size:var(--tt-fs-sm);min-width:480px}
.tt-content th,.tt-content td,.tt-table th,.tt-table td{padding:var(--tt-sp-3) var(--tt-sp-3);text-align:left;border-bottom:1px solid var(--tt-border);vertical-align:top}
.tt-content thead th,.tt-table thead th{background:var(--tt-surface-2);font-weight:var(--tt-fw-bold);color:var(--tt-text-2);font-size:var(--tt-fs-xs);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.tt-content tbody tr:nth-child(even) td,.tt-table--zebra tbody tr:nth-child(even) td{background:var(--tt-bg)}
.tt-content tbody tr:last-child td,.tt-table tbody tr:last-child td{border-bottom:0}
.tt-content td.tt-num,.tt-content th.tt-num,.tt-table .tt-num,.tt-content td:not(:first-child):has(> .tt-num){text-align:right}
.tt-table tr.is-active td{background:var(--tt-primary-soft)!important;font-weight:var(--tt-fw-semibold);color:var(--tt-primary);box-shadow:inset 3px 0 0 var(--tt-primary)}
.tt-table tfoot td,.tt-content tfoot td{font-weight:var(--tt-fw-bold);background:var(--tt-surface-2);border-top:2px solid var(--tt-border-strong)}
.tt-content figcaption,.tt-table caption{caption-side:bottom;text-align:left;padding:var(--tt-sp-2) var(--tt-sp-3);font-size:var(--tt-fs-xs);color:var(--tt-text-3)}

/* ---------- WIDGET TÍNH ---------- */
.tt-tool{background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:var(--tt-radius-lg);box-shadow:var(--tt-shadow-sm);overflow:hidden;scroll-margin-top:72px}
.tt-tool__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--tt-sp-3);padding:var(--tt-sp-4);border-bottom:1px solid var(--tt-border);background:var(--tt-surface-2)}
.tt-tool__title{display:flex;align-items:center;gap:var(--tt-sp-2);font-size:var(--tt-fs-md);font-weight:var(--tt-fw-bold);margin:0}
.tt-tool__title .tt-i{color:var(--tt-primary)}
.tt-yeartoggle{display:flex;align-items:center;gap:var(--tt-sp-2);margin-left:auto;font-size:var(--tt-fs-sm);color:var(--tt-text-2)}
.tt-seg{display:inline-flex;background:var(--tt-surface);border:1px solid var(--tt-border-strong);border-radius:var(--tt-radius-md);padding:2px}
.tt-seg{padding:0}
.tt-seg button{min-height:var(--tt-control-h);min-width:64px;padding:0 var(--tt-sp-3);border:0;background:transparent;border-radius:6px;font-weight:var(--tt-fw-semibold);color:var(--tt-text-2);cursor:pointer}
.tt-seg button[aria-pressed="true"]{background:var(--tt-primary);color:#fff}
@media (max-width:767px){.tt-yeartoggle{width:100%;margin-left:0;justify-content:space-between}}

.tt-tool__body{padding:var(--tt-sp-4)}
@media (min-width:768px){.tt-tool__body{padding:var(--tt-sp-5)}}
.tt-form{display:grid;gap:var(--tt-sp-4);grid-template-columns:1fr}
@media (min-width:768px){.tt-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--tt-sp-4) var(--tt-sp-5)}.tt-field--full{grid-column:1/-1}}
.tt-field{display:grid;gap:var(--tt-sp-2);align-content:start}
.tt-label{font-size:var(--tt-fs-sm);font-weight:var(--tt-fw-semibold);color:var(--tt-text);display:flex;justify-content:space-between;gap:var(--tt-sp-2)}
.tt-label small{font-weight:var(--tt-fw-regular);color:var(--tt-text-3)}
.tt-hint{font-size:var(--tt-fs-xs);color:var(--tt-text-3);margin:0}
.tt-error-msg{display:flex;align-items:center;gap:6px;font-size:var(--tt-fs-xs);color:var(--tt-error);font-weight:var(--tt-fw-medium);margin:0}
.tt-input{display:flex;align-items:center;min-height:var(--tt-control-h);border:1px solid var(--tt-border-strong);border-radius:var(--tt-radius-md);background:var(--tt-surface);overflow:hidden}
.tt-input:focus-within{border-color:var(--tt-focus);box-shadow:0 0 0 3px rgba(47,111,179,.18)}
.tt-input input,.tt-input select{flex:1;min-width:0;border:0;outline:0;background:transparent;padding:0 var(--tt-sp-3);min-height:var(--tt-control-h);font-size:var(--tt-fs-md);font-variant-numeric:tabular-nums;-webkit-appearance:none;appearance:none}
.tt-input input::placeholder{color:var(--tt-text-3)}
.tt-input__suffix{padding:0 var(--tt-sp-3);color:var(--tt-text-3);font-weight:var(--tt-fw-semibold);border-left:1px solid var(--tt-border);align-self:stretch;display:flex;align-items:center;background:var(--tt-surface-2)}
.tt-input--select{position:relative}
.tt-input--select::after{content:"";position:absolute;right:14px;top:50%;width:8px;height:8px;border-right:2px solid var(--tt-text-3);border-bottom:2px solid var(--tt-text-3);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.tt-input--select select{padding-right:var(--tt-sp-6)}
.tt-field.is-invalid .tt-input{border-color:var(--tt-error);background:var(--tt-error-soft)}
.tt-field.is-invalid .tt-input:focus-within{box-shadow:0 0 0 3px rgba(179,38,30,.18)}
.tt-chips{display:flex;flex-wrap:wrap;gap:var(--tt-sp-2)}
.tt-chip{min-height:var(--tt-control-h);padding:0 var(--tt-sp-3);border-radius:var(--tt-radius-full);border:1px solid var(--tt-border);background:var(--tt-surface);font-size:var(--tt-fs-xs);font-weight:var(--tt-fw-semibold);color:var(--tt-text-2);cursor:pointer}
.tt-chip:hover{border-color:var(--tt-primary);color:var(--tt-primary)}
.tt-chip[aria-pressed="true"]{background:var(--tt-primary-soft);border-color:var(--tt-primary);color:var(--tt-primary)}
.tt-stepper{display:inline-flex;align-items:stretch;border:1px solid var(--tt-border-strong);border-radius:var(--tt-radius-md);overflow:hidden;min-height:calc(var(--tt-control-h) + 2px);width:100%;max-width:220px}
.tt-stepper button{width:var(--tt-control-h);border:0;background:var(--tt-surface-2);color:var(--tt-primary);font-size:var(--tt-fs-lg);font-weight:var(--tt-fw-bold);cursor:pointer}
.tt-stepper button:hover{background:var(--tt-primary-soft)}
.tt-stepper button:disabled{color:var(--tt-text-3);cursor:not-allowed;background:var(--tt-surface-2)}
.tt-stepper output{flex:1;display:grid;place-items:center;font-weight:var(--tt-fw-bold);font-size:var(--tt-fs-md);border-left:1px solid var(--tt-border);border-right:1px solid var(--tt-border)}
.tt-radios{display:flex;flex-wrap:wrap;gap:var(--tt-sp-2)}
.tt-radio{display:inline-flex;align-items:center;gap:var(--tt-sp-2);min-height:var(--tt-control-h);padding:0 var(--tt-sp-4) 0 var(--tt-sp-3);border:1px solid var(--tt-border-strong);border-radius:var(--tt-radius-md);cursor:pointer;font-size:var(--tt-fs-sm);font-weight:var(--tt-fw-medium);flex:1 1 auto;background:var(--tt-surface)}
.tt-radio input{width:18px;height:18px;margin:0;accent-color:var(--tt-primary)}
.tt-radio.is-checked{border-color:var(--tt-primary);background:var(--tt-primary-soft);color:var(--tt-primary)}
.tt-form__actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:var(--tt-sp-3);padding-top:var(--tt-sp-2)}
@media (max-width:767px){.tt-form__actions .tt-btn{flex:1 1 100%}}
.tt-form__summary{grid-column:1/-1;display:flex;gap:var(--tt-sp-2);align-items:flex-start;padding:var(--tt-sp-3) var(--tt-sp-4);border:1px solid var(--tt-error-border);background:var(--tt-error-soft);color:var(--tt-error);border-radius:var(--tt-radius-md);font-size:var(--tt-fs-sm);font-weight:var(--tt-fw-medium)}

/* Vùng kết quả */
.tt-result{border-top:1px solid var(--tt-border)}
.tt-result__hero{background:var(--tt-result-bg);color:var(--tt-result-text);padding:var(--tt-sp-5) var(--tt-sp-4);display:grid;gap:var(--tt-sp-4)}
@media (min-width:768px){.tt-result__hero{grid-template-columns:1fr 1fr;padding:var(--tt-sp-5)}}
.tt-result__label{font-size:var(--tt-fs-sm);color:var(--tt-result-muted);margin:0 0 var(--tt-sp-1);font-weight:var(--tt-fw-medium)}
.tt-result__value{font-size:var(--tt-fs-2xl);line-height:var(--tt-lh-tight);font-weight:var(--tt-fw-black);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:0;color:var(--tt-result-number)}
.tt-result__value small{font-size:var(--tt-fs-sm);font-weight:var(--tt-fw-medium);color:var(--tt-result-muted);letter-spacing:0;margin-left:4px}
.tt-result__value--secondary{color:var(--tt-result-text)}
.tt-result__cell--secondary{border-top:1px solid var(--tt-result-border);padding-top:var(--tt-sp-4)}
@media (min-width:768px){.tt-result__cell--secondary{border-top:0;padding-top:0;border-left:1px solid var(--tt-result-border);padding-left:var(--tt-sp-5)}}
.tt-result__empty{padding:var(--tt-sp-5) var(--tt-sp-4);display:flex;gap:var(--tt-sp-3);align-items:flex-start;color:var(--tt-text-2);font-size:var(--tt-fs-sm);background:var(--tt-surface-2)}
.tt-result__empty .tt-i{color:var(--tt-text-3);margin-top:2px;width:20px;height:20px}
.tt-result__zero{background:var(--tt-success-soft);border-top:1px solid var(--tt-success-border);padding:var(--tt-sp-5) var(--tt-sp-4);display:grid;gap:var(--tt-sp-2)}
.tt-result__zero .tt-result__label{color:var(--tt-success)}
.tt-result__zero .tt-result__value{color:var(--tt-success)}
.tt-result__zero p{margin:0;color:var(--tt-text);font-size:var(--tt-fs-sm);max-width:60ch}
.tt-result__zero .tt-i{width:28px;height:28px;color:var(--tt-success)}
.tt-result__body{padding:var(--tt-sp-4);display:grid;gap:var(--tt-sp-4)}
@media (min-width:768px){.tt-result__body{padding:var(--tt-sp-5)}}
.tt-kv{list-style:none;margin:0;padding:0;display:grid;gap:0;border:1px solid var(--tt-border);border-radius:var(--tt-radius-md);overflow:hidden}
.tt-kv li{display:flex;justify-content:space-between;gap:var(--tt-sp-3);padding:var(--tt-sp-3) var(--tt-sp-4);font-size:var(--tt-fs-sm);border-bottom:1px solid var(--tt-border)}
.tt-kv li:last-child{border-bottom:0}
.tt-kv li:nth-child(even){background:var(--tt-bg)}
.tt-kv span:first-child{color:var(--tt-text-2)}
.tt-kv b{font-variant-numeric:tabular-nums;white-space:nowrap}
.tt-kv li.is-total{background:var(--tt-primary-soft);font-weight:var(--tt-fw-bold);color:var(--tt-primary)}
.tt-result__section{margin:0;font-size:var(--tt-fs-sm);font-weight:var(--tt-fw-bold);color:var(--tt-text-2);text-transform:uppercase;letter-spacing:.05em}
.tt-result__grid{display:grid;gap:var(--tt-sp-4)}
@media (min-width:1200px){.tt-result__grid{grid-template-columns:3fr 2fr}}
.tt-disclosure{border:1px solid var(--tt-border);border-radius:var(--tt-radius-md)}
.tt-disclosure summary{list-style:none;display:flex;align-items:center;gap:var(--tt-sp-2);padding:var(--tt-sp-3) var(--tt-sp-4);min-height:var(--tt-control-h);font-weight:var(--tt-fw-semibold);color:var(--tt-primary);cursor:pointer;font-size:var(--tt-fs-sm)}
.tt-disclosure summary::-webkit-details-marker{display:none}
.tt-disclosure summary .tt-i{margin-left:auto;transition:transform .15s}
.tt-disclosure[open] summary .tt-i{transform:rotate(180deg)}
.tt-disclosure ol{margin:0;padding:0 var(--tt-sp-4) var(--tt-sp-4) calc(var(--tt-sp-4) + 1.2em);font-size:var(--tt-fs-sm);display:grid;gap:var(--tt-sp-2);color:var(--tt-text-2)}
.tt-disclosure ol b{color:var(--tt-text);font-variant-numeric:tabular-nums}
.tt-result__actions{display:flex;flex-wrap:wrap;gap:var(--tt-sp-3);align-items:center}
.tt-result__foot{font-size:var(--tt-fs-xs);color:var(--tt-text-3);margin:0;display:flex;flex-wrap:wrap;gap:var(--tt-sp-1) var(--tt-sp-3)}
.tt-toast{font-size:var(--tt-fs-sm);color:var(--tt-success);font-weight:var(--tt-fw-semibold);display:inline-flex;gap:6px;align-items:center}

/* Khung embed */
.tt-embed .tt-tool{border-radius:var(--tt-radius-md)}
.tt-embed__credit{font-size:var(--tt-fs-xs);color:var(--tt-text-3);text-align:right;margin:var(--tt-sp-2) 0 0}
.tt-embed__credit a{font-weight:var(--tt-fw-semibold)}

/* ---------- Trang chủ & Hub ---------- */
.tt-hero{padding:var(--tt-sp-6) 0 var(--tt-sp-5);max-width:72ch}
.tt-hero h1{font-size:var(--tt-fs-xl);line-height:var(--tt-lh-tight);font-weight:var(--tt-fw-black);letter-spacing:-.015em;margin:0 0 var(--tt-sp-3);text-wrap:pretty}
.tt-hero p{font-size:var(--tt-fs-md);color:var(--tt-text-2);margin:0}
@media (min-width:768px){.tt-hero{padding-top:var(--tt-sp-7)}.tt-hero h1{font-size:var(--tt-fs-2xl)}.tt-hero p{font-size:var(--tt-fs-lg);line-height:var(--tt-lh-snug)}}
.tt-hub{background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:var(--tt-radius-lg);padding:var(--tt-sp-4);margin:0 0 var(--tt-sp-4)}
@media (min-width:768px){.tt-hub{padding:var(--tt-sp-5)}}
.tt-hub__head{display:flex;align-items:baseline;gap:var(--tt-sp-3);flex-wrap:wrap;margin-bottom:var(--tt-sp-4)}
.tt-hub__head h2{margin:0;font-size:var(--tt-fs-lg);font-weight:var(--tt-fw-bold);display:flex;align-items:center;gap:var(--tt-sp-2)}
.tt-hub__head h2 .tt-i{color:var(--tt-primary)}
.tt-hub__head .tt-count{font-size:var(--tt-fs-sm);color:var(--tt-text-3)}
.tt-hub__head>a{margin-left:auto;font-size:var(--tt-fs-sm);font-weight:var(--tt-fw-semibold)}
.tt-update{background:var(--tt-result-bg);color:var(--tt-result-text);border-radius:var(--tt-radius-lg);padding:var(--tt-sp-5) var(--tt-sp-4);margin:var(--tt-sp-6) 0}
@media (min-width:768px){.tt-update{padding:var(--tt-sp-5) var(--tt-sp-6);display:grid;grid-template-columns:260px 1fr;gap:var(--tt-sp-6);align-items:start}}
.tt-update h2{margin:0 0 var(--tt-sp-2);font-size:var(--tt-fs-lg);font-weight:var(--tt-fw-bold)}
.tt-update .tt-badge{background:var(--tt-result-number);color:var(--tt-result-bg)}
.tt-update ul{margin:var(--tt-sp-3) 0 0;padding:0;list-style:none;display:grid;gap:var(--tt-sp-3)}
.tt-update li{display:grid;grid-template-columns:auto 1fr;gap:var(--tt-sp-3);font-size:var(--tt-fs-sm);color:var(--tt-result-text);line-height:var(--tt-lh-base)}
.tt-update li .tt-i{color:var(--tt-result-number);margin-top:4px}
.tt-update li b{color:var(--tt-result-number)}
.tt-update a{color:var(--tt-result-text);text-decoration-color:var(--tt-result-muted)}
.tt-section-title{display:flex;align-items:baseline;gap:var(--tt-sp-3);margin:var(--tt-sp-6) 0 var(--tt-sp-4)}
.tt-section-title h2{margin:0;font-size:var(--tt-fs-xl);font-weight:var(--tt-fw-bold);letter-spacing:-.01em}
.tt-section-title a{margin-left:auto;font-size:var(--tt-fs-sm);font-weight:var(--tt-fw-semibold);white-space:nowrap}

/* ---------- Blog card, lọc chủ đề ---------- */
.tt-posts{display:grid;gap:var(--tt-sp-3);grid-template-columns:1fr}
@media (min-width:768px){.tt-posts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1200px){.tt-posts--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.tt-post{display:grid;gap:var(--tt-sp-2);padding:var(--tt-sp-4);background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:var(--tt-radius-lg);text-decoration:none;color:var(--tt-text);align-content:start}
.tt-post:hover{border-color:var(--tt-primary);box-shadow:var(--tt-shadow-sm)}
.tt-post__cat{font-size:var(--tt-fs-xs);font-weight:var(--tt-fw-bold);color:var(--tt-primary);text-transform:uppercase;letter-spacing:.05em}
.tt-post h3{margin:0;font-size:var(--tt-fs-md);line-height:var(--tt-lh-snug);font-weight:var(--tt-fw-semibold);text-wrap:pretty}
.tt-post p{margin:0;font-size:var(--tt-fs-sm);color:var(--tt-text-2)}
.tt-post__meta{font-size:var(--tt-fs-xs);color:var(--tt-text-3);display:flex;gap:var(--tt-sp-2);margin-top:auto;padding-top:var(--tt-sp-1)}
.tt-filter{display:flex;gap:var(--tt-sp-2);overflow-x:auto;padding:var(--tt-sp-1) 0 var(--tt-sp-3);scrollbar-width:thin}
.tt-filter .tt-chip{white-space:nowrap;flex:none}
.tt-pager{display:flex;justify-content:center;gap:var(--tt-sp-2);margin:var(--tt-sp-6) 0}
.tt-pager a,.tt-pager span{min-width:var(--tt-control-h);min-height:var(--tt-control-h);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--tt-border);border-radius:var(--tt-radius-md);text-decoration:none;color:var(--tt-text-2);font-weight:var(--tt-fw-semibold);background:var(--tt-surface);padding:0 var(--tt-sp-3)}
.tt-pager [aria-current]{background:var(--tt-primary);color:#fff;border-color:var(--tt-primary)}

/* ---------- Bài blog ---------- */
.tt-article-head{padding:var(--tt-sp-4) 0 var(--tt-sp-5);max-width:76ch}
.tt-article-head h1{font-size:var(--tt-fs-xl);line-height:var(--tt-lh-tight);font-weight:var(--tt-fw-black);letter-spacing:-.015em;margin:var(--tt-sp-3) 0;text-wrap:pretty}
@media (min-width:768px){.tt-article-head h1{font-size:var(--tt-fs-2xl)}}
.tt-author{display:flex;align-items:center;gap:var(--tt-sp-3);font-size:var(--tt-fs-sm);color:var(--tt-text-2)}
.tt-avatar{width:36px;height:36px;border-radius:var(--tt-radius-full);background:var(--tt-primary-soft);color:var(--tt-primary);display:grid;place-items:center;font-weight:var(--tt-fw-bold);font-size:var(--tt-fs-sm)}
.tt-author b{color:var(--tt-text)}
.tt-figure-ph{aspect-ratio:16/9;background:var(--tt-surface-2);border:1px dashed var(--tt-border-strong);border-radius:var(--tt-radius-md);display:grid;place-items:center;color:var(--tt-text-3);font-size:var(--tt-fs-sm);text-align:center;padding:var(--tt-sp-4)}
.tt-box--calc{background:var(--tt-primary-soft);border-color:var(--tt-primary);display:grid;gap:var(--tt-sp-3);grid-template-columns:1fr}
@media (min-width:768px){.tt-box--calc{grid-template-columns:1fr auto;align-items:center}}
.tt-box--calc .tt-box__title{color:var(--tt-primary);font-size:var(--tt-fs-md)}
.tt-box--calc p{margin:0;font-size:var(--tt-fs-sm);color:var(--tt-text-2)}

/* ---------- Glossary / page thường ---------- */
.tt-page{max-width:76ch;padding-bottom:var(--tt-sp-8)}
.tt-def{background:var(--tt-surface);border:1px solid var(--tt-border);border-left:4px solid var(--tt-primary);border-radius:var(--tt-radius-md);padding:var(--tt-sp-4) var(--tt-sp-5);margin:var(--tt-sp-5) 0}
.tt-def p{margin:0;font-size:var(--tt-fs-lg);line-height:var(--tt-lh-snug)}
.tt-def small{display:block;margin-top:var(--tt-sp-2);font-size:var(--tt-fs-xs);color:var(--tt-text-3)}
.tt-def b{color:var(--tt-primary)}
.tt-az{display:flex;flex-wrap:wrap;gap:var(--tt-sp-1);margin:var(--tt-sp-4) 0}
.tt-az a{min-width:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--tt-border);border-radius:var(--tt-radius-sm);text-decoration:none;font-size:var(--tt-fs-sm);font-weight:var(--tt-fw-semibold);color:var(--tt-text-2);background:var(--tt-surface)}
.tt-az a:hover{border-color:var(--tt-primary);color:var(--tt-primary)}
.tt-termlist{list-style:none;margin:0;padding:0;display:grid;gap:var(--tt-sp-2)}
.tt-termlist li{background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:var(--tt-radius-md);padding:var(--tt-sp-3) var(--tt-sp-4)}
.tt-termlist a{font-weight:var(--tt-fw-semibold);text-decoration:none}
.tt-termlist p{margin:var(--tt-sp-1) 0 0;font-size:var(--tt-fs-sm);color:var(--tt-text-2)}

/* ---------- 404 / tìm kiếm ---------- */
.tt-empty{max-width:60ch;margin:0 auto;text-align:center;padding:var(--tt-sp-8) 0}
.tt-empty__code{font-size:var(--tt-fs-2xl);font-weight:var(--tt-fw-black);color:var(--tt-primary);letter-spacing:-.02em;margin:0}
.tt-empty h1{font-size:var(--tt-fs-xl);margin:var(--tt-sp-2) 0 var(--tt-sp-3)}
.tt-empty p{color:var(--tt-text-2);margin:0 0 var(--tt-sp-5)}
.tt-searchbar{display:flex;gap:var(--tt-sp-2);max-width:560px;margin:0 auto}
.tt-searchbar .tt-input{flex:1}
.tt-results{display:grid;gap:var(--tt-sp-3);max-width:76ch}
.tt-result-item{background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:var(--tt-radius-lg);padding:var(--tt-sp-4);display:grid;gap:var(--tt-sp-1)}
.tt-result-item h2{margin:0;font-size:var(--tt-fs-md);font-weight:var(--tt-fw-semibold)}
.tt-result-item h2 a{text-decoration:none}
.tt-result-item p{margin:0;font-size:var(--tt-fs-sm);color:var(--tt-text-2)}
.tt-result-item mark{background:var(--tt-accent-soft);color:inherit;padding:0 2px}
.tt-result-item .tt-badge{justify-self:start}

/* ---------- Widget C: so sánh 2 cột ---------- */
.tt-compare{display:grid;gap:var(--tt-sp-3);grid-template-columns:1fr}
@media (min-width:768px){.tt-compare{grid-template-columns:1fr 1fr}}
.tt-col{border:1px solid var(--tt-border);border-radius:var(--tt-radius-md);overflow:hidden;background:var(--tt-surface)}
.tt-col__head{padding:var(--tt-sp-3) var(--tt-sp-4);background:var(--tt-surface-2);border-bottom:1px solid var(--tt-border);display:flex;align-items:center;gap:var(--tt-sp-2);flex-wrap:wrap}
.tt-col__head h3{margin:0;font-size:var(--tt-fs-sm);font-weight:var(--tt-fw-bold)}
.tt-col__total{padding:var(--tt-sp-4);display:grid;gap:2px}
.tt-col__total .tt-result__label{color:var(--tt-text-3)}
.tt-col__total .tt-result__value{color:var(--tt-text);font-size:var(--tt-fs-xl)}
.tt-col.is-better{border-color:var(--tt-success);box-shadow:0 0 0 1px var(--tt-success)}
.tt-col.is-better .tt-col__head{background:var(--tt-success-soft)}
.tt-col.is-better .tt-col__total .tt-result__value{color:var(--tt-success)}
.tt-col .tt-kv{border:0;border-top:1px solid var(--tt-border);border-radius:0}
.tt-diff{display:flex;gap:var(--tt-sp-3);align-items:center;padding:var(--tt-sp-3) var(--tt-sp-4);background:var(--tt-success-soft);border:1px solid var(--tt-success-border);border-radius:var(--tt-radius-md);color:var(--tt-success);font-weight:var(--tt-fw-semibold);font-size:var(--tt-fs-sm)}
.tt-diff b{font-size:var(--tt-fs-lg);font-variant-numeric:tabular-nums}

/* ---------- Widget D: bảng nhập nhiều dòng ---------- */
.tt-rows{width:100%;border-collapse:collapse;font-size:var(--tt-fs-sm);min-width:560px}
.tt-rows th{text-align:left;font-size:var(--tt-fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--tt-text-2);padding:var(--tt-sp-2) var(--tt-sp-2);border-bottom:1px solid var(--tt-border)}
.tt-rows td{padding:var(--tt-sp-1) var(--tt-sp-1);vertical-align:top}
.tt-rows .tt-input{min-height:var(--tt-control-h)}
.tt-rows .tt-stepper{max-width:140px}
.tt-rows__del{width:var(--tt-control-h);height:var(--tt-control-h);border:1px solid var(--tt-border);background:var(--tt-surface);border-radius:var(--tt-radius-md);color:var(--tt-text-3);cursor:pointer;display:grid;place-items:center}
.tt-rows__del:hover{color:var(--tt-error);border-color:var(--tt-error)}
.tt-paste{width:100%;min-height:96px;border:1px dashed var(--tt-border-strong);border-radius:var(--tt-radius-md);padding:var(--tt-sp-3);font:inherit;font-size:var(--tt-fs-sm);resize:vertical;background:var(--tt-surface-2)}
.tt-paste:focus{outline:2px solid var(--tt-focus);outline-offset:1px;background:var(--tt-surface)}

/* ---------- Widget E: quiz ---------- */
.tt-steps{display:flex;gap:var(--tt-sp-1);margin-bottom:var(--tt-sp-4)}
.tt-steps span{flex:1;height:6px;border-radius:var(--tt-radius-full);background:var(--tt-border)}
.tt-steps span.is-done{background:var(--tt-primary)}
.tt-steps span.is-current{background:var(--tt-accent)}
.tt-question{font-size:var(--tt-fs-lg);font-weight:var(--tt-fw-bold);margin:0 0 var(--tt-sp-2);line-height:var(--tt-lh-snug)}
.tt-question+p{margin:0 0 var(--tt-sp-4);color:var(--tt-text-2);font-size:var(--tt-fs-sm)}
.tt-options{display:grid;gap:var(--tt-sp-2)}
.tt-option{display:flex;align-items:center;gap:var(--tt-sp-3);text-align:left;min-height:56px;padding:var(--tt-sp-3) var(--tt-sp-4);border:1px solid var(--tt-border-strong);border-radius:var(--tt-radius-md);background:var(--tt-surface);cursor:pointer;font-size:var(--tt-fs-md);font-weight:var(--tt-fw-medium)}
.tt-option:hover{border-color:var(--tt-primary);background:var(--tt-primary-soft)}
.tt-option.is-selected{border-color:var(--tt-primary);background:var(--tt-primary-soft);color:var(--tt-primary)}
.tt-option small{display:block;font-weight:var(--tt-fw-regular);color:var(--tt-text-3);font-size:var(--tt-fs-xs)}
.tt-verdict{padding:var(--tt-sp-5) var(--tt-sp-4);display:grid;gap:var(--tt-sp-3)}
.tt-verdict--yes{background:var(--tt-warn-soft);border-top:1px solid var(--tt-warn-border)}
.tt-verdict--no{background:var(--tt-success-soft);border-top:1px solid var(--tt-success-border)}
.tt-verdict__title{display:flex;align-items:center;gap:var(--tt-sp-3);font-size:var(--tt-fs-xl);font-weight:var(--tt-fw-black);margin:0;line-height:var(--tt-lh-tight)}
.tt-verdict--yes .tt-verdict__title{color:var(--tt-warn)}
.tt-verdict--no .tt-verdict__title{color:var(--tt-success)}
.tt-verdict__title .tt-i{width:28px;height:28px}
.tt-verdict p:not(.tt-verdict__title){margin:0;font-size:var(--tt-fs-sm);max-width:64ch}
.tt-verdict ul{margin:0;padding-left:1.2em;font-size:var(--tt-fs-sm);display:grid;gap:var(--tt-sp-1)}

/* ---------- Footer ---------- */
.tt-footer{background:var(--tt-surface);border-top:1px solid var(--tt-border);margin-top:var(--tt-sp-8);padding:var(--tt-sp-6) 0 var(--tt-sp-5);font-size:var(--tt-fs-sm);color:var(--tt-text-2)}
.tt-footer__grid{display:grid;gap:var(--tt-sp-5);grid-template-columns:1fr}
@media (min-width:768px){.tt-footer__grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.tt-footer h2{font-size:var(--tt-fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--tt-text-3);margin:0 0 var(--tt-sp-3)}
.tt-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--tt-sp-2)}
.tt-footer a{color:var(--tt-text-2);text-decoration:none}
.tt-footer a:hover{color:var(--tt-primary);text-decoration:underline}
.tt-footer__disclaimer{margin:var(--tt-sp-5) 0 0;padding-top:var(--tt-sp-4);border-top:1px solid var(--tt-border);font-size:var(--tt-fs-xs);color:var(--tt-text-3);text-wrap:pretty}
