/* TR Immigration — Visa Bulletin tracker. Every value resolves to an existing kit token. */
.tr-vb-page .ast-container{max-width:none;padding:0;}
.tr-vb-page #primary,.tr-vb-page #content .ast-container>#primary{margin:0;padding:0;width:100%;}
.tr-vb-page .entry-content{margin:0;}
.tr-vb-page .site-content .ast-container{display:block;}

.elementor .tr-vb-root select,.elementor .tr-vb-root input,.elementor .tr-vb-root button{font-family:var(--font-body);}
.elementor .tr-page-source{font-size:var(--fs-sm);color:var(--on-navy-fine);margin-block-start:var(--sp-4);}
.elementor .tr-vb-gap{margin-block-start:var(--sp-9);}

/* controls */
.elementor .tr-vb-controls{display:flex;flex-direction:column;row-gap:var(--sp-5);margin-block-end:var(--sp-7);}
.elementor .tr-vb-control-row{display:flex;flex-direction:row;flex-wrap:wrap;column-gap:var(--sp-7);row-gap:var(--sp-4);align-items:flex-end;}
.elementor .tr-vb-field{display:flex;flex-direction:column;row-gap:var(--sp-1);}
.elementor .tr-vb-field-label{font-weight:600;font-size:var(--fs-sm);color:var(--ink-soft);}
.elementor .tr-vb-select{font-size:var(--fs-base);color:var(--navy-900);background-color:var(--white);border:var(--hair) solid var(--rule);border-radius:var(--r-1);padding:var(--sp-2) var(--sp-6) var(--sp-2) var(--sp-3);min-width:220px;line-height:1.3;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%230F1B33' stroke-width='1.5'/></svg>");background-repeat:no-repeat;background-position:right var(--sp-3) center;}
.elementor .tr-vb-input{font-size:var(--fs-base);color:var(--navy-900);background-color:var(--white);border:var(--hair) solid var(--rule);border-radius:var(--r-1);padding:var(--sp-2) var(--sp-3);min-width:220px;line-height:1.3;}
.elementor .tr-vb-select:focus-visible,.elementor .tr-vb-input:focus-visible,.elementor .tr-vb-seg-btn:focus-visible,.elementor .tr-vb-root .tr-tab:focus-visible,.elementor .tr-vb-root .tr-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px;}
.elementor .tr-vb-seg{display:inline-flex;border:var(--hair) solid var(--rule);border-radius:var(--r-1);overflow:hidden;background-color:var(--white);}
.elementor .tr-vb-seg-btn{font-size:var(--fs-note);font-weight:500;color:var(--ink-soft);background:transparent;border:0;border-radius:0;padding:var(--sp-2) var(--sp-4);cursor:pointer;line-height:1.3;}
.elementor .tr-vb-seg-btn + .tr-vb-seg-btn{border-inline-start:var(--hair) solid var(--rule);}
.elementor .tr-vb-seg-btn[aria-pressed="true"]{color:var(--white);background-color:var(--navy-900);font-weight:600;}
.elementor .tr-filter-tabs.tr-vb-tabs{margin-block-end:var(--sp-5);}
.elementor .tr-vb-root .tr-tab{border-block-start:0;border-inline:0;background:transparent;}

/* priority date checker (built on tr-stat-moment) */
.elementor .tr-vb-checker{margin-block-start:0;margin-block-end:var(--sp-8);flex-direction:column;align-items:stretch;row-gap:var(--sp-5);}
.elementor .tr-vb-checker-head{display:flex;flex-direction:column;row-gap:var(--sp-1);}
.elementor .tr-vb-checker-fields{display:flex;flex-direction:row;flex-wrap:wrap;column-gap:var(--sp-5);row-gap:var(--sp-4);align-items:flex-end;}
.elementor .tr-vb-checker .tr-btn{width:auto;}
.elementor .tr-vb-result{display:none;flex-direction:column;row-gap:var(--sp-2);padding-block-start:var(--sp-4);border-block-start:var(--hair) solid var(--rule);}
.elementor .tr-vb-result[data-show="true"]{display:flex;}
.elementor .tr-vb-result-line{font-family:var(--font-head);font-size:var(--fs-split);color:var(--navy-900);line-height:var(--lh-head);}
.elementor .tr-vb-result-context{font-size:var(--fs-sm);color:var(--ink-soft);}
.elementor .tr-vb-fine{max-width:70ch;font-size:var(--fs-sm);color:var(--ink-soft);line-height:var(--lh-fine);}
.elementor .tr-vb-note{margin-block-start:var(--sp-4);}

/* results table */
.elementor .tr-vb-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:var(--hair) solid var(--rule);background-color:var(--white);}
.elementor .tr-vb-table{width:100%;min-width:720px;border-collapse:collapse;font-size:var(--fs-note);margin:0;}
.elementor .tr-vb-table th,.elementor .tr-vb-table td{text-align:left;padding:var(--sp-3) var(--sp-4);border:0;border-block-end:var(--hair) solid var(--rule);vertical-align:top;white-space:nowrap;background:transparent;}
.elementor .tr-vb-table th{font-weight:600;font-size:var(--fs-sm);color:var(--ink-soft);background-color:var(--paper);}
.elementor .tr-vb-table tbody tr:last-child td{border-block-end:0;}
.elementor .tr-vb-table td:first-child,.elementor .tr-vb-table th:first-child{position:sticky;left:0;z-index:1;background-color:var(--paper);color:var(--navy-900);font-weight:600;border-inline-end:var(--hair) solid var(--rule);min-width:180px;}
.elementor .tr-vb-table td:first-child{background-color:var(--white);}
.elementor .tr-vb-sub{display:block;font-weight:400;font-size:var(--fs-xs);color:var(--ink-soft);white-space:normal;max-width:22ch;}
.elementor .tr-vb-cell{display:flex;flex-direction:column;row-gap:2px;}
.elementor .tr-vb-value{font-variant-numeric:tabular-nums;color:var(--ink);}
.elementor .tr-vb-value-current{color:var(--green);font-weight:600;}
.elementor .tr-vb-value-unavail{color:var(--brick);font-weight:600;}
.elementor .tr-vb-change{font-size:var(--fs-xs);color:var(--ink-soft);}
.elementor .tr-vb-change-up{color:var(--green);}
.elementor .tr-vb-change-down{color:var(--brick);}
.elementor .tr-vb-table-meta{display:flex;flex-wrap:wrap;justify-content:space-between;column-gap:var(--sp-4);row-gap:var(--sp-2);margin-block-start:var(--sp-3);font-size:var(--fs-sm);color:var(--ink-soft);}
.elementor .tr-vb-legend{display:flex;flex-wrap:wrap;column-gap:var(--sp-4);row-gap:var(--sp-1);}

/* what changed */
.elementor .tr-vb-changes .tr-topic-row{border-block-end:var(--hair) solid var(--rule);}
.elementor .tr-vb-changes .tr-topic-row:first-child{border-block-start:var(--hair) solid var(--rule);}
.elementor .tr-vb-analysis{margin-block-start:var(--sp-5);}

/* historical chart */
.elementor .tr-vb-chart-wrap{display:flex;flex-direction:column;row-gap:var(--sp-4);}
.elementor .tr-vb-chart{width:100%;height:auto;display:block;border:var(--hair) solid var(--rule);background-color:var(--white);}
.elementor .tr-vb-chart text{font-family:var(--font-body);font-size:12px;fill:var(--ink-soft);}
.elementor .tr-vb-chart .grid{stroke:var(--rule);stroke-width:1;}
.elementor .tr-vb-chart .line{fill:none;stroke:var(--navy-900);stroke-width:2;stroke-linejoin:round;}
.elementor .tr-vb-chart .dot{fill:var(--paper);stroke:var(--navy-900);stroke-width:2;}
.elementor .tr-vb-chart .dot-last{fill:var(--gold);stroke:var(--gold-deep);}
.elementor .tr-vb-chart .empty{font-size:14px;fill:var(--ink-soft);}
.elementor .tr-vb-chart-stats{display:flex;flex-wrap:wrap;column-gap:var(--sp-7);row-gap:var(--sp-3);}
.elementor .tr-vb-stat{display:flex;flex-direction:column;row-gap:2px;}
.elementor .tr-vb-stat-k{font-weight:600;font-size:var(--fs-sm);color:var(--ink-soft);}
.elementor .tr-vb-stat-v{font-family:var(--font-head);font-size:var(--fs-h4);color:var(--navy-900);}

/* source panel (built on tr-bulletin) */
.elementor .tr-vb-source{flex-direction:row;flex-wrap:wrap;column-gap:var(--sp-7);row-gap:var(--sp-5);justify-content:space-between;align-items:center;flex:none;}
.elementor .tr-vb-source-body{display:flex;flex-direction:column;row-gap:var(--sp-1);}
.elementor .tr-vb-source .tr-btn{width:auto;}

@media(max-width:767px){
 .elementor .tr-vb-select,.elementor .tr-vb-input{min-width:0;width:100%;}
 .elementor .tr-vb-field{width:100%;}
 .elementor .tr-vb-control-row{row-gap:var(--sp-3);}
 .elementor .tr-vb-seg{width:100%;}
 .elementor .tr-vb-seg-btn{flex:1 1 0;}
 .elementor .tr-vb-checker .tr-btn,.elementor .tr-vb-source .tr-btn{width:100%;}
 .elementor .tr-vb-table td:first-child,.elementor .tr-vb-table th:first-child{min-width:140px;}
 .elementor .tr-vb-gap{margin-block-start:var(--sp-7);}
}

/* embedded on the Resources page */
.elementor .tr-vb-embed{display:flex;flex-direction:column;width:100%;scroll-margin-top:var(--sp-5);}
.elementor .tr-vb-body{display:flex;flex-direction:column;}
.elementor .tr-vb-embed .tr-vb-checker{margin-block-end:var(--sp-7);}
.elementor #glossary,.elementor #faq{scroll-margin-top:var(--sp-5);}

.elementor .tr-reveal-more[hidden]{display:none;}
.elementor .tr-reveal-more{display:flex;flex-direction:column;row-gap:var(--sp-5);}
.elementor .tr-faq .tr-reveal-more{row-gap:0;}
.elementor .tr-reveal-btn{width:auto;}

/* expanded lists keep the same rhythm as the preview */
.elementor .tr-glossary .tr-reveal-more{display:flex;flex-direction:column;row-gap:var(--sp-5);}
.elementor .tr-glossary .tr-reveal-more[hidden]{display:none;}
.elementor .tr-glossary .tr-reveal-more > .tr-glossary-item + .tr-glossary-item{margin-block-start:0;}
.elementor .tr-faq .tr-reveal-more{display:flex;flex-direction:column;row-gap:0;}
.elementor .tr-faq .tr-reveal-more[hidden]{display:none;}
.elementor .tr-center-btn{margin-block-start:var(--sp-7);}
