/* generated by tools/build_platform.py from https://play.zhwonline.cloud -- do not edit */
.tg-platform{
  --tg-black:      #0a0a0b;
  --tg-charcoal:   #141417;
  --tg-charcoal-2: #1c1c21;
  --tg-charcoal-3: #26262d;
  --tg-line:       #32323b;
  --tg-line-soft:  #24242b;

  --tg-gold:       #c8a15a;
  --tg-gold-bright:#e0bb78;
  --tg-gold-dim:   #8a6f3c;
  --tg-gold-wash:  rgba(200,161,90,.12);

  --tg-text:       #f2f2f4;
  --tg-text-2:     #b4b4bd;
  --tg-text-3:     #85858f;

  --tg-ok:         #4f9d69;
  --tg-ok-wash:    rgba(79,157,105,.14);
  --tg-warn:       #c9922f;
  --tg-warn-wash:  rgba(201,146,47,.14);
  --tg-bad:        #c05656;
  --tg-bad-wash:   rgba(192,86,86,.14);
  --tg-info-wash:  rgba(120,150,200,.12);

  --tg-r-sm: 6px;
  --tg-r:    10px;
  --tg-r-lg: 16px;

  --tg-s1: 4px;  --tg-s2: 8px;  --tg-s3: 12px; --tg-s4: 16px;
  --tg-s5: 24px; --tg-s6: 32px; --tg-s7: 48px; --tg-s8: 64px;

  --tg-font: "Inter", "Segoe UI", system-ui, -apple-system, Roboto, Helvetica, Arial, sans-serif;
  --tg-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;

  --tg-shadow:    0 2px 8px rgba(0,0,0,.4);
  --tg-shadow-lg: 0 12px 40px rgba(0,0,0,.55);

  --tg-tap: 44px; 
}
.tg-platform *, .tg-platform *::before, .tg-platform *::after{ box-sizing: border-box; }
.tg-platform{ -webkit-text-size-adjust: 100%; }
.tg-platform{
  margin: 0;
  background: var(--tg-black);
  color: var(--tg-text);
  font-family: var(--tg-font);
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
.tg-platform :focus-visible{
  outline: 2px solid var(--tg-gold-bright);
  outline-offset: 2px;
  border-radius: 3px;
}
.tg-platform .tg-sr{
  position: absolute; width: 1px; height: 1px;
  padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.tg-platform .tg-skip{
  position: absolute; left: -9999px; top: 0; z-index: 200;
  background: var(--tg-gold); color: #000; padding: var(--tg-s3) var(--tg-s4);
  font-weight: 600; border-radius: 0 0 var(--tg-r-sm) 0;
}
.tg-platform .tg-skip:focus{ left: 0; }
@media (prefers-reduced-motion: reduce) {.tg-platform *, .tg-platform *::before, .tg-platform *::after{
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    scroll-behavior: auto !important;
  }}
.tg-platform h1, .tg-platform h2, .tg-platform h3, .tg-platform h4{ margin: 0 0 var(--tg-s3); line-height: 1.22; font-weight: 650; letter-spacing: -.01em; }
.tg-platform h1{ font-size: clamp(1.75rem, 1.2rem + 2.2vw, 2.85rem); }
.tg-platform h2{ font-size: clamp(1.3rem, 1.05rem + 1.1vw, 1.75rem); }
.tg-platform h3{ font-size: 1.12rem; }
.tg-platform h4{ font-size: 1rem; }
.tg-platform p{ margin: 0 0 var(--tg-s3); color: var(--tg-text-2); }
.tg-platform a{ color: var(--tg-gold-bright); text-decoration: none; }
.tg-platform a:hover{ text-decoration: underline; }
.tg-platform code, .tg-platform .tg-mono{ font-family: var(--tg-mono); font-size: .9em; }
.tg-platform .tg-eyebrow{
  text-transform: uppercase; letter-spacing: .16em;
  font-size: .72rem; font-weight: 700; color: var(--tg-gold);
  margin: 0 0 var(--tg-s2);
}
.tg-platform .tg-lede{ font-size: 1.08rem; color: var(--tg-text-2); max-width: 65ch; }
.tg-platform .tg-muted{ color: var(--tg-text-3); }
.tg-platform .tg-small{ font-size: .85rem; }
.tg-platform .tg-rule{
  width: 52px; height: 3px; border-radius: 2px;
  background: linear-gradient(90deg, var(--tg-gold), var(--tg-gold-dim));
  margin: 0 0 var(--tg-s4);
}
.tg-platform .tg-wrap{ width: 100%; max-width: 1180px; margin: 0 auto; padding: 0 var(--tg-s5); }
.tg-platform .tg-wrap-narrow{ max-width: 780px; }
.tg-platform .tg-section{ padding: var(--tg-s8) 0; }
.tg-platform .tg-section + .tg-section{ border-top: 1px solid var(--tg-line-soft); }
.tg-platform .tg-hide{ display: none !important; }
.tg-platform .tg-grid{ display: grid; gap: var(--tg-s4); }
.tg-platform .tg-grid-2{ grid-template-columns: repeat(2, minmax(0,1fr)); }
.tg-platform .tg-grid-3{ grid-template-columns: repeat(3, minmax(0,1fr)); }
.tg-platform .tg-grid-4{ grid-template-columns: repeat(4, minmax(0,1fr)); }
@media (max-width: 900px) {.tg-platform .tg-grid-3, .tg-platform .tg-grid-4{ grid-template-columns: repeat(2, minmax(0,1fr)); }}
@media (max-width: 620px) {.tg-platform .tg-grid-2, .tg-platform .tg-grid-3, .tg-platform .tg-grid-4{ grid-template-columns: 1fr; }
.tg-platform .tg-wrap{ padding: 0 var(--tg-s4); }
.tg-platform .tg-section{ padding: var(--tg-s6) 0; }}
.tg-platform .tg-row{ display: flex; gap: var(--tg-s3); flex-wrap: wrap; align-items: center; }
.tg-platform .tg-row-end{ justify-content: flex-end; }
.tg-platform .tg-spread{ display: flex; gap: var(--tg-s3); align-items: center; justify-content: space-between; flex-wrap: wrap; }
.tg-platform .tg-stack > * + *{ margin-top: var(--tg-s4); }
.tg-platform{ --tg-head-h: 64px; }
.tg-platform{
  scroll-padding-top: calc(var(--tg-head-h) + var(--tg-s4));
}
.tg-platform main, .tg-platform #main, .tg-platform .tg-card, .tg-platform .tg-app > *, .tg-platform h1, .tg-platform h2, .tg-platform h3, .tg-platform [id], .tg-platform [tabindex="-1"]{
  scroll-margin-top: calc(var(--tg-head-h) + var(--tg-s4));
}
.tg-platform .tg-head-in{ min-height: var(--tg-head-h); }
@media (max-width: 620px) {.tg-platform{ --tg-head-h: 56px; }}
.tg-platform .tg-head{
  position: sticky; top: 0; z-index: 50;
  background: rgba(10,10,11,.93);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--tg-line-soft);
}
.tg-platform .tg-head-in{
  display: flex; align-items: center; justify-content: space-between;
  gap: var(--tg-s4); min-height: 64px;
}
.tg-platform .tg-brand{ display: flex; align-items: center; gap: var(--tg-s3); font-weight: 700; color: var(--tg-text); }
.tg-platform .tg-brand:hover{ text-decoration: none; }
.tg-platform .tg-mark{
  width: 34px; height: 34px; flex: none; border-radius: var(--tg-r-sm);
  background: linear-gradient(145deg, var(--tg-gold), var(--tg-gold-dim));
  color: #000; display: grid; place-items: center;
  font-weight: 800; font-size: .82rem; letter-spacing: .02em;
}
.tg-platform .tg-brand-t{ display: flex; flex-direction: column; line-height: 1.15; }
.tg-platform .tg-brand-t b{ font-size: .98rem; letter-spacing: .01em; }
.tg-platform .tg-brand-t span{ font-size: .7rem; color: var(--tg-text-3); text-transform: uppercase; letter-spacing: .12em; }
.tg-platform .tg-nav{ display: flex; gap: var(--tg-s1); flex-wrap: wrap; }
.tg-platform .tg-nav a, .tg-platform .tg-nav button{
  display: inline-flex; align-items: center; min-height: var(--tg-tap);
  padding: var(--tg-s2) var(--tg-s4);
  border-radius: var(--tg-r-sm); border: 1px solid transparent;
  background: transparent; color: var(--tg-text-2);
  font: inherit; font-size: .92rem; font-weight: 550; cursor: pointer;
  transition: background .15s, color .15s, border-color .15s;
}
.tg-platform .tg-nav a:hover, .tg-platform .tg-nav button:hover{
  background: var(--tg-charcoal-2); color: var(--tg-text); text-decoration: none;
}
.tg-platform .tg-nav [aria-current="page"], .tg-platform .tg-nav .is-active{
  background: var(--tg-gold-wash); color: var(--tg-gold-bright);
  border-color: rgba(200,161,90,.32);
}
.tg-platform .tg-app{ display: grid; grid-template-columns: 250px minmax(0,1fr); gap: var(--tg-s5); align-items: start; }
.tg-platform .tg-side{
  position: sticky; top: calc(var(--tg-head-h) + var(--tg-s4));
  background: var(--tg-charcoal); border: 1px solid var(--tg-line-soft);
  border-radius: var(--tg-r); padding: var(--tg-s3);
}
.tg-platform .tg-side h2{
  font-size: .68rem; text-transform: uppercase; letter-spacing: .14em;
  color: var(--tg-text-3); margin: var(--tg-s3) var(--tg-s2) var(--tg-s2);
}
.tg-platform .tg-side-nav{ display: flex; flex-direction: column; gap: 2px; }
.tg-platform .tg-side-nav button{
  display: flex; align-items: center; gap: var(--tg-s2);
  width: 100%; text-align: left; min-height: var(--tg-tap);
  padding: var(--tg-s2) var(--tg-s3);
  border: 1px solid transparent; border-radius: var(--tg-r-sm);
  background: transparent; color: var(--tg-text-2);
  font: inherit; font-size: .92rem; cursor: pointer;
}
.tg-platform .tg-side-nav button:hover{ background: var(--tg-charcoal-2); color: var(--tg-text); }
.tg-platform .tg-side-nav button.is-active{
  background: var(--tg-gold-wash); color: var(--tg-gold-bright);
  border-color: rgba(200,161,90,.3); font-weight: 600;
}
@media (max-width: 900px) {.tg-platform .tg-app{ grid-template-columns: 1fr; }
.tg-platform .tg-side{ position: static; }
.tg-platform .tg-side-nav{ flex-direction: row; flex-wrap: wrap; }
.tg-platform .tg-side-nav button{ width: auto; }}
.tg-platform .tg-embed body{ background: transparent; }
.tg-platform .tg-embed .tg-foot{ display: none; }
.tg-platform .tg-embed .tg-head{ position: static; background: transparent; border-top: 0; }
.tg-platform .tg-embed .tg-brand{ display: none; }
.tg-platform .tg-embed .tg-head-in{ justify-content: flex-start; }
.tg-platform .tg-embed .tg-wrap{ padding-left: var(--tg-s3); padding-right: var(--tg-s3); }
.tg-platform .tg-embed #main{ padding-top: var(--tg-s3) !important; padding-bottom: var(--tg-s3) !important; }
.tg-platform .tg-side-toggle{ display: none; }
.tg-platform .tg-side-scrim{ display: none; }
.tg-platform .tg-side-close{ display: none; }
@media (max-width: 900px) {.tg-platform .tg-side-toggle{
    display: inline-flex; align-items: center; gap: var(--tg-s2);
    min-height: var(--tg-tap); padding: var(--tg-s2) var(--tg-s4);
    margin-bottom: var(--tg-s3);
    border: 1px solid var(--tg-line-soft); border-radius: var(--tg-r-sm);
    background: var(--tg-charcoal); color: var(--tg-text);
    font: inherit; font-size: .92rem; font-weight: 600; cursor: pointer;
  }
.tg-platform .tg-side-toggle .tg-side-toggle-cur{
    color: var(--tg-gold-bright); font-weight: 550;
  }
.tg-platform .tg-app-drawer .tg-side{
    position: fixed; z-index: 60; top: 0; left: 0; bottom: 0;
    width: min(310px, 86vw); overflow-y: auto;
    border-radius: 0; border-left: 0; border-top: 0; border-bottom: 0;
    padding: var(--tg-s4) var(--tg-s3);
    transform: translateX(-100%);
    transition: transform .2s ease;
  }
.tg-platform .tg-app-drawer[data-drawer="closed"] .tg-side{ display: none; }
.tg-platform .tg-app-drawer[data-drawer="open"] .tg-side{ transform: translateX(0); }
.tg-platform .tg-app-drawer .tg-side-nav{ flex-direction: column; }
.tg-platform .tg-app-drawer .tg-side-nav button{ width: 100%; }
.tg-platform .tg-app-drawer[data-drawer="open"] .tg-side-scrim{
    display: block; position: fixed; inset: 0; z-index: 55;
    background: rgba(0,0,0,.6);
  }
.tg-platform .tg-app-drawer .tg-side-close{
    display: inline-flex; align-items: center; justify-content: center;
    min-height: var(--tg-tap); min-width: var(--tg-tap);
    margin-bottom: var(--tg-s2);
    border: 1px solid var(--tg-line-soft); border-radius: var(--tg-r-sm);
    background: transparent; color: var(--tg-text-2);
    font: inherit; cursor: pointer;
  }}
@media (max-width: 900px) {.tg-platform:has(.tg-app-drawer) .tg-nav > *:not(.tg-nav-cart){ display: none; }
.tg-platform:has(.tg-app-drawer) .tg-head-in{ gap: var(--tg-s3); }}
@media (prefers-reduced-motion: reduce) {.tg-platform .tg-app-drawer .tg-side{ transition: none; }}
.tg-platform .tg-card{
  background: var(--tg-charcoal);
  border: 1px solid var(--tg-line-soft);
  border-radius: var(--tg-r);
  padding: var(--tg-s5);
}
.tg-platform .tg-card + .tg-card{ margin-top: var(--tg-s4); }
.tg-platform .tg-card-head{
  display: flex; align-items: baseline; justify-content: space-between;
  gap: var(--tg-s3); flex-wrap: wrap; margin-bottom: var(--tg-s4);
}
.tg-platform .tg-card-head h2, .tg-platform .tg-card-head h3{ margin: 0; }
.tg-platform .tg-card-accent{ border-top: 3px solid var(--tg-gold); }
.tg-platform .tg-stat{ background: var(--tg-charcoal-2); border: 1px solid var(--tg-line-soft); border-radius: var(--tg-r); padding: var(--tg-s4); }
.tg-platform .tg-stat .k{ font-size: .74rem; text-transform: uppercase; letter-spacing: .1em; color: var(--tg-text-3); }
.tg-platform .tg-stat .v{ font-size: 1.9rem; font-weight: 700; color: var(--tg-gold-bright); line-height: 1.2; margin-top: var(--tg-s1); }
.tg-platform .tg-stat .s{ font-size: .82rem; color: var(--tg-text-3); }
.tg-platform .tg-btn{
  display: inline-flex; align-items: center; justify-content: center; gap: var(--tg-s2);
  min-height: var(--tg-tap); padding: var(--tg-s3) var(--tg-s5);
  border-radius: var(--tg-r-sm); border: 1px solid var(--tg-line);
  background: var(--tg-charcoal-2); color: var(--tg-text);
  font: inherit; font-size: .95rem; font-weight: 600; cursor: pointer;
  transition: background .15s, border-color .15s, transform .08s;
  text-align: center;
}
.tg-platform .tg-btn:hover{ background: var(--tg-charcoal-3); text-decoration: none; }
.tg-platform .tg-btn:active{ transform: translateY(1px); }
.tg-platform .tg-btn[disabled], .tg-platform .tg-btn[aria-disabled="true"]{ opacity: .5; cursor: not-allowed; }
.tg-platform .tg-btn-primary{
  background: linear-gradient(145deg, var(--tg-gold), var(--tg-gold-dim));
  border-color: var(--tg-gold-dim); color: #131006;
}
.tg-platform .tg-btn-primary:hover{ background: linear-gradient(145deg, var(--tg-gold-bright), var(--tg-gold)); }
.tg-platform .tg-btn-ghost{ background: transparent; }
.tg-platform .tg-btn-danger{ border-color: rgba(192,86,86,.5); color: #e79393; background: var(--tg-bad-wash); }
.tg-platform .tg-btn-danger:hover{ background: rgba(192,86,86,.24); }
.tg-platform .tg-btn-sm{ min-height: 34px; padding: var(--tg-s1) var(--tg-s3); font-size: .85rem; }
.tg-platform .tg-btn-block{ width: 100%; }
.tg-platform .tg-spin{
  width: 15px; height: 15px; border-radius: 50%; flex: none;
  border: 2px solid rgba(0,0,0,.28); border-top-color: currentColor;
  animation: tg-rot .7s linear infinite;
}
@keyframes tg-rot { to { transform: rotate(360deg); } }
.tg-platform .tg-field{ margin-bottom: var(--tg-s4); }
.tg-platform .tg-label{ display: block; font-size: .85rem; font-weight: 600; color: var(--tg-text); margin-bottom: var(--tg-s2); }
.tg-platform .tg-hint{ font-size: .8rem; color: var(--tg-text-3); margin-top: var(--tg-s1); }
.tg-platform .tg-req{ color: var(--tg-gold); }
.tg-platform .tg-input, .tg-platform .tg-select, .tg-platform .tg-textarea{
  width: 100%; min-height: var(--tg-tap);
  padding: var(--tg-s3); font: inherit; font-size: .95rem;
  color: var(--tg-text); background: var(--tg-charcoal-2);
  border: 1px solid var(--tg-line); border-radius: var(--tg-r-sm);
  transition: border-color .15s, box-shadow .15s;
}
.tg-platform .tg-textarea{ min-height: 96px; resize: vertical; }
.tg-platform .tg-input:focus, .tg-platform .tg-select:focus, .tg-platform .tg-textarea:focus{
  border-color: var(--tg-gold); box-shadow: 0 0 0 3px var(--tg-gold-wash); outline: none;
}
.tg-platform .tg-input::placeholder, .tg-platform .tg-textarea::placeholder{ color: var(--tg-text-3); }
.tg-platform .tg-input[aria-invalid="true"], .tg-platform .tg-textarea[aria-invalid="true"]{ border-color: var(--tg-bad); }
.tg-platform .tg-select{
  appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, var(--tg-text-2) 50%),
                    linear-gradient(135deg, var(--tg-text-2) 50%, transparent 50%);
  background-position: calc(100% - 19px) 50%, calc(100% - 14px) 50%;
  background-size: 5px 5px, 5px 5px; background-repeat: no-repeat;
  padding-right: var(--tg-s6);
}
.tg-platform .tg-input:disabled, .tg-platform .tg-select:disabled, .tg-platform .tg-textarea:disabled{
  opacity: .55; cursor: not-allowed; background: var(--tg-charcoal);
}
.tg-platform .tg-check{ display: flex; align-items: flex-start; gap: var(--tg-s3); min-height: var(--tg-tap); padding: var(--tg-s2) 0; cursor: pointer; }
.tg-platform .tg-check input{ width: 20px; height: 20px; margin: 2px 0 0; flex: none; accent-color: var(--tg-gold); cursor: pointer; }
.tg-platform .tg-check span{ font-size: .92rem; color: var(--tg-text-2); }
.tg-platform .tg-radios{ display: flex; flex-direction: column; gap: var(--tg-s1); }
.tg-platform .tg-radio{
  display: flex; align-items: center; gap: var(--tg-s3);
  min-height: var(--tg-tap); padding: var(--tg-s2) var(--tg-s3);
  border: 1px solid var(--tg-line); border-radius: var(--tg-r-sm);
  background: var(--tg-charcoal-2); cursor: pointer;
}
.tg-platform .tg-radio:hover{ border-color: var(--tg-gold-dim); }
.tg-platform .tg-radio input{ width: 18px; height: 18px; flex: none; accent-color: var(--tg-gold); cursor: pointer; }
.tg-platform .tg-radio:has(input:checked){ border-color: var(--tg-gold); background: var(--tg-gold-wash); }
.tg-platform .tg-toggle{ display: flex; align-items: center; justify-content: space-between; gap: var(--tg-s4); min-height: var(--tg-tap); padding: var(--tg-s2) 0; }
.tg-platform .tg-toggle-t{ font-size: .92rem; color: var(--tg-text); }
.tg-platform .tg-toggle-t small{ display: block; color: var(--tg-text-3); font-size: .8rem; }
.tg-platform .tg-switch{ position: relative; flex: none; width: 48px; height: 28px; }
.tg-platform .tg-switch input{ position: absolute; opacity: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.tg-platform .tg-switch span{
  position: absolute; inset: 0; border-radius: 999px;
  background: var(--tg-charcoal-3); border: 1px solid var(--tg-line);
  transition: background .18s, border-color .18s; pointer-events: none;
}
.tg-platform .tg-switch span::after{
  content: ""; position: absolute; top: 3px; left: 3px;
  width: 20px; height: 20px; border-radius: 50%;
  background: var(--tg-text-2); transition: transform .18s, background .18s;
}
.tg-platform .tg-switch input:checked + span{ background: var(--tg-gold-wash); border-color: var(--tg-gold); }
.tg-platform .tg-switch input:checked + span::after{ transform: translateX(20px); background: var(--tg-gold); }
.tg-platform .tg-switch input:focus-visible + span{ outline: 2px solid var(--tg-gold-bright); outline-offset: 2px; }
.tg-platform .tg-switch input:disabled + span{ opacity: .45; }
.tg-platform .tg-switch input:disabled{ cursor: not-allowed; }
.tg-platform .tg-tabs{
  display: flex; gap: var(--tg-s1); flex-wrap: wrap;
  border-bottom: 1px solid var(--tg-line-soft); margin-bottom: var(--tg-s5);
}
.tg-platform .tg-tabs button{
  min-height: var(--tg-tap); padding: var(--tg-s3) var(--tg-s4);
  border: 0; border-bottom: 2px solid transparent;
  background: transparent; color: var(--tg-text-3);
  font: inherit; font-size: .94rem; font-weight: 600; cursor: pointer;
}
.tg-platform .tg-tabs button:hover{ color: var(--tg-text); }
.tg-platform .tg-tabs button[aria-selected="true"]{ color: var(--tg-gold-bright); border-bottom-color: var(--tg-gold); }
.tg-platform .tg-table-wrap{ overflow-x: auto; border: 1px solid var(--tg-line-soft); border-radius: var(--tg-r); }
.tg-platform .tg-table{ width: 100%; border-collapse: collapse; font-size: .9rem; min-width: 520px; }
.tg-platform .tg-table caption{ text-align: left; padding: var(--tg-s3) var(--tg-s4); color: var(--tg-text-3); font-size: .84rem; }
.tg-platform .tg-table th, .tg-platform .tg-table td{ padding: var(--tg-s3) var(--tg-s4); text-align: left; border-bottom: 1px solid var(--tg-line-soft); }
.tg-platform .tg-table th{
  background: var(--tg-charcoal-2); color: var(--tg-text-3);
  font-size: .74rem; text-transform: uppercase; letter-spacing: .09em; font-weight: 700;
  position: sticky; top: 0;
}
.tg-platform .tg-table tbody tr:hover{ background: rgba(255,255,255,.022); }
.tg-platform .tg-table tbody tr:last-child td{ border-bottom: 0; }
.tg-platform .tg-badge{
  display: inline-flex; align-items: center; gap: 6px;
  padding: 3px 10px; border-radius: 999px;
  font-size: .74rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
  border: 1px solid var(--tg-line); background: var(--tg-charcoal-3); color: var(--tg-text-2);
}
.tg-platform .tg-badge-ok{ background: var(--tg-ok-wash);   border-color: rgba(79,157,105,.42);  color: #7fc394; }
.tg-platform .tg-badge-warn{ background: var(--tg-warn-wash); border-color: rgba(201,146,47,.42);  color: #e0b567; }
.tg-platform .tg-badge-bad{ background: var(--tg-bad-wash);  border-color: rgba(192,86,86,.42);   color: #e08d8d; }
.tg-platform .tg-badge-gold{ background: var(--tg-gold-wash); border-color: rgba(200,161,90,.42);  color: var(--tg-gold-bright); }
.tg-platform .tg-msg{
  display: none; padding: var(--tg-s3) var(--tg-s4);
  border-radius: var(--tg-r-sm); border: 1px solid var(--tg-line);
  font-size: .92rem; margin: var(--tg-s3) 0;
}
.tg-platform .tg-msg.tg-show{ display: block; }
.tg-platform .tg-msg b{ display: block; margin-bottom: 2px; }
.tg-platform .tg-ok{ background: var(--tg-ok-wash);   border-color: rgba(79,157,105,.4); color: #8fcea4; }
.tg-platform .tg-bad{ background: var(--tg-bad-wash);  border-color: rgba(192,86,86,.4);  color: #eb9c9c; }
.tg-platform .tg-warnm{ background: var(--tg-warn-wash); border-color: rgba(201,146,47,.4); color: #e6c27e; }
.tg-platform .tg-infom{ background: var(--tg-info-wash); border-color: rgba(120,150,200,.34); color: #b9c9e4; }
.tg-platform .tg-empty{
  border: 1px dashed var(--tg-line); border-radius: var(--tg-r);
  padding: var(--tg-s5); text-align: center; color: var(--tg-text-3);
  background: rgba(255,255,255,.012);
}
.tg-platform .tg-empty h3{ color: var(--tg-text-2); }
.tg-platform .tg-empty p{ margin-bottom: 0; }
.tg-platform .tg-notice{
  display: flex; gap: var(--tg-s3); align-items: flex-start;
  padding: var(--tg-s4); border-radius: var(--tg-r);
  background: var(--tg-warn-wash); border: 1px solid rgba(201,146,47,.35);
  color: #e6c894; font-size: .9rem;
}
.tg-platform .tg-notice b{ color: #f0d9a6; }
.tg-platform .tg-dialog-back{
  position: fixed; inset: 0; z-index: 100;
  background: rgba(0,0,0,.72); backdrop-filter: blur(3px);
  display: grid; place-items: center; padding: var(--tg-s4);
}
.tg-platform .tg-dialog{
  width: 100%; max-width: 520px; max-height: 88vh; overflow-y: auto;
  background: var(--tg-charcoal); border: 1px solid var(--tg-line);
  border-radius: var(--tg-r-lg); box-shadow: var(--tg-shadow-lg);
  padding: var(--tg-s5);
}
.tg-platform .tg-dialog h2{ margin-top: 0; }
.tg-platform .tg-dialog-actions{ display: flex; gap: var(--tg-s3); justify-content: flex-end; flex-wrap: wrap; margin-top: var(--tg-s5); }
@media (max-width: 620px) {.tg-platform .tg-dialog-actions{ flex-direction: column-reverse; }
.tg-platform .tg-dialog-actions .tg-btn{ width: 100%; }}
.tg-platform .tg-toasts{
  position: fixed; right: var(--tg-s4); bottom: var(--tg-s4); z-index: 150;
  display: flex; flex-direction: column; gap: var(--tg-s2);
  max-width: min(400px, calc(100vw - 32px));
}
.tg-platform .tg-toast{
  padding: var(--tg-s3) var(--tg-s4); border-radius: var(--tg-r-sm);
  background: var(--tg-charcoal-2); border: 1px solid var(--tg-line);
  box-shadow: var(--tg-shadow); font-size: .9rem; color: var(--tg-text);
  animation: tg-in .18s ease-out;
}
.tg-platform .tg-toast-ok{ border-left: 3px solid var(--tg-ok); }
.tg-platform .tg-toast-bad{ border-left: 3px solid var(--tg-bad); }
.tg-platform .tg-toast-info{ border-left: 3px solid var(--tg-gold); }
@keyframes tg-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.tg-platform .tg-hero{
  padding: var(--tg-s8) 0;
  background:
    radial-gradient(1000px 420px at 12% -8%, rgba(200,161,90,.13), transparent 62%),
    linear-gradient(180deg, var(--tg-charcoal), var(--tg-black));
  border-bottom: 1px solid var(--tg-line-soft);
}
.tg-platform .tg-hero h1{ max-width: 20ch; }
.tg-platform .tg-hero .tg-lede{ font-size: 1.14rem; }
.tg-platform .tg-cta{ display: flex; gap: var(--tg-s3); flex-wrap: wrap; margin-top: var(--tg-s5); }
@media (max-width: 480px) {.tg-platform .tg-cta .tg-btn{ width: 100%; }}
.tg-platform .tg-module{
  background: var(--tg-charcoal); border: 1px solid var(--tg-line-soft);
  border-left: 3px solid var(--tg-gold);
  border-radius: var(--tg-r); padding: var(--tg-s5); height: 100%;
}
.tg-platform .tg-module h3{ color: var(--tg-gold-bright); }
.tg-platform .tg-module .x{ font-size: .78rem; text-transform: uppercase; letter-spacing: .1em; color: var(--tg-text-3); margin-bottom: var(--tg-s3); }
.tg-platform .tg-steps{ counter-reset: s; list-style: none; padding: 0; margin: 0; display: grid; gap: var(--tg-s4); }
.tg-platform .tg-steps li{ counter-increment: s; display: flex; gap: var(--tg-s4); align-items: flex-start; }
.tg-platform .tg-steps li::before{
  content: counter(s); flex: none;
  width: 34px; height: 34px; border-radius: 50%;
  display: grid; place-items: center; font-weight: 700; font-size: .9rem;
  background: var(--tg-gold-wash); border: 1px solid rgba(200,161,90,.45); color: var(--tg-gold-bright);
}
.tg-platform .tg-steps b{ display: block; color: var(--tg-text); }
.tg-platform .tg-steps span{ color: var(--tg-text-2); font-size: .93rem; }
.tg-platform .tg-foot{
  border-top: 1px solid var(--tg-line-soft);
  padding: var(--tg-s6) 0; margin-top: var(--tg-s7);
  color: var(--tg-text-3); font-size: .86rem;
}
.tg-platform .tg-auth{ min-height: calc(100vh - 64px); display: grid; place-items: center; padding: var(--tg-s6) var(--tg-s4); }
.tg-platform .tg-auth-card{ width: 100%; max-width: 430px; }
.tg-platform .tg-dl{ display: grid; grid-template-columns: max-content 1fr; gap: var(--tg-s2) var(--tg-s5); margin: 0; font-size: .92rem; }
.tg-platform .tg-dl dt{ color: var(--tg-text-3); }
.tg-platform .tg-dl dd{ margin: 0; color: var(--tg-text); }
@media (max-width: 560px) {.tg-platform .tg-dl{ grid-template-columns: 1fr; gap: 2px; }
.tg-platform .tg-dl dd{ margin-bottom: var(--tg-s2); }}
.tg-platform .tg-dl dd, .tg-platform .tg-kv-v, .tg-platform .tg-val, .tg-platform .tg-card p, .tg-platform .tg-tl-note, .tg-platform td, .tg-platform th{
  overflow-wrap: anywhere;
  word-break: break-word;
}
@media print {.tg-platform .tg-head, .tg-platform .tg-side, .tg-platform .tg-toasts, .tg-platform .tg-cta{ display: none !important; }
.tg-platform{ background: #fff; color: #000; }}
.tg-platform .tg-shop-ph{
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: var(--tg-s2);
  width: 100%; height: 160px; margin-bottom: var(--tg-s3);
  border: 1px dashed var(--tg-line);
  border-radius: 8px;
  background:
    repeating-linear-gradient(135deg,
      var(--tg-charcoal-2) 0 10px,
      var(--tg-charcoal) 10px 20px);
}
.tg-platform .tg-book-wide{
  width: 100%;
  max-width: 1050px;
  margin-left: auto;
  margin-right: auto;
}
.tg-platform .tg-fc-wrap{ width: 100%; max-width: 1050px; margin-left: auto; margin-right: auto; }
.tg-platform .tg-fc-host{
  --tg-fc-line: #2a2a2e;
  --tg-fc-dim: #8b8b93;
  --tg-fc-gold: #c8a049;
  --tg-fc-ink: #ececef;
}
.tg-platform .tg-fc-host.fc{
  background: transparent;
  color: var(--tg-fc-ink);
  font-size: 15px;
}
.tg-platform .tg-fc-host.fc .fc-scrollgrid, .tg-platform .tg-fc-host.fc .fc-scrollgrid td, .tg-platform .tg-fc-host.fc .fc-scrollgrid th{
  border-color: var(--tg-fc-line);
}
.tg-platform .tg-fc-host.fc .fc-scrollgrid{ border-radius: 10px; overflow: hidden; }
.tg-platform .tg-fc-host.fc .fc-toolbar-title{
  font-size: 1.2rem;
  font-weight: 650;
  letter-spacing: .2px;
  color: var(--tg-fc-ink);
}
.tg-platform .tg-fc-host.fc .fc-toolbar.fc-header-toolbar{ margin-bottom: 14px; }
.tg-platform .tg-fc-host.fc .fc-button-primary{
  background: #1b1b1f;
  border: 1px solid var(--tg-fc-line);
  color: var(--tg-fc-ink);
  border-radius: 8px;
  padding: 8px 12px;
  min-height: 40px;
  min-width: 44px;
  box-shadow: none;
  text-transform: none;
  font-weight: 600;
}
.tg-platform .tg-fc-host.fc .fc-button-primary:hover:not(:disabled){
  background: #232329;
  border-color: var(--tg-fc-gold);
  color: #fff;
}
.tg-platform .tg-fc-host.fc .fc-button-primary:focus-visible{
  outline: 2px solid var(--tg-fc-gold);
  outline-offset: 2px;
  box-shadow: none;
}
.tg-platform .tg-fc-host.fc .fc-button-primary:disabled{
  background: #141417;
  border-color: var(--tg-fc-line);
  color: #55555c;
  opacity: 1;
}
.tg-platform .tg-fc-host.fc .fc-col-header-cell{
  background: #17171a;
  padding: 10px 0;
}
.tg-platform .tg-fc-host.fc .fc-col-header-cell-cushion{
  color: var(--tg-fc-dim);
  font-size: .78rem;
  font-weight: 600;
  letter-spacing: .09em;
  text-transform: uppercase;
  padding: 4px;
}
.tg-platform .tg-fc-host.fc .fc-daygrid-day{ background: #141417; transition: background .12s ease; }
.tg-platform .tg-fc-host.fc .fc-daygrid-day-frame{ min-height: 62px; padding: 4px; }
.tg-platform .tg-fc-host.fc .fc-daygrid-day-number{
  color: var(--tg-fc-dim);
  font-size: .95rem;
  padding: 6px 8px;
  width: 100%;
  text-align: center;
}
.tg-platform .tg-fc-host.fc .fc-day-today{ background: #1b1b20 !important; }
.tg-platform .tg-fc-host.fc .fc-day-today .fc-daygrid-day-number{
  color: var(--tg-fc-ink);
  font-weight: 700;
  position: relative;
}
.tg-platform .tg-fc-host.fc .fc-day-today .fc-daygrid-day-number::after{
  content: "";
  position: absolute;
  left: 50%; transform: translateX(-50%);
  bottom: 2px; width: 16px; height: 2px;
  background: var(--tg-fc-dim);
  border-radius: 2px;
}
.tg-platform .tg-fc-host{
  --tg-fc-open:   #009E73;  
  --tg-fc-noavail:#E69F00;  
  --tg-fc-shut:   #85858f;  
}
.tg-platform .tg-fc-host.fc .tg-fc-available{ cursor: pointer; background: #141417; }
.tg-platform .tg-fc-host.fc .tg-fc-available .fc-daygrid-day-number{
  background: var(--tg-fc-open);
  color: #04140f;
  font-weight: 500;
  border-radius: var(--tg-r-sm);
}
.tg-platform .tg-fc-host.fc .tg-fc-available:hover{ background: #24291f; }
.tg-platform .tg-fc-host.fc .tg-fc-available:hover .fc-daygrid-day-number{ color: #fff; }
.tg-platform .tg-fc-host.fc .tg-fc-selected{ background: #2a2413 !important; }
.tg-platform .tg-fc-host.fc .tg-fc-selected .fc-daygrid-day-number{
  color: var(--tg-fc-gold);
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.tg-platform .tg-fc-host.fc .tg-fc-selected .fc-daygrid-day-frame{
  box-shadow: inset 0 0 0 2px var(--tg-fc-gold);
  border-radius: 6px;
}
.tg-platform .tg-fc-host.fc .tg-fc-loading .fc-daygrid-day-number{
  color: #5c5c64;
}
.tg-platform .tg-fc-host.fc .tg-fc-loading .fc-daygrid-day-frame{
  background-image: linear-gradient(100deg, transparent 38%, rgba(200,160,73,.10) 50%, transparent 62%);
  background-size: 220% 100%;
  animation: tgFcShimmer 1.15s linear infinite;
  border-radius: 6px;
}
@keyframes tgFcShimmer { from { background-position: 180% 0; } to { background-position: -40% 0; } }
.tg-platform .tg-fc-host.fc .tg-fc-unknown{ cursor: default; background: #141417; }
.tg-platform .tg-fc-host.fc .tg-fc-unknown .fc-daygrid-day-number{
  color: #6b6b74;
  border-bottom: 1px dotted #6b6b74;
}
.tg-platform .tg-fc-host.fc .tg-fc-noavail{ cursor: default; background: #141417; }
.tg-platform .tg-fc-host.fc .tg-fc-noavail .fc-daygrid-day-number{
  background: transparent;
  color: var(--tg-fc-noavail);
  border: 1px solid var(--tg-fc-noavail);
  border-radius: var(--tg-r-sm);
  position: relative;
}
.tg-platform .tg-fc-host.fc .tg-fc-noavail .fc-daygrid-day-frame::after{
  content: "";
  display: block;
  width: 5px; height: 5px;
  margin: 3px auto 0;
  border-radius: 50%;
  background: var(--tg-fc-noavail);
}
.tg-platform .tg-fc-host.fc .tg-fc-closed{ cursor: default; background: #101013; }
.tg-platform .tg-fc-host.fc .tg-fc-closed .fc-daygrid-day-number{
  background: transparent;
  color: var(--tg-fc-shut);
  text-decoration: line-through;
  text-decoration-thickness: 1.5px;
}
.tg-platform .tg-fc-host.fc .fc-daygrid-day[aria-disabled="true"]:not(.tg-fc-noavail):not(.tg-fc-closed):not(.tg-fc-unknown){ cursor: default; background: #101013; }
.tg-platform .tg-fc-host.fc .fc-daygrid-day[aria-disabled="true"]{ cursor: default; }
.tg-platform .tg-fc-host.fc .fc-daygrid-day[aria-disabled="true"]:not(.tg-fc-noavail):not(.tg-fc-closed):not(.tg-fc-unknown) .fc-daygrid-day-number{
  color: #4a4a52;
  text-decoration: line-through;
  text-decoration-thickness: 1px;
}
.tg-platform .tg-fc-host.fc .fc-day-past .fc-daygrid-day-number{ color: #3f3f46; }
.tg-platform .tg-fc-host.fc a:focus-visible, .tg-platform .tg-fc-host.fc td:focus-visible{
  outline: 2px solid var(--tg-fc-gold);
  outline-offset: -2px;
}
@media (prefers-reduced-motion: reduce) {.tg-platform .tg-fc-host.fc .tg-fc-loading .fc-daygrid-day-frame{ animation: none; }}
@media (max-width: 560px) {.tg-platform .tg-fc-host.fc{ font-size: 13px; }
.tg-platform .tg-fc-host.fc .fc-daygrid-day-frame{ min-height: 46px; padding: 2px; }
.tg-platform .tg-fc-host.fc .fc-daygrid-day-number{ padding: 5px 2px; font-size: .9rem; }
.tg-platform .tg-fc-host.fc .fc-col-header-cell-cushion{ font-size: .66rem; letter-spacing: .04em; padding: 2px; }
.tg-platform .tg-fc-host.fc .fc-toolbar-title{ font-size: 1.02rem; }
.tg-platform .tg-fc-host.fc .fc-button-primary{ padding: 7px 10px; min-height: 40px; }
.tg-platform .tg-fc-host.fc .fc-toolbar.fc-header-toolbar{ gap: 6px; margin-bottom: 10px; }}
@media (max-width: 360px) {.tg-platform .tg-fc-host.fc{ font-size: 12px; }
.tg-platform .tg-fc-host.fc .fc-daygrid-day-frame{ min-height: 40px; }
.tg-platform .tg-fc-host.fc .fc-daygrid-day-number{ padding: 4px 1px; font-size: .84rem; }
.tg-platform .tg-fc-host.fc .fc-col-header-cell-cushion{ font-size: .6rem; letter-spacing: 0; }
.tg-platform .tg-fc-host.fc .fc-toolbar-title{ font-size: .95rem; }
.tg-platform .tg-fc-host.fc .fc-button-primary{ padding: 6px 8px; min-width: 40px; }}
.tg-platform .tg-legend{
  list-style: none;
  margin: var(--tg-s3) 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: var(--tg-s2) var(--tg-s4);
}
.tg-platform .tg-legend-item{
  display: flex;
  align-items: center;
  gap: var(--tg-s2);
  font-size: .82rem;
  color: var(--tg-text-2);
}
.tg-platform .tg-legend-sw{
  width: 18px; height: 18px;
  border-radius: var(--tg-r-sm);
  flex: 0 0 auto;
  position: relative;
}
.tg-platform .tg-legend-avail{ background: #009E73; }
.tg-platform .tg-legend-noavail{
  background: transparent;
  border: 1px solid #E69F00;
}
.tg-platform .tg-legend-noavail::after{
  content: "";
  position: absolute;
  left: 50%; top: 50%;
  width: 5px; height: 5px;
  margin: -2.5px 0 0 -2.5px;
  border-radius: 50%;
  background: #E69F00;
}
.tg-platform .tg-legend-closed{
  background: transparent;
  border: 1px solid #85858f;
}
.tg-platform .tg-legend-closed::after{
  content: "";
  position: absolute;
  left: 2px; right: 2px; top: 50%;
  height: 1.5px;
  margin-top: -.75px;
  background: #85858f;
}
.tg-platform .tg-fc-host, .tg-platform .tg-fc-host.fc, .tg-platform .tg-fc-host.fc-view-harness{ max-width: 100%; }
.tg-platform .tg-fc-host table{ width: 100% !important; table-layout: fixed; }
.tg-platform .tg-grid-3 > .tg-shop-card, .tg-platform .tg-grid > .tg-shop-card{ height: 100%; }
.tg-platform .tg-shop-card{
  display: flex; flex-direction: column; gap: var(--tg-s3);
  height: 100%;
}
.tg-platform .tg-shop-media{
  flex: none;
  width: 100%; aspect-ratio: 1 / 1;
  box-sizing: border-box;
  display: flex; align-items: center; justify-content: center;
  padding: 16px;
  background: #f2f2ef;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.08);
}
.tg-platform .tg-shop-img{ width: 100%; height: 100%; object-fit: contain; display: block; }
.tg-platform .tg-shop-media-empty{
  flex-direction: column; gap: var(--tg-s2);
  background: repeating-linear-gradient(135deg,
    var(--tg-charcoal-2) 0 10px, var(--tg-charcoal) 10px 20px);
  border: 1px dashed var(--tg-line);
}
.tg-platform .tg-shop-title{
  margin: 0;
  font-size: 1.02rem; line-height: 1.3;
  min-height: 2.6em;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  overflow: hidden;
}
.tg-platform .tg-shop-desc{
  margin: 0; line-height: 1.45;
  min-height: 4.35em;
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;
  overflow: hidden;
}
.tg-platform .tg-shop-foot{
  margin-top: auto;
  display: flex; flex-direction: column; gap: var(--tg-s3);
}
.tg-platform .tg-shop-size{
  width: 100%; min-height: var(--tg-tap);
  padding: var(--tg-s2) var(--tg-s3);
  background: var(--tg-charcoal-2); color: var(--tg-text);
  border: 1px solid var(--tg-line-soft); border-radius: var(--tg-r-sm);
  font: inherit;
}
.tg-platform .tg-shop-size:focus-visible{ outline: 2px solid var(--tg-gold); outline-offset: 2px; }
.tg-platform .tg-shop-price{ margin: 0; font-weight: 600; font-size: 1.08rem; color: var(--tg-text); }
.tg-platform .tg-nav-cart{
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.tg-platform .tg-nav-cart-n{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--tg-gold);
  color: #17140c;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1;
}
.tg-platform .tg-cart-list{ display: flex; flex-direction: column; gap: 14px; }
.tg-platform .tg-cart-row{
  display: grid;
  grid-template-columns: 96px 1fr auto;
  gap: 14px;
  align-items: start;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--tg-line-soft);
}
.tg-platform .tg-cart-row:last-child{ border-bottom: 0; padding-bottom: 0; }
.tg-platform .tg-cart-media{
  width: 96px;
  height: 96px;
  border-radius: 10px;
  background: #f4f2ee;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.tg-platform .tg-cart-main{ min-width: 0; }
.tg-platform .tg-cart-name{ margin: 0 0 4px; font-weight: 600; }
.tg-platform .tg-cart-side{
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
}
.tg-platform .tg-cart-qty{ display: inline-flex; align-items: center; gap: 8px; }
.tg-platform .tg-cart-qty-n{ min-width: 2ch; text-align: center; font-weight: 600; }
.tg-platform .tg-cart-total{
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--tg-line-soft);
}
.tg-platform .tg-cart-subtotal{ margin: 0; font-size: 1.15rem; font-weight: 700; }
@media (max-width: 560px) {.tg-platform .tg-cart-row{ grid-template-columns: 72px 1fr; }
.tg-platform .tg-cart-media{ width: 72px; height: 72px; }
.tg-platform .tg-cart-side{ grid-column: 1 / -1; align-items: flex-start; }}
.tg-platform .tg-shop-sold{
  display: inline-flex; align-items: center; gap: var(--tg-s2);
  padding: var(--tg-s2) var(--tg-s3);
  border: 1px solid var(--tg-line-soft); border-radius: var(--tg-r-sm);
  color: var(--tg-text-3); font-size: .9rem;
}
.tg-platform .tg-sr-only{
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.tg-platform .tg-ta{ position: relative; }
.tg-platform .tg-ta-list{
  position: absolute; z-index: 40; top: calc(100% + 2px); left: 0; right: 0;
  margin: 0; padding: var(--tg-s1) 0; list-style: none; max-height: 20rem;
  overflow-y: auto; background: var(--tg-surface, #fff);
  border: 1px solid var(--tg-border, #d0d0d0); border-radius: var(--tg-r2, 6px);
  box-shadow: 0 10px 28px rgba(0, 0, 0, .18);
}
.tg-platform .tg-ta-item{
  display: flex; flex-direction: column; gap: 2px; cursor: pointer;
  padding: var(--tg-s2) var(--tg-s3);
}
.tg-platform .tg-ta-item.is-active, .tg-platform .tg-ta-item:hover{ background: var(--tg-surface-2, #f1f1f1); }
.tg-platform .tg-ta-name{ font-weight: 600; font-size: .92rem; color: var(--tg-text); }
.tg-platform .tg-ta-meta{ font-size: .8rem; color: var(--tg-text-3); }
.tg-platform .tg-chosen{
  display: flex; align-items: center; justify-content: space-between; gap: var(--tg-s3);
  padding: var(--tg-s2) var(--tg-s3); border: 1px solid var(--tg-border, #d0d0d0);
  border-radius: var(--tg-r2, 6px); background: var(--tg-surface-2, #f7f7f7);
}
.tg-platform .tg-chosen-who{ display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.tg-platform .tg-chosen-name{ font-weight: 600; color: var(--tg-text); }
.tg-platform .tg-chosen-meta{
  font-size: .8rem; color: var(--tg-text-3);
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.tg-platform .tg-side-nav a{
  display: flex; align-items: center; gap: var(--tg-s2);
  width: 100%; text-align: left; min-height: var(--tg-tap);
  padding: var(--tg-s2) var(--tg-s3);
  border: 1px solid transparent; border-radius: var(--tg-r-sm);
  background: transparent; color: var(--tg-text-2);
  font: inherit; font-size: .92rem; cursor: pointer;
  text-decoration: none;
}
.tg-platform .tg-side-nav a:hover{
  background: var(--tg-charcoal-2); color: var(--tg-text);
  text-decoration: none;
}
.tg-platform .tg-side-nav a.is-active{
  background: var(--tg-gold-wash); color: var(--tg-gold-bright);
  border-color: rgba(200,161,90,.3); font-weight: 600;
}
@media (max-width: 900px) {.tg-platform .tg-side-nav a{ width: auto; }
.tg-platform .tg-app-drawer .tg-side-nav a{ width: 100%; }}
.tg-platform .tg-app-rail{
  grid-template-columns: 168px 230px minmax(0, 1fr);
  gap: var(--tg-s4);
}
.tg-platform .tg-rail{
  display: flex;
  flex-direction: column;
  gap: 4px;
  position: sticky;
  top: 16px;
  padding-right: var(--tg-s3);
  border-right: 1px solid var(--tg-line-soft);
}
.tg-platform .tg-rail-btn{
  appearance: none;
  -webkit-appearance: none;
  display: block;
  width: 100%;
  text-align: left;
  padding: 11px 13px;
  border: 1px solid transparent;
  border-radius: var(--tg-radius, 8px);
  background: transparent;
  color: var(--tg-text-dim, #9aa0a6);
  font: inherit;
  font-weight: 600;
  letter-spacing: .01em;
  cursor: pointer;
  transition: background .12s ease, color .12s ease, border-color .12s ease;
}
.tg-platform .tg-rail-btn:hover{
  background: var(--tg-charcoal-2);
  color: var(--tg-text);
}
.tg-platform .tg-rail-btn.is-active{
  background: var(--tg-charcoal-2);
  border-color: var(--tg-gold, #c9a227);
  color: var(--tg-gold, #c9a227);
}
.tg-platform .tg-rail-btn:focus-visible{
  outline: 2px solid var(--tg-gold, #c9a227);
  outline-offset: 2px;
}
@media (max-width: 900px) {.tg-platform .tg-app-rail{ grid-template-columns: 1fr; }
.tg-platform .tg-rail{
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    position: static;
    border-right: 0;
    border-bottom: 1px solid var(--tg-line-soft);
    padding: 0 0 var(--tg-s3) 0;
    scrollbar-width: none;
  }
.tg-platform .tg-rail::-webkit-scrollbar{ display: none; }
.tg-platform .tg-rail-btn{
    width: auto;
    flex: 0 0 auto;
    white-space: nowrap;
    scroll-snap-align: start;
  }}
.tg-platform .tg-stat-n{
  margin: 0;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -.01em;
  color: var(--tg-text);
}
.tg-platform .tg-stat-n.is-ok{ color: var(--tg-ok, #4caf7d); }
.tg-platform .tg-stat-n.is-bad{ color: var(--tg-bad, #d9534f); }
.tg-platform .tg-chart-bars{ display: flex; flex-direction: column; gap: 7px; }
.tg-platform .tg-chart-bar-row{
  display: grid;
  grid-template-columns: minmax(90px, 158px) minmax(0, 1fr) max-content;
  gap: var(--tg-s3);
  align-items: center;
  font-size: .9rem;
}
.tg-platform .tg-chart-bar-label{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--tg-text-dim, #9aa0a6);
}
.tg-platform .tg-chart-bar-track{
  display: block;
  height: 16px;
  border-radius: 3px;
  background: var(--tg-charcoal-2);
  overflow: hidden;
}
.tg-platform .tg-chart-bar-fill{
  display: block;
  height: 100%;
  border-radius: 3px;
  background: var(--tg-gold, #c9a227);
  min-width: 2px;
}
.tg-platform .tg-chart-bar-fill.is-ok{ background: var(--tg-ok, #4caf7d); }
.tg-platform .tg-chart-bar-fill.is-bad{ background: var(--tg-bad, #d9534f); }
.tg-platform .tg-chart-bar-fill.is-warn{ background: #d98b28; }
.tg-platform .tg-chart-bar-value{
  font-variant-numeric: tabular-nums;
  color: var(--tg-text);
  font-weight: 600;
}
.tg-platform .tg-chart{ width: 100%; overflow-x: auto; }
.tg-platform .tg-chart-svg{
  width: 100%;
  min-width: 420px;
  height: auto;
  color: var(--tg-text-dim, #9aa0a6);
  display: block;
}
.tg-platform .tg-chart-line{ stroke: var(--tg-gold, #c9a227); }
.tg-platform .tg-chart-line.is-ok{ stroke: var(--tg-ok, #4caf7d); }
.tg-platform .tg-chart-line.is-bad{ stroke: var(--tg-bad, #d9534f); }
.tg-platform .tg-chart-line.is-warn{ stroke: #d98b28; }
.tg-platform .tg-chart-line.is-gold{ stroke: var(--tg-gold, #c9a227); }
.tg-platform .tg-chart-dot{ fill: var(--tg-gold, #c9a227); }
.tg-platform .tg-chart-dot.is-ok{ fill: var(--tg-ok, #4caf7d); }
.tg-platform .tg-chart-dot.is-bad{ fill: var(--tg-bad, #d9534f); }
.tg-platform .tg-chart-dot.is-warn{ fill: #d98b28; }
.tg-platform .tg-chart-dot.is-gold{ fill: var(--tg-gold, #c9a227); }
.tg-platform .tg-chart-legend{
  display: flex;
  flex-wrap: wrap;
  gap: var(--tg-s3);
  margin-top: var(--tg-s3);
  font-size: .85rem;
  color: var(--tg-text-dim, #9aa0a6);
}
.tg-platform .tg-chart-legend-col{ flex-direction: column; gap: 6px; margin-top: 0; }
.tg-platform .tg-chart-key{ display: inline-flex; align-items: center; gap: 6px; }
.tg-platform .tg-chart-swatch{
  width: 11px;
  height: 11px;
  border-radius: 2px;
  background: var(--tg-gold, #c9a227);
  display: inline-block;
}
.tg-platform .tg-chart-swatch.is-ok{ background: var(--tg-ok, #4caf7d); }
.tg-platform .tg-chart-swatch.is-bad{ background: var(--tg-bad, #d9534f); }
.tg-platform .tg-chart-swatch.is-warn{ background: #d98b28; }
.tg-platform .tg-chart-swatch.is-gold{ background: var(--tg-gold, #c9a227); }
.tg-platform .tg-donut-row{
  display: flex;
  flex-wrap: wrap;
  gap: var(--tg-s5);
  align-items: center;
}
.tg-platform .tg-donut{ width: 160px; height: 160px; display: block; }
.tg-platform .tg-donut-seg{ stroke: var(--tg-gold, #c9a227); }
.tg-platform .tg-donut-seg.is-ok{ stroke: var(--tg-ok, #4caf7d); }
.tg-platform .tg-donut-seg.is-bad{ stroke: var(--tg-bad, #d9534f); }
.tg-platform .tg-donut-seg.is-warn{ stroke: #d98b28; }
.tg-platform .tg-donut-seg.is-gold{ stroke: var(--tg-gold, #c9a227); }
.tg-platform .tg-findings{ margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 9px; }
.tg-platform .tg-findings li{ line-height: 1.5; }
@media print {.tg-platform .tg-rail{ display: none !important; }}
.tg-platform .tg-filterbar{
  display: flex;
  flex-wrap: wrap;
  gap: var(--tg-s4);
  padding: var(--tg-s3) var(--tg-s4);
  margin-bottom: var(--tg-s4);
  border: 1px solid var(--tg-line-soft);
  border-radius: var(--tg-radius, 8px);
  background: var(--tg-charcoal-1, #16181a);
  align-items: flex-start;
  position: sticky;
  top: 0;
  z-index: 5;
}
.tg-platform .tg-filter-group{ display: flex; flex-direction: column; gap: 6px; }
.tg-platform .tg-filter-label{
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--tg-text-dim, #9aa0a6);
  font-weight: 600;
}
.tg-platform .tg-chipset{ display: flex; flex-wrap: wrap; gap: 4px; }
.tg-platform .tg-chip{
  appearance: none;
  -webkit-appearance: none;
  padding: 5px 11px;
  font: inherit;
  font-size: .84rem;
  line-height: 1.3;
  border: 1px solid var(--tg-line-soft);
  border-radius: 999px;
  background: transparent;
  color: var(--tg-text-dim, #9aa0a6);
  cursor: pointer;
  white-space: nowrap;
  transition: background .12s ease, color .12s ease, border-color .12s ease;
}
.tg-platform .tg-chip:hover{ background: var(--tg-charcoal-2); color: var(--tg-text); }
.tg-platform .tg-chip.is-active{
  background: var(--tg-gold, #c9a227);
  border-color: var(--tg-gold, #c9a227);
  color: #15171a;
  font-weight: 600;
}
.tg-platform .tg-chip.is-muted{ opacity: .55; font-style: italic; }
.tg-platform .tg-chip:focus-visible{ outline: 2px solid var(--tg-gold, #c9a227); outline-offset: 2px; }
.tg-platform .tg-table-wrap{ width: 100%; overflow-x: auto; }
.tg-platform .tg-table-sort{ width: 100%; border-collapse: collapse; font-size: .9rem; }
.tg-platform .tg-table-sort th, .tg-platform .tg-table-sort td{
  padding: 8px 12px;
  text-align: left;
  border-bottom: 1px solid var(--tg-line-soft);
  white-space: nowrap;
}
.tg-platform .tg-table-sort thead th{
  position: sticky;
  top: 0;
  background: var(--tg-charcoal-1, #16181a);
  font-size: .76rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--tg-text-dim, #9aa0a6);
  z-index: 1;
}
.tg-platform .tg-th-sort{ cursor: pointer; user-select: none; }
.tg-platform .tg-th-sort:hover{ color: var(--tg-text); }
.tg-platform .tg-th-sort.is-sorted{ color: var(--tg-gold, #c9a227); }
.tg-platform .tg-table-sort tbody tr:hover{ background: var(--tg-charcoal-2); }
.tg-platform .tg-collapse{ padding: 0; overflow: hidden; }
.tg-platform .tg-collapse-head{
  appearance: none;
  -webkit-appearance: none;
  display: block;
  width: 100%;
  text-align: left;
  padding: 14px 18px;
  font: inherit;
  font-weight: 600;
  background: transparent;
  border: 0;
  color: var(--tg-text);
  cursor: pointer;
}
.tg-platform .tg-collapse-head:hover{ background: var(--tg-charcoal-2); }
.tg-platform .tg-collapse-head.is-open{ border-bottom: 1px solid var(--tg-line-soft); }
.tg-platform .tg-collapse-head:focus-visible{ outline: 2px solid var(--tg-gold, #c9a227); outline-offset: -2px; }
.tg-platform .tg-collapse-body{ padding: var(--tg-s4); }
.tg-platform .tg-pager{
  display: flex;
  align-items: center;
  gap: var(--tg-s3);
  padding: 10px 14px;
  border: 1px solid var(--tg-line-soft);
  border-radius: var(--tg-radius, 8px);
  background: var(--tg-charcoal-1, #16181a);
}
.tg-platform .tg-pager-label{ font-size: .88rem; color: var(--tg-text-dim, #9aa0a6); }
.tg-platform .tg-pager button[disabled]{ opacity: .4; cursor: not-allowed; }
.tg-platform [data-noselect]{
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}
.tg-platform [data-noselect] *{ -webkit-user-drag: none; }
@media print {.tg-platform [data-noselect]{ display: none !important; }
.tg-platform .tg-filterbar{ display: none !important; }}
.tg-platform .tg-form-grid{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: var(--tg-s3) var(--tg-s4);
  align-items: end;
  padding: var(--tg-s4) 0;
  margin-bottom: var(--tg-s4);
  border-bottom: 1px solid var(--tg-line-soft);
}
.tg-platform .tg-form-grid label{ display: flex; flex-direction: column; gap: 5px; }
.tg-platform .tg-form-grid .tg-input{
  width: 100%;
  padding: 8px 10px;
  font: inherit;
  font-size: .92rem;
  color: var(--tg-text);
  background: var(--tg-charcoal-2);
  border: 1px solid var(--tg-line-soft);
  border-radius: var(--tg-radius, 8px);
  min-height: 38px;
}
.tg-platform .tg-form-grid .tg-input:focus-visible{
  outline: 2px solid var(--tg-gold, #c9a227);
  outline-offset: 1px;
  border-color: var(--tg-gold, #c9a227);
}
.tg-platform .tg-form-grid select.tg-input{ cursor: pointer; }
.tg-platform .tg-form-grid .tg-check{
  flex-direction: row;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  font-size: .92rem;
  color: var(--tg-text-dim, #9aa0a6);
}
.tg-platform .tg-form-grid .tg-check input[type="checkbox"]{
  width: 17px;
  height: 17px;
  accent-color: var(--tg-gold, #c9a227);
  cursor: pointer;
}
@media (max-width: 560px) {.tg-platform .tg-form-grid{ grid-template-columns: 1fr; }}
.tg-platform .tg-area-head{
  display: flex;
  flex-direction: column;
  gap: var(--tg-s3);
  padding-bottom: var(--tg-s3);
  border-bottom: 1px solid var(--tg-line-soft);
  margin-bottom: var(--tg-s2);
}
.tg-platform .tg-area-title{
  margin: 0;
  font-size: 1.35rem;
  font-weight: 700;
  letter-spacing: -.01em;
  color: var(--tg-text);
}
.tg-platform .tg-tabs{
  display: flex;
  flex-wrap: wrap;
  gap: 2px;
  border-bottom: 1px solid var(--tg-line-soft);
  margin: 0;
}
.tg-platform .tg-tab{
  appearance: none;
  -webkit-appearance: none;
  padding: 9px 15px;
  font: inherit;
  font-size: .92rem;
  font-weight: 600;
  color: var(--tg-text-dim, #9aa0a6);
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
  cursor: pointer;
  white-space: nowrap;
  transition: color .12s ease, border-color .12s ease;
}
.tg-platform .tg-tab:hover{ color: var(--tg-text); }
.tg-platform .tg-tab.is-active{
  color: var(--tg-gold, #c9a227);
  border-bottom-color: var(--tg-gold, #c9a227);
}
.tg-platform .tg-tab:focus-visible{
  outline: 2px solid var(--tg-gold, #c9a227);
  outline-offset: -2px;
  border-radius: 3px 3px 0 0;
}
.tg-platform .tg-kpis{
  display: grid;
  
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: var(--tg-s3);
}
.tg-platform .tg-kpi{
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;                
  padding: 13px 15px;
  background: var(--tg-charcoal-2);
  border: 1px solid var(--tg-line-soft);
  border-radius: var(--tg-radius, 8px);
}
.tg-platform .tg-kpi-label{
  margin: 0;
  font-size: .72rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--tg-text-dim, #9aa0a6);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.tg-platform .tg-kpi-value{
  margin: 0;
  
  font-size: clamp(1.15rem, 2.1vw, 1.75rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: var(--tg-text);
  min-width: 0;
  overflow-wrap: anywhere;
  font-variant-numeric: tabular-nums;
}
.tg-platform .tg-kpi-value.is-long{
  font-size: clamp(1rem, 1.6vw, 1.35rem);
}
.tg-platform .tg-kpi-foot{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  padding-top: 2px;
}
.tg-platform .tg-kpi-caption{
  font-size: .76rem;
  line-height: 1.3;
  color: var(--tg-text-dim, #9aa0a6);
}
.tg-platform .tg-kpi.is-ok  .tg-kpi-value{ color: var(--tg-ok, #4caf7d); }
.tg-platform .tg-kpi.is-bad .tg-kpi-value{ color: var(--tg-bad, #d9534f); }
@media (max-width: 720px) {.tg-platform .tg-kpis{ grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); }
.tg-platform .tg-kpi-value{ font-size: clamp(1.05rem, 4.5vw, 1.4rem); }}
.tg-platform .tg-mini-dl{
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 7px var(--tg-s3);
  margin: 0;
  font-size: .9rem;
  align-items: baseline;
}
.tg-platform .tg-mini-dl dt{
  font-size: .74rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--tg-text-dim, #9aa0a6);
  white-space: nowrap;
}
.tg-platform .tg-mini-dl dd{ margin: 0; color: var(--tg-text); }
.tg-platform .tg-mini-dl dd b{ font-variant-numeric: tabular-nums; }
@media (max-width: 480px) {.tg-platform .tg-mini-dl{ grid-template-columns: 1fr; gap: 2px; }
.tg-platform .tg-mini-dl dd{ margin-bottom: 8px; }}
.tg-platform .tg-stat-n{
  font-size: clamp(1.05rem, 1.9vw, 1.9rem);
  min-width: 0;
  overflow-wrap: anywhere;
  line-height: 1.15;
  font-variant-numeric: tabular-nums;
}
.tg-platform .tg-grid > *, .tg-platform .tg-grid-2 > *, .tg-platform .tg-grid-3 > *, .tg-platform .tg-grid-4 > *{ min-width: 0; }
.tg-platform .tg-card{ min-width: 0; }
.tg-platform .tg-card p, .tg-platform .tg-card dd, .tg-platform .tg-card dt{ min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 1400px) {.tg-platform .tg-grid-4{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}
@media (max-width: 1100px) {.tg-platform .tg-grid-3{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}
@media (max-width: 700px) {.tg-platform .tg-grid-2, .tg-platform .tg-grid-3, .tg-platform .tg-grid-4{ grid-template-columns: 1fr; }}
.tg-platform .tg-app-rail .tg-grid-4{ grid-template-columns: repeat(auto-fit, minmax(165px, 1fr)); }
.tg-platform .tg-app-rail .tg-grid-3{ grid-template-columns: repeat(auto-fit, minmax(175px, 1fr)); }
@media print {.tg-platform .tg-tabs{ display: none !important; }}
.tg-platform .tg-id-pair{ padding: var(--tg-s4); }
.tg-platform .tg-id-grid{
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content minmax(0, 1fr);
  gap: var(--tg-s4);
  align-items: start;
}
.tg-platform .tg-id-side{ min-width: 0; }
.tg-platform .tg-id-name{
  margin: 0 0 10px 0;
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--tg-text);
  overflow-wrap: anywhere;
}
.tg-platform .tg-id-vs{
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  padding: 0 var(--tg-s2);
  border-left: 1px solid var(--tg-line-soft);
  border-right: 1px solid var(--tg-line-soft);
}
.tg-platform .tg-id-vs span{
  font-size: .72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--tg-text-dim, #9aa0a6);
}
.tg-platform .tg-id-code{
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: .78rem;
  color: var(--tg-text-dim, #9aa0a6);
  overflow-wrap: anywhere;
}
.tg-platform .tg-id-evidence{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--tg-s3);
  margin-top: var(--tg-s4);
  padding-top: var(--tg-s3);
  border-top: 1px solid var(--tg-line-soft);
}
.tg-platform .tg-id-badges{ display: flex; flex-wrap: wrap; gap: 5px; }
.tg-platform .tg-id-question{
  margin: var(--tg-s3) 0 10px 0;
  font-weight: 600;
  color: var(--tg-text);
}
.tg-platform .tg-id-actions{ gap: var(--tg-s3); flex-wrap: wrap; }
@media (max-width: 860px) {.tg-platform .tg-id-grid{ grid-template-columns: 1fr; }
.tg-platform .tg-id-vs{
    border: 0;
    border-top: 1px solid var(--tg-line-soft);
    border-bottom: 1px solid var(--tg-line-soft);
    padding: 7px 0;
  }}
.tg-platform .tg-pager-list{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 12px;
}
.tg-platform .tg-pager-size, .tg-platform .tg-pager-nav{
  display: flex;
  align-items: center;
  gap: 8px;
}
.tg-platform .tg-page-size{
  font: inherit;
  color: inherit;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 6px;
  padding: 4px 8px;
  min-height: 32px;
}
.tg-platform .tg-page-size:focus-visible{
  outline: 2px solid currentColor;
  outline-offset: 2px;
}
.tg-platform .tg-th-sort{ cursor: pointer; user-select: none; }
@media (max-width: 640px) {.tg-platform .tg-pager-list{ justify-content: flex-start; }
.tg-platform .tg-pager-list .tg-pager-label{ order: 3; width: 100%; }}
.tg-platform .tg-badge-danger{ background: var(--tg-bad-wash);  border-color: rgba(192,86,86,.42);   color: #e08d8d; }
.tg-platform .tg-badge-info{ color: #9fc3e8; border-color: rgba(159, 195, 232, .45); background: rgba(159, 195, 232, .10); }
.tg-platform .tg-badge-muted{ color: var(--tg-muted, #a9b0b8); border-color: var(--tg-line-soft, rgba(255,255,255,.12)); background: transparent; }
.tg-platform .tg-wrap.tg-wrap-admin{ max-width: min(1760px, 96vw); }
@media (min-width: 1400px) {.tg-platform .tg-wrap-admin .tg-app-rail{ grid-template-columns: 168px 220px minmax(0, 1fr); }}
.tg-platform .tg-pager{ display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 10px; padding: 10px 14px; border-top: 1px solid var(--tg-line-soft); font-size: .84rem; color: var(--tg-text-2); position: sticky; left: 0; }
.tg-platform .tg-pager-count{ margin-right: auto; color: var(--tg-text-3); }
.tg-platform .tg-pager-rows{ display: inline-flex; align-items: center; gap: 6px; }
.tg-platform .tg-pager .tg-pager-size{ width: auto; min-width: 70px; padding: 4px 8px; }
.tg-platform .tg-pager .tg-btn[disabled]{ opacity: .45; cursor: default; }
.tg-platform .tg-m0{ margin: 0; }
.tg-platform .tg-mt12{ margin-top: 12px; }
.tg-platform .tg-mt16{ margin-top: 16px; }
.tg-platform .tg-mt20{ margin-top: 20px; }
.tg-platform .tg-dim{ opacity: .55; }
.tg-platform .tg-self-center{ align-self: center; }
.tg-platform .tg-justify-start{ justify-content: flex-start; }
.tg-platform .tg-list-plain{ padding-left: 20px; color: var(--tg-text-2); margin: 0; }
.tg-platform .tg-divider-top{
  border-top: 1px solid var(--tg-line-soft);
  margin-top: 8px;
  padding-top: 8px;
}
.tg-platform .tg-wrap-pad{ padding-top: 32px; padding-bottom: 48px; }
.tg-platform .tg-field-reset{ border: 0; padding: 0; margin: 0 0 16px; }
.tg-platform .tg-spin-center{ margin: 0 auto 12px; }
.tg-platform .tg-c05{ align-items:center; gap:8px; flex-wrap:wrap; }
.tg-platform .tg-fw600{ font-weight:600; }
.tg-platform .tg-c47{ gap:10px; align-items:baseline; }
.tg-platform .tg-c48{ gap:10px; margin-top:10px; }
.tg-platform .tg-c49{ gap:10px; margin-top:14px; }
.tg-platform .tg-c50{ gap:10px; margin-top:14px; flex-wrap:wrap; }
.tg-platform .tg-gap12{ gap:12px; }
.tg-platform .tg-c51{ gap:12px; margin-top:12px; }
.tg-platform .tg-gap4{ gap:4px; }
.tg-platform .tg-gap6{ gap:6px; }
.tg-platform .tg-c53{ gap:6px; margin-top:14px; }
.tg-platform .tg-c56{ gap:8px; flex-wrap:wrap; margin-top:6px; }
.tg-platform .tg-mlauto{ margin-left:auto; }
.tg-platform .tg-mt10{ margin-top:10px; }
.tg-platform .tg-mt14{ margin-top:14px; }
.tg-platform .tg-c63{ margin-top:16px; gap:10px; }
.tg-platform .tg-mt18{ margin-top:18px; }
.tg-platform .tg-mt8{ margin-top:8px; }
.tg-platform .tg-m16-0{ margin:16px 0; }
.tg-platform .tg-minw86{ min-width:86px; }
.tg-platform .tg-c75{ padding:12px 8px 4px; border-top:1px solid var(--tg-line-soft); margin-top:8px; }
.tg-platform .tg-c20{ display:flex; flex-direction:column; align-items:flex-start; gap:2px; text-align:left; min-height:48px; padding:10px 14px; }
.tg-platform .tg-c68{ position:fixed; top:14px; right:14px; z-index:9999; display:flex; align-items:center; gap:9px; padding:9px 14px; border-radius:999px; background:rgba(17,17,17,.92); color:#fff; font-size:.85rem; box-shadow:0 6px 20px rgba(0,0,0,.28); }
.tg-platform .tg-ai-center{ align-items:center; }
.tg-platform .tg-c01{ align-items:center; gap:12px; }
.tg-platform .tg-c02{ align-items:center; gap:2px; }
.tg-platform .tg-c03{ align-items:center; gap:4px; }
.tg-platform .tg-c04{ align-items:center; gap:6px; }
.tg-platform .tg-c06{ align-items:center; margin-top:6px; }
.tg-platform .tg-ai-flex-end{ align-items:flex-end; }
.tg-platform .tg-c07{ align-items:flex-end; flex-wrap:wrap; gap:8px; }
.tg-platform .tg-c08{ align-items:flex-end; gap:8px; }
.tg-platform .tg-c09{ align-items:flex-end; margin-top:8px; flex-wrap:wrap; gap:8px; }
.tg-platform .tg-c10{ align-items:flex-end; margin-top:8px; gap:8px; }
.tg-platform .tg-c11{ align-self:end; padding-bottom:8px; }
.tg-platform .tg-c12{ background:var(--tg-charcoal); }
.tg-platform .tg-c13{ background:var(--tg-charcoal); text-transform:uppercase; font-size:.72rem; letter-spacing:.1em; }
.tg-platform .tg-c14{ color:var(--tg-text); font-weight:600; }
.tg-platform .tg-c15{ cursor:pointer; white-space:nowrap; user-select:none; }
.tg-platform .tg-d-block{ display:block; }
.tg-platform .tg-c16{ display:block; margin-top:8px; }
.tg-platform .tg-c17{ display:block; margin:0 0 14px; }
.tg-platform .tg-c18{ display:block; margin:6px 0; }
.tg-platform .tg-c19{ display:block; margin:6px 0; opacity:.55; }
.tg-platform .tg-c21{ display:flex; flex-wrap:wrap; gap:10px; align-items:flex-end; }
.tg-platform .tg-c22{ display:flex; flex-wrap:wrap; gap:10px; align-items:flex-end; margin-top:10px; }
.tg-platform .tg-c23{ display:flex; flex-wrap:wrap; gap:10px; align-items:flex-end; margin-top:12px; }
.tg-platform .tg-c24{ display:flex; flex-wrap:wrap; gap:6px; }
.tg-platform .tg-c25{ display:flex; gap:10px; align-items:center; justify-content:space-between; padding:6px 0; border-bottom:1px solid var(--tg-line); }
.tg-platform .tg-c26{ display:flex; gap:10px; align-items:center; justify-content:space-between; padding:8px 0; border-bottom:1px solid var(--tg-line); }
.tg-platform .tg-c27{ display:flex; gap:10px; align-items:flex-start; margin:0 0 14px; }
.tg-platform .tg-c28{ display:flex; gap:14px; flex-wrap:wrap; justify-content:space-between; align-items:flex-start; }
.tg-platform .tg-c29{ display:flex; gap:4px; flex-wrap:wrap; }
.tg-platform .tg-c30{ display:flex; gap:6px; flex-wrap:wrap; }
.tg-platform .tg-c31{ display:flex; gap:8px; align-items:flex-end; flex-wrap:wrap; }
.tg-platform .tg-c32{ display:grid; grid-template-columns:repeat(auto-fill,minmax(160px,1fr)); gap:12px; }
.tg-platform .tg-c33{ display:inline-flex; gap:6px; margin-right:14px; }
.tg-platform .tg-c34{ display:inline-flex; gap:6px; margin:4px 14px 4px 0; }
.tg-platform .tg-c35{ display:inline-flex; gap:6px; margin:4px 14px 4px 0; min-width:240px; }
.tg-platform .tg-c36{ flex-wrap:wrap; align-items:center; gap:8px; }
.tg-platform .tg-flex1{ flex:1; }
.tg-platform .tg-c37{ flex:1; min-width:150px; }
.tg-platform .tg-c38{ flex:1; min-width:180px; }
.tg-platform .tg-c39{ flex:1; min-width:240px; }
.tg-platform .tg-c40{ flex:2; min-width:200px; }
.tg-platform .tg-fs1p5rem{ font-size:1.5rem; }
.tg-platform .tg-c41{ font-size:2rem; font-weight:700; margin:0; }
.tg-platform .tg-c42{ font-weight:600; margin-bottom:4px; }
.tg-platform .tg-c43{ font-weight:600; margin-right:10px; }
.tg-platform .tg-c44{ font-weight:600; margin:16px 0 6px; }
.tg-platform .tg-c45{ font-weight:600; margin:6px 0; }
.tg-platform .tg-c46{ gap:6px; flex-wrap:wrap; }
.tg-platform .tg-gap8{ gap:8px; }
.tg-platform .tg-col-full{ grid-column:1/-1; }
.tg-platform .tg-c52{ justify-content:space-between; align-items:flex-start; }
.tg-platform .tg-mb10{ margin-bottom:10px; }
.tg-platform .tg-mb14{ margin-bottom:14px; }
.tg-platform .tg-mb16{ margin-bottom:16px; }
.tg-platform .tg-mb6{ margin-bottom:6px; }
.tg-platform .tg-mb8{ margin-bottom:8px; }
.tg-platform .tg-ml6{ margin-left:6px; }
.tg-platform .tg-ml8{ margin-left:8px; }
.tg-platform .tg-c54{ margin-top:10px; padding-top:10px; border-top:1px solid var(--tg-line); }
.tg-platform .tg-c55{ margin-top:16px; justify-content:space-between; }
.tg-platform .tg-mt24{ margin-top:24px; }
.tg-platform .tg-mt3{ margin-top:3px; }
.tg-platform .tg-mt4{ margin-top:4px; }
.tg-platform .tg-m0-0-12{ margin:0 0 12px; }
.tg-platform .tg-m0-0-20{ margin:0 0 20px; }
.tg-platform .tg-m0-0-4{ margin:0 0 4px; }
.tg-platform .tg-m0-0-6{ margin:0 0 6px; }
.tg-platform .tg-m0-0-8{ margin:0 0 8px; }
.tg-platform .tg-c57{ margin:0; padding-left:18px; }
.tg-platform .tg-c58{ margin:0; padding-left:20px; }
.tg-platform .tg-m12-0{ margin:12px 0; }
.tg-platform .tg-m12-0-0{ margin:12px 0 0; }
.tg-platform .tg-m12-0-6{ margin:12px 0 6px; }
.tg-platform .tg-m2-0-8{ margin:2px 0 8px; }
.tg-platform .tg-m3-0{ margin:3px 0; }
.tg-platform .tg-c59{ margin:4px 0 0; padding-left:18px; }
.tg-platform .tg-m4-0-10{ margin:4px 0 10px; }
.tg-platform .tg-c60{ margin:8px 0 0; padding-left:18px; }
.tg-platform .tg-c61{ max-width:100%; max-height:70vh; display:block; margin:0 auto; border-radius:8px; }
.tg-platform .tg-maxw100{ max-width:100px; }
.tg-platform .tg-maxw110{ max-width:110px; }
.tg-platform .tg-maxw11rem{ max-width:11rem; }
.tg-platform .tg-maxw130{ max-width:130px; }
.tg-platform .tg-maxw140{ max-width:140px; }
.tg-platform .tg-maxw160{ max-width:160px; }
.tg-platform .tg-maxw200{ max-width:200px; }
.tg-platform .tg-maxw320{ max-width:320px; }
.tg-platform .tg-maxw90{ max-width:90px; }
.tg-platform .tg-minw10rem{ min-width:10rem; }
.tg-platform .tg-c62{ min-width:240px; flex:1; }
.tg-platform .tg-minw5p5rem{ min-width:5.5rem; }
.tg-platform .tg-minw9rem{ min-width:9rem; }
.tg-platform .tg-c64{ padding:0; border:0; background:none; cursor:zoom-in; aspect-ratio:1/1; overflow:hidden; border-radius:10px; display:block; width:100%; }
.tg-platform .tg-c65{ padding:10px 0; border-top:1px solid var(--tg-line-soft); }
.tg-platform .tg-c66{ padding:12px 0; border-bottom:1px solid var(--tg-line); }
.tg-platform .tg-ta-center{ text-align:center; }
.tg-platform .tg-c67{ text-align:center; font-weight:700; }
.tg-platform .tg-ta-right{ text-align:right; }
.tg-platform .tg-c69{ text-align:right; font-weight:700; }
.tg-platform .tg-c70{ text-align:right; white-space:nowrap; }
.tg-platform .tg-ws-nowrap{ white-space:nowrap; }
.tg-platform .tg-c71{ white-space:pre-wrap; margin:12px 0; }
.tg-platform .tg-w100pc{ width:100%; }
.tg-platform .tg-c72{ width:100%; height:100%; object-fit:cover; display:block; background:#1a1a1a; }
.tg-platform .tg-w8em{ width:8em; }
.tg-platform .tg-c73{ width:96px; height:auto; border-radius:6px; display:block; background:#222; }
.tg-platform .tg-c74{ width:auto; display:inline-block; }
.tg-platform .tg-c76{ width:96px; height:auto; border-radius:6px; display:block; background:#222; }
.tg-platform .tg-c77{ width:auto; display:inline-block; }
.tg-platform .tg-points-neg{ color: #e08d8d; }
.tg-platform .tg-points-pos{ color: #7fc394; }
.tg-platform .tg-strike{ text-decoration: line-through; }
.tg-platform .tg-dim60{ opacity: .6; }
.tg-platform .tg-heat-cell{ text-align: center; }
.tg-platform .tg-appt-row{
  display: flex;
  flex-wrap: wrap;
  gap: 4px 14px;
  align-items: baseline;
  padding: 10px 0;
  border-top: 1px solid var(--tg-line-soft);
}
.tg-platform .tg-noprint{ margin-left: auto; }
@media print {.tg-platform.tg-printing-one *{ visibility: hidden !important; }
.tg-platform.tg-printing-one .tg-print-target, .tg-platform.tg-printing-one .tg-print-target *{ visibility: visible !important; }
.tg-platform.tg-printing-one .tg-print-target{
    position: absolute; left: 0; top: 0; width: 100%;
    box-shadow: none; border: 0; background: #fff; color: #000;
  }
.tg-platform.tg-printing-one .tg-print-target .tg-noprint{ display: none !important; }
.tg-platform.tg-printing-one .tg-print-target table{ width: 100%; border-collapse: collapse; }
.tg-platform.tg-printing-one .tg-print-target thead{ display: table-header-group; }
.tg-platform.tg-printing-one .tg-print-target tr{ page-break-inside: avoid; }}
.tg-platform .tg-syncbar{
  display: flex; align-items: center; gap: 8px;
  padding: 6px 16px; font-size: 0.8125rem; line-height: 1.35;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.tg-platform .tg-sync-dot{ width: 9px; height: 9px; border-radius: 50%; flex: none; }
.tg-platform .tg-syncbar.tg-sync-ok{ background: rgba(34,140,80,0.14);  color: #9fe3b8; }
.tg-platform .tg-syncbar.tg-sync-warn{ background: rgba(200,161,90,0.16); color: #e8c98a; }
.tg-platform .tg-syncbar.tg-sync-bad{ background: rgba(190,60,60,0.18);  color: #f0a3a3; }
.tg-platform .tg-sync-dot.tg-sync-ok{ background: #2fbf6b; }
.tg-platform .tg-sync-dot.tg-sync-warn{ background: #d8a54a; }
.tg-platform .tg-sync-dot.tg-sync-bad{ background: #e05a5a; }
.tg-platform .tg-authbar{
  display: flex; align-items: center; gap: 10px;
  padding: 6px 16px; font-size: 0.8125rem; line-height: 1.35;
  background: rgba(200,161,90,0.12); color: #e8c98a;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.tg-platform .tg-authbar-dot{ width: 8px; height: 8px; border-radius: 50%; background: #2fbf6b; flex: none; }
.tg-platform .tg-authbar .tg-btn{ margin-left: auto; }
@media print {.tg-platform .tg-authbar{ display: none !important; }}
@font-face {
  font-family: "Oswald";
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url(/assets/"/assets/fonts/oswald-latin-ext.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Oswald";
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url(/assets/"/assets/fonts/oswald-latin.woff2") format("woff2");
  unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url(/assets/"/assets/fonts/inter-latin-ext.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url(/assets/"/assets/fonts/inter-latin.woff2") format("woff2");
  unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
.tg-platform{
  --tg-black:      #070709;
  --tg-charcoal:   #0e0e12;
  --tg-charcoal-2: #15151b;
  --tg-charcoal-3: #1e1e25;
  --tg-line:       #2b2b35;
  --tg-line-soft:  #1c1c23;

  --tg-gold:        #c8a15a;
  --tg-gold-bright: #e0bb78;
  --tg-gold-dim:    #8a6f3c;
  --tg-gold-deep:   #6f5626;
  --tg-gold-wash:   rgba(200,161,90,.10);

  --tg-text:   #ffffff;
  --tg-text-2: #c9c9d2;
  --tg-text-3: #8b8b96;

  
  --tg-leaf: linear-gradient(120deg,
    var(--tg-gold-deep) 0%, var(--tg-gold) 22%, var(--tg-gold-bright) 46%,
    var(--tg-gold) 62%, var(--tg-gold-deep) 100%);

  
  --tg-edge: inset 0 1px 0 rgba(255,255,255,.055);
  --tg-shadow:    0 1px 2px rgba(0,0,0,.5), 0 6px 18px rgba(0,0,0,.35);
  --tg-shadow-lg: 0 2px 4px rgba(0,0,0,.5), 0 24px 60px rgba(0,0,0,.6);

  --tg-display: "Oswald", "Haettenschweiler", "Arial Narrow", system-ui, sans-serif;
  --tg-font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

  --tg-ease: cubic-bezier(.22, .61, .36, 1);
}
.tg-platform::before{
  content: "";
  position: fixed; inset: 0; z-index: 9999; pointer-events: none;
  opacity: .035;
  background-image: url(/assets/"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(/assets/%23n)'/%3E%3C/svg%3E");
}
.tg-platform{
  font-family: var(--tg-font);
  color: var(--tg-text-2);
  
  background:
    radial-gradient(120% 60% at 50% 0%, #101017 0%, rgba(16,16,23,0) 60%),
    var(--tg-black);
  background-attachment: fixed;
}
.tg-platform h1, .tg-platform h2, .tg-platform h3, .tg-platform h4, .tg-platform .tg-display{
  font-family: var(--tg-display);
  color: var(--tg-text);
  font-weight: 600;
  letter-spacing: .004em;
  line-height: 1.08;
  text-wrap: balance;
}
.tg-platform h1{ font-size: clamp(2.6rem, 1.6rem + 4.6vw, 5rem); font-weight: 700; letter-spacing: .002em; }
.tg-platform h2{ font-size: clamp(1.8rem, 1.3rem + 2.1vw, 2.9rem); }
.tg-platform h3{ font-size: clamp(1.15rem, 1.05rem + .4vw, 1.4rem); }
.tg-platform h4{ font-size: 1.05rem; }
.tg-platform p{ color: var(--tg-text-2); line-height: 1.68; }
.tg-platform .tg-eyebrow{
  font-family: var(--tg-display);
  font-size: .78rem; font-weight: 600;
  text-transform: uppercase; letter-spacing: .34em;
  color: var(--tg-gold);
  margin: 0 0 var(--tg-s3);
}
.tg-platform .tg-lede{
  font-size: clamp(1.05rem, 1rem + .35vw, 1.28rem);
  line-height: 1.6; color: var(--tg-text-2); max-width: 62ch;
}
.tg-platform .tg-small{ font-size: .86rem; }
.tg-platform .tg-muted{ color: var(--tg-text-3); }
.tg-platform .tg-rule{
  width: 64px; height: 2px; border-radius: 0;
  background: var(--tg-leaf);
  margin: 0 0 var(--tg-s5);
}
.tg-platform .tg-card, .tg-platform .tg-module{
  position: relative;
  background: linear-gradient(180deg, var(--tg-charcoal-2) 0%, var(--tg-charcoal) 100%);
  border: 1px solid var(--tg-line-soft);
  border-radius: var(--tg-r);
  box-shadow: var(--tg-edge), var(--tg-shadow);
}
.tg-platform .tg-module::after{
  content: "";
  position: absolute; top: 0; right: 0;
  width: 14px; height: 14px;
  border-top: 2px solid var(--tg-gold);
  border-right: 2px solid var(--tg-gold);
  border-top-right-radius: var(--tg-r);
  opacity: .5;
  transition: opacity .3s var(--tg-ease);
}
.tg-platform .tg-module:hover::after{ opacity: 1; }
.tg-platform .tg-module{
  padding: var(--tg-s5);
  transition: transform .35s var(--tg-ease), box-shadow .35s var(--tg-ease),
              border-color .35s var(--tg-ease);
}
.tg-platform .tg-module:hover{
  transform: translateY(-3px);
  border-color: rgba(200,161,90,.34);
  box-shadow: var(--tg-edge), var(--tg-shadow-lg);
}
.tg-platform .tg-module h3{ margin-bottom: var(--tg-s2); }
.tg-platform .tg-module .x{
  font-family: var(--tg-display);
  text-transform: uppercase; letter-spacing: .2em;
  font-size: .68rem; color: var(--tg-text-3);
}
.tg-platform .tg-head{
  background: rgba(7,7,9,.72);
  backdrop-filter: blur(14px) saturate(140%);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  border-bottom: 1px solid transparent;
  transition: background .3s var(--tg-ease), border-color .3s var(--tg-ease),
              box-shadow .3s var(--tg-ease);
}
.tg-platform .tg-head.is-scrolled{
  background: rgba(7,7,9,.94);
  border-bottom-color: rgba(200,161,90,.22);
  box-shadow: 0 10px 34px rgba(0,0,0,.5);
}
.tg-platform .tg-head-in{ min-height: 72px; transition: min-height .3s var(--tg-ease); }
.tg-platform .tg-head.is-scrolled .tg-head-in{ min-height: 60px; }
.tg-platform .tg-mark{
  background: var(--tg-leaf);
  border-radius: 3px;
  font-family: var(--tg-display);
  font-weight: 700; letter-spacing: .06em;
  box-shadow: var(--tg-edge), 0 2px 10px rgba(200,161,90,.2);
}
.tg-platform .tg-brand-t b{
  font-family: var(--tg-display);
  font-size: 1.12rem; font-weight: 600;
  text-transform: uppercase; letter-spacing: .1em;
}
.tg-platform .tg-brand-t span{
  font-family: var(--tg-display);
  letter-spacing: .26em; font-size: .62rem; color: var(--tg-gold-dim);
}
.tg-platform .tg-nav a, .tg-platform .tg-nav button{
  font-family: var(--tg-display);
  text-transform: uppercase; letter-spacing: .14em;
  font-size: .8rem; font-weight: 500;
  border-radius: 3px;
  color: var(--tg-text-3);
}
.tg-platform .tg-nav a:hover, .tg-platform .tg-nav button:hover{ background: rgba(255,255,255,.04); color: var(--tg-text); }
.tg-platform .tg-nav [aria-current="page"], .tg-platform .tg-nav .is-active{
  background: transparent; color: var(--tg-gold-bright);
  border-color: transparent;
  box-shadow: inset 0 -2px 0 var(--tg-gold);
}
.tg-platform .tg-btn{
  font-family: var(--tg-display);
  text-transform: uppercase; letter-spacing: .16em;
  font-size: .82rem; font-weight: 500;
  border-radius: 3px;
  padding: var(--tg-s3) var(--tg-s5);
  background: var(--tg-charcoal-3);
  border: 1px solid var(--tg-line);
  color: var(--tg-text);
  box-shadow: var(--tg-edge);
  transition: transform .18s var(--tg-ease), background .2s var(--tg-ease),
              border-color .2s var(--tg-ease), box-shadow .2s var(--tg-ease);
}
.tg-platform .tg-btn:hover{
  background: #24242c; border-color: rgba(200,161,90,.4);
  transform: translateY(-1px);
  box-shadow: var(--tg-edge), 0 6px 20px rgba(0,0,0,.45);
}
.tg-platform .tg-btn:active{ transform: translateY(0); }
.tg-platform .tg-btn-primary{
  background: var(--tg-leaf);
  background-size: 200% 100%;
  background-position: 0% 50%;
  border-color: var(--tg-gold-dim);
  color: #120e05;
  font-weight: 600;
  transition: background-position .6s var(--tg-ease), transform .18s var(--tg-ease),
              box-shadow .2s var(--tg-ease);
}
.tg-platform .tg-btn-primary:hover{
  background-position: 100% 50%;
  background-color: transparent;
  border-color: var(--tg-gold-bright);
  color: #120e05;
  box-shadow: var(--tg-edge), 0 8px 26px rgba(200,161,90,.26);
}
.tg-platform .tg-btn-sm{ padding: var(--tg-s2) var(--tg-s4); font-size: .74rem; }
.tg-platform .tg-hero{
  position: relative;
  padding: clamp(var(--tg-s8), 12vh, 190px) 0 clamp(var(--tg-s7), 9vh, 130px);
  overflow: hidden;
}
.tg-platform .tg-hero::before{
  content: "";
  position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(90% 70% at 50% 8%, rgba(200,161,90,.11) 0%, rgba(200,161,90,0) 58%),
    radial-gradient(120% 90% at 50% 50%, rgba(0,0,0,0) 38%, rgba(0,0,0,.6) 100%);
}
.tg-platform .tg-hero::after{
  content: "";
  position: absolute; left: 0; right: 0; bottom: 0; height: 1px;
  background: linear-gradient(90deg,
    rgba(200,161,90,0) 0%, rgba(200,161,90,.55) 50%, rgba(200,161,90,0) 100%);
}
.tg-platform .tg-hero .tg-wrap{ position: relative; }
.tg-platform .tg-hero h1{ margin-bottom: var(--tg-s4); }
.tg-platform .tg-section + .tg-section{ border-top: 0; }
.tg-platform .tg-section + .tg-section::before{
  content: "";
  display: block; height: 1px; margin: 0 auto var(--tg-s8);
  max-width: 1180px;
  background: linear-gradient(90deg,
    rgba(200,161,90,0) 0%, rgba(200,161,90,.26) 50%, rgba(200,161,90,0) 100%);
}
.tg-platform .tg-section{ padding: clamp(var(--tg-s7), 8vh, 104px) 0; }
.tg-platform .tg-stat-n, .tg-platform .tg-kpi-n{
  font-family: var(--tg-display);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: var(--tg-text);
  letter-spacing: .01em;
}
.tg-platform .tg-stat{
  background: linear-gradient(180deg, var(--tg-charcoal-2), var(--tg-charcoal));
  border: 1px solid var(--tg-line-soft);
  border-radius: var(--tg-r-sm);
  box-shadow: var(--tg-edge);
}
.tg-platform .tg-steps{ list-style: none; margin: 0; padding: 0; counter-reset: tgstep; }
.tg-platform .tg-steps > li{
  position: relative;
  counter-increment: tgstep;
  padding: 0 0 var(--tg-s6) calc(var(--tg-s7) + var(--tg-s2));
  min-height: 46px;
}
.tg-platform .tg-steps > li::before{
  content: counter(tgstep);
  position: absolute; left: 0; top: 0;
  width: 44px; height: 44px;
  display: grid; place-items: center;
  border-radius: 50%;
  background: var(--tg-charcoal-2);
  border: 1px solid rgba(200,161,90,.4);
  box-shadow: var(--tg-edge);
  font-family: var(--tg-display);
  font-size: 1.05rem; font-weight: 600;
  color: var(--tg-gold-bright);
}
.tg-platform .tg-steps > li::after{
  content: "";
  position: absolute; left: 22px; top: 46px; bottom: 6px; width: 1px;
  background: linear-gradient(180deg, rgba(200,161,90,.34), rgba(200,161,90,0));
}
.tg-platform .tg-steps > li:last-child{ padding-bottom: 0; }
.tg-platform .tg-steps > li:last-child::after{ display: none; }
.tg-platform .tg-steps b{
  display: block;
  font-family: var(--tg-display);
  font-size: 1.06rem; font-weight: 600; color: var(--tg-text);
  margin-bottom: 2px;
}
.tg-platform .tg-input, .tg-platform .tg-select, .tg-platform .tg-textarea, .tg-platform input[type="text"], .tg-platform input[type="email"], .tg-platform input[type="tel"], .tg-platform input[type="password"], .tg-platform select, .tg-platform textarea{
  background: #0a0a0d;
  border: 1px solid var(--tg-line);
  border-radius: 3px;
  color: var(--tg-text);
  box-shadow: inset 0 2px 6px rgba(0,0,0,.5);
  transition: border-color .2s var(--tg-ease), box-shadow .2s var(--tg-ease);
}
.tg-platform .tg-input:focus, .tg-platform .tg-select:focus, .tg-platform .tg-textarea:focus, .tg-platform input:focus, .tg-platform select:focus, .tg-platform textarea:focus{
  border-color: var(--tg-gold);
  box-shadow: inset 0 2px 6px rgba(0,0,0,.5), 0 0 0 3px rgba(200,161,90,.15);
  outline: none;
}
.tg-platform label{ font-weight: 500; color: var(--tg-text); }
.tg-platform .tg-foot{
  border-top: 1px solid var(--tg-line-soft);
  color: var(--tg-text-3);
  padding: var(--tg-s7) 0;
}
.tg-platform .tg-reveal.tg-armed{
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .7s var(--tg-ease), transform .7s var(--tg-ease);
  will-change: opacity, transform;
}
.tg-platform .tg-reveal.tg-armed.is-in{
  opacity: 1;
  transform: none;
}
.tg-platform .tg-reveal-group.tg-armed > *{
  opacity: 0;
  transform: translateY(14px);
  transition: opacity .6s var(--tg-ease), transform .6s var(--tg-ease);
}
.tg-platform .tg-reveal-group.tg-armed.is-in > *{ opacity: 1; transform: none; }
.tg-platform .tg-reveal-group.tg-armed.is-in > *:nth-child(1){ transition-delay: .00s; }
.tg-platform .tg-reveal-group.tg-armed.is-in > *:nth-child(2){ transition-delay: .07s; }
.tg-platform .tg-reveal-group.tg-armed.is-in > *:nth-child(3){ transition-delay: .14s; }
.tg-platform .tg-reveal-group.tg-armed.is-in > *:nth-child(4){ transition-delay: .21s; }
.tg-platform .tg-reveal-group.tg-armed.is-in > *:nth-child(5){ transition-delay: .28s; }
.tg-platform .tg-reveal-group.tg-armed.is-in > *:nth-child(6){ transition-delay: .35s; }
.tg-platform .tg-reveal.tg-armed .tg-rule, .tg-platform .tg-reveal-group.tg-armed .tg-rule{
  width: 0;
  transition: width .8s var(--tg-ease) .15s;
}
.tg-platform .tg-reveal.tg-armed.is-in .tg-rule, .tg-platform .tg-reveal-group.tg-armed.is-in .tg-rule{ width: 64px; }
@media (prefers-reduced-motion: reduce) {.tg-platform .tg-reveal.tg-armed, .tg-platform .tg-reveal-group.tg-armed > *{ opacity: 1; transform: none; }
.tg-platform .tg-reveal.tg-armed .tg-rule, .tg-platform .tg-reveal-group.tg-armed .tg-rule{ width: 64px; }}
@media (max-width: 620px) {.tg-platform .tg-hero{ padding: var(--tg-s7) 0 var(--tg-s6); }
.tg-platform .tg-section{ padding: var(--tg-s7) 0; }
.tg-platform .tg-section + .tg-section::before{ margin-bottom: var(--tg-s7); }
.tg-platform .tg-steps > li{ padding-left: calc(var(--tg-s6) + var(--tg-s3)); }
.tg-platform .tg-steps > li::before{ width: 36px; height: 36px; font-size: .95rem; }
.tg-platform .tg-steps > li::after{ left: 18px; top: 38px; }
.tg-platform .tg-eyebrow{ letter-spacing: .26em; }}
.tg-platform .tg-acc{
  background: linear-gradient(180deg, var(--tg-charcoal-2), var(--tg-charcoal));
  border: 1px solid var(--tg-line-soft);
  border-radius: var(--tg-r);
  box-shadow: var(--tg-edge);
  margin-bottom: var(--tg-s3);
  overflow: hidden;
  transition: border-color .25s var(--tg-ease);
}
.tg-platform .tg-acc[open]{ border-color: rgba(200,161,90,.3); }
.tg-platform .tg-acc > summary{
  display: flex; align-items: center; justify-content: space-between;
  gap: var(--tg-s4);
  padding: var(--tg-s4) var(--tg-s5);
  min-height: var(--tg-tap);
  cursor: pointer;
  list-style: none;
  transition: background .2s var(--tg-ease);
}
.tg-platform .tg-acc > summary::-webkit-details-marker{ display: none; }
.tg-platform .tg-acc > summary:hover{ background: rgba(255,255,255,.025); }
.tg-platform .tg-acc-t{ display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.tg-platform .tg-acc-t b{
  font-family: var(--tg-display);
  font-size: 1.12rem; font-weight: 600; color: var(--tg-text);
  letter-spacing: .01em;
}
.tg-platform .tg-acc > summary::after{
  content: "+";
  flex: none;
  width: 30px; height: 30px;
  display: grid; place-items: center;
  border: 1px solid rgba(200,161,90,.42);
  border-radius: 50%;
  font-family: var(--tg-display);
  font-size: 1.15rem; line-height: 1; font-weight: 400;
  color: var(--tg-gold-bright);
  transition: background .2s var(--tg-ease), transform .2s var(--tg-ease);
}
.tg-platform .tg-acc[open] > summary::after{
  content: "−";
  background: var(--tg-gold-wash);
}
.tg-platform .tg-acc-body{
  padding: 0 var(--tg-s5) var(--tg-s5);
  border-top: 1px solid var(--tg-line-soft);
  padding-top: var(--tg-s4);
}
.tg-platform .tg-acc-body > :last-child{ margin-bottom: 0; }
.tg-platform .tg-acc-body .tg-steps{ margin-top: var(--tg-s3); }
.tg-platform .tg-acc-body .tg-steps > li{ padding-bottom: var(--tg-s5); }
.tg-platform .tg-cta{ gap: var(--tg-s3); }
@media (max-width: 620px) {.tg-platform .tg-acc > summary{ padding: var(--tg-s3) var(--tg-s4); }
.tg-platform .tg-acc-body{ padding: var(--tg-s4) var(--tg-s4) var(--tg-s4); }
.tg-platform .tg-cta .tg-btn{ width: 100%; justify-content: center; }}
@media (max-width: 760px) {.tg-platform .tg-head .tg-nav a:not(.tg-btn){ display: none; }
.tg-platform .tg-head .tg-nav{ gap: var(--tg-s2); flex-wrap: nowrap; }
.tg-platform .tg-head .tg-btn-sm{ padding: var(--tg-s2) var(--tg-s3); font-size: .68rem; letter-spacing: .1em; }
.tg-platform .tg-brand-t b{ font-size: .95rem; }
.tg-platform .tg-head-in{ min-height: 60px; }}
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/assets/"/assets/fonts/jetbrains-mono-latin-ext.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/assets/"/assets/fonts/jetbrains-mono-latin.woff2") format("woff2");
  unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
.tg-platform{
  --tg-black: #050506;
  --tg-charcoal: #0b0b0d;
  --tg-charcoal-2: #121215;
  --tg-charcoal-3: #1a1a1f;
  --tg-line: #2e2e36;
  --tg-line-soft: #1f1f25;
  --tg-gold: #d6b064;
  --tg-gold-bright: #ecc987;
  --tg-gold-dim: #7a5e29;
  --tg-gold-deep: #7a5e29;
  --tg-gold-wash: rgba(214, 176, 100, 0.10);
  --tg-text: #ffffff;
  --tg-text-2: #e4e4e9;
  --tg-text-3: #a6a6b0;
  --tg-r-sm: 2px;
  --tg-r: 2px;
  --tg-r-lg: 2px;
  --tg-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --tg-tick: 18px;
  --tg-leaf: linear-gradient(120deg, #7a5e29 0%, #d6b064 22%, #ecc987 46%, #d6b064 62%, #7a5e29 100%);
  --tg-edge: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}
.tg-platform{ background: var(--tg-black); }
.tg-platform h1, .tg-platform h2, .tg-platform h3, .tg-platform h4, .tg-platform .tg-display{ text-transform: uppercase; letter-spacing: 0.01em; }
.tg-platform .tg-eyebrow, .tg-platform .tg-side h2, .tg-platform .tg-brand-t span, .tg-platform th, .tg-platform .tg-badge, .tg-platform .tg-tag, .tg-platform label > small{
  font-family: var(--tg-mono);
  letter-spacing: 0.16em;
}
.tg-platform .tg-eyebrow{ font-size: 0.7rem; font-weight: 500; letter-spacing: 0.24em; }
.tg-platform .tg-mark{ border-radius: 2px; }
.tg-platform .tg-brand-t b{ font-family: var(--tg-display); text-transform: uppercase; letter-spacing: 0.08em; }
.tg-platform .tg-nav a, .tg-platform .tg-nav button{
  font-family: var(--tg-mono);
  font-size: 0.74rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  border-radius: 0;
}
.tg-platform .tg-nav [aria-current="page"], .tg-platform .tg-nav .is-active{
  background: transparent;
  border-color: transparent;
  color: var(--tg-gold-bright);
  box-shadow: inset 0 -2px 0 var(--tg-gold);
}
.tg-platform .tg-side{ border-radius: 0; border-color: var(--tg-line); }
.tg-platform .tg-side-nav button, .tg-platform .tg-side-nav a{
  font-family: var(--tg-mono);
  font-size: 0.76rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border-radius: 0;
  border: 0;
  border-left: 2px solid transparent;
}
.tg-platform .tg-side-nav button.is-active, .tg-platform .tg-side-nav a.is-active{
  background: var(--tg-gold-wash);
  border-left-color: var(--tg-gold);
}
.tg-platform .tg-card, .tg-platform .tg-module, .tg-platform .tg-stat, .tg-platform .tg-acc{
  border-radius: 0;
  border-color: var(--tg-line);
  background: linear-gradient(180deg, var(--tg-charcoal-2) 0%, var(--tg-charcoal) 100%);
  box-shadow: var(--tg-edge);
}
.tg-platform .tg-card, .tg-platform .tg-module{ position: relative; }
.tg-platform .tg-card::before, .tg-platform .tg-module::before, .tg-platform .tg-card::after, .tg-platform .tg-module::after{
  content: "";
  position: absolute;
  width: var(--tg-tick);
  height: var(--tg-tick);
  border: 0;
  border-radius: 0;
  opacity: 1;
  pointer-events: none;
  transition: none;
}
.tg-platform .tg-card::before, .tg-platform .tg-module::before{
  top: 0; left: 0; right: auto; bottom: auto;
  border-top: 2px solid var(--tg-gold);
  border-left: 2px solid var(--tg-gold);
}
.tg-platform .tg-card::after, .tg-platform .tg-module::after{
  top: auto; left: auto; right: 0; bottom: 0;
  border-bottom: 2px solid var(--tg-gold);
  border-right: 2px solid var(--tg-gold);
}
.tg-platform .tg-module:hover{ transform: none; border-color: rgba(214, 176, 100, 0.45); }
.tg-platform .tg-btn{
  font-family: var(--tg-mono);
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  border-radius: 0;
}
.tg-platform .tg-btn:hover{ transform: none; }
.tg-platform .tg-btn-primary{
  background: var(--tg-leaf);
  background-size: 200% 100%;
  border-color: var(--tg-gold-dim);
  color: #120e05;
}
.tg-platform .tg-input, .tg-platform .tg-select, .tg-platform .tg-textarea, .tg-platform input, .tg-platform select, .tg-platform textarea{ border-radius: 2px; }
.tg-platform .tg-badge, .tg-platform .tg-tag, .tg-platform .tg-chip, .tg-platform .tg-pill{ border-radius: 0; font-size: 0.64rem; text-transform: uppercase; }
.tg-platform .tg-tabs button, .tg-platform .tg-tab{ border-radius: 0; font-family: var(--tg-mono); letter-spacing: 0.12em; text-transform: uppercase; font-size: 0.74rem; }
.tg-platform .tg-dialog, .tg-platform dialog, .tg-platform .tg-toast{ border-radius: 0; }
.tg-platform .tg-easy-search{ width: 100%; font-size: 1.1rem; padding: 14px 16px; min-height: 52px; }
.tg-platform .tg-easy-results{ display: flex; flex-direction: column; gap: 6px; margin: 8px 0 4px; }
.tg-platform .tg-easy-hit{ text-align: left; padding: 12px 14px; border-radius: var(--tg-r); border: 1px solid var(--tg-line);
  background: var(--tg-charcoal-2); color: var(--tg-text); cursor: pointer; font: inherit; }
.tg-platform .tg-easy-hit span{ display: block; font-size: .85rem; color: var(--tg-text-2); margin-top: 2px; }
.tg-platform .tg-easy-tiles{ display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 10px; margin-top: 14px; }
.tg-platform .tg-easy-tile{ display: flex; flex-direction: column; align-items: flex-start; gap: 6px; min-height: 96px; padding: 16px;
  border-radius: var(--tg-r-lg); border: 1px solid var(--tg-line); background: var(--tg-charcoal-2); color: var(--tg-text);
  cursor: pointer; font: inherit; text-align: left; }
.tg-platform .tg-easy-tile:hover, .tg-platform .tg-easy-hit:hover, .tg-platform .tg-easy-tile:focus-visible, .tg-platform .tg-easy-hit:focus-visible{
  border-color: var(--tg-gold); background: var(--tg-gold-wash); outline: none; }
.tg-platform .tg-easy-tile-label{ font-size: 1.1rem; font-weight: 700; color: var(--tg-gold-bright); }
.tg-platform .tg-easy-tile-tip{ font-size: .85rem; color: var(--tg-text-2); line-height: 1.3; }
.tg-platform .tg-side-nav button.tg-easy-item{ flex-direction: column; align-items: flex-start; gap: 1px; padding-top: 7px; padding-bottom: 7px; }
.tg-platform .tg-side-nav button.tg-easy-item .tg-easy-label{ display: block; }
.tg-platform .tg-side-nav button.tg-easy-item .tg-easy-tip{ display: block; font-size: .74rem; font-weight: 400; color: var(--tg-text-3); line-height: 1.25; }
.tg-platform .tg-side-nav button.tg-easy-item.is-active .tg-easy-tip{ color: var(--tg-text-2); }
@media (max-width: 900px) {.tg-platform .tg-side-nav button.tg-easy-item .tg-easy-tip{ display: none; }
.tg-platform .tg-easy-tiles{ grid-template-columns: repeat(2, 1fr); }}
.tg-platform .tg-shop-origin{
  font-style: italic;
  font-size: .72rem;
  margin-top: var(--tg-s2);
}
.tg-platform .tg-tabs.tg-tabs-group{
  border-bottom: 0;
  margin-bottom: var(--tg-s2);
  gap: var(--tg-s3);
}
.tg-platform .tg-tabs.tg-tabs-group button{
  font-family: var(--tg-display, var(--tg-font));
  font-size: .82rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  padding: var(--tg-s2) var(--tg-s3);
}
.tg-platform .tg-grid.tg-ov-grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 560px) {.tg-platform .tg-grid.tg-ov-grid{ grid-template-columns: 1fr; }}
.tg-platform .tg-shop-card{ gap: 10px; }
.tg-platform .tg-shop-card > .tg-shop-title{ margin: 0; }
.tg-platform .tg-shop-card > .tg-shop-purpose, .tg-platform .tg-shop-card > .tg-shop-scent, .tg-platform .tg-shop-card > .tg-shop-desc, .tg-platform .tg-shop-card > .tg-shop-origin{ margin: 0; }
.tg-platform .tg-shop-card > .tg-shop-desc{ min-height: 0; }
.tg-platform .tg-shop-card > .tg-shop-scent{ line-height: 1.45; }
.tg-platform .tg-shop-card > .tg-shop-origin{ line-height: 1.4; }
.tg-platform .tg-shop-card > .tg-shop-foot{ gap: 10px; padding-top: 4px; }
.tg-platform .tg-shop-details summary{ cursor: pointer; color: var(--tg-gold); }
.tg-platform .tg-shop-details p{ margin: 8px 0 0; line-height: 1.45; }
.tg-platform .tg-shop-details summary:focus-visible{ outline: 2px solid var(--tg-gold); outline-offset: 3px; }
.tg-platform .tg-shop-buy-row{ display: flex; align-items: center; gap: 8px; flex-wrap: nowrap; }
.tg-platform .tg-shop-buy-row > .tg-btn{ flex: 0 0 auto; padding-left: 12px; padding-right: 12px; }
.tg-platform .tg-shop-backorder{ font-size: .7rem; font-style: italic; line-height: 1.4; white-space: nowrap; }
.tg-platform .tg-portal-polish .tg-portal-content{ min-width: 0; }
.tg-platform .tg-portal-polish .tg-wrap-pad{ padding-top: 24px; padding-bottom: 32px; }
.tg-platform .tg-portal-polish .tg-app{ gap: 24px; }
.tg-platform .tg-portal-polish .tg-side{ padding: 12px; background: linear-gradient(180deg,#121214,#0d0d0f); }
.tg-platform .tg-portal-polish .tg-side h2{ font-size: .7rem; line-height: 1.4; margin: 10px 8px 8px; color: #b4b4bd; }
.tg-platform .tg-portal-polish .tg-side h2:not(:first-child){ margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--tg-line-soft); }
.tg-platform .tg-portal-polish .tg-side .tg-btn{ min-height: 42px; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-card{ padding: 22px; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-card-head{ margin-bottom: 14px; gap: 12px; flex-wrap: wrap; }
.tg-platform .tg-portal-polish .tg-portal-content h2{ font-size: clamp(1.5rem,1.2rem + .65vw,1.9rem); line-height: 1.16; }
.tg-platform .tg-portal-polish .tg-portal-content h3{ font-size: 1.18rem; line-height: 1.25; }
.tg-platform .tg-portal-polish .tg-portal-content p{ line-height: 1.55; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-stack > p + p{ margin-top: 8px; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-stack > p + .tg-row{ margin-top: 18px; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-card > p:last-child, .tg-platform .tg-portal-polish .tg-portal-content .tg-stack > p:last-child{ margin-bottom: 0; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-muted{ color: #a3a3ae; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-tabs{ margin-bottom: 20px; gap: 8px; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-row{ row-gap: 10px; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-btn:not(.tg-btn-sm){ min-height: 44px; }
.tg-platform .tg-portal-polish .tg-portal-content input:not([type=checkbox]):not([type=radio]), .tg-platform .tg-portal-polish .tg-portal-content select, .tg-platform .tg-portal-polish .tg-portal-content textarea{ border-color: #424249; background-color: #0e0e11; }
.tg-platform .tg-portal-polish .tg-portal-content label{ line-height: 1.4; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-hint{ line-height: 1.5; }
.tg-platform .tg-portal-polish .tg-portal-content ul{ padding-left: 20px; line-height: 1.6; }
.tg-platform .tg-portal-polish .tg-portal-content li + li{ margin-top: 7px; }
.tg-platform .tg-portal-polish .tg-ov-grid .tg-card{ display: flex; flex-direction: column; }
.tg-platform .tg-portal-polish .tg-ov-grid .tg-card > .tg-row:last-child{ margin-top: auto; padding-top: 14px; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-table th, .tg-platform .tg-portal-polish .tg-portal-content .tg-table td{ padding: 12px 14px; line-height: 1.45; vertical-align: middle; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-table tbody tr:nth-child(even){ background: rgba(255,255,255,.025); }
.tg-platform .tg-portal-polish .tg-portal-content details{ border-top: 1px solid var(--tg-line-soft); padding-top: 10px; }
.tg-platform .tg-portal-polish .tg-portal-content details summary{ cursor: pointer; color: var(--tg-gold-bright); line-height: 1.5; }
.tg-platform .tg-portal-polish .tg-portal-content details[open] summary{ margin-bottom: 8px; }
.tg-platform .tg-portal-polish .tg-shop-card .tg-shop-details{ border: 0; padding-top: 0; }
.tg-platform .tg-portal-polish .tg-shop-card .tg-shop-title{ font-size: 1.02rem; line-height: 1.3; }
.tg-platform .tg-portal-polish .tg-shop-card .tg-shop-purpose{ color: var(--tg-text); }
.tg-platform .tg-portal-polish .tg-shop-card .tg-shop-scent{ color: var(--tg-text-2); font-size: .86rem; }
.tg-platform .tg-portal-polish .tg-shop-card .tg-shop-origin{ font-size: .72rem; }
.tg-platform .tg-portal-polish .tg-shop-backorder{ font-size: .7rem; }
.tg-platform .tg-portal-polish .tg-cart-row{ padding-top: 18px; padding-bottom: 18px; gap: 16px; }
.tg-platform .tg-portal-polish .tg-cart-main p{ margin-bottom: 6px; }
.tg-platform .tg-portal-polish .tg-cart-name{ color: var(--tg-text); }
.tg-platform .tg-portal-polish .tg-cart-qty-n{ min-width: 28px; text-align: center; font-variant-numeric: tabular-nums; }
.tg-platform .tg-portal-polish .tg-portal-content[data-view="signin"], .tg-platform .tg-portal-polish .tg-portal-content[data-view="enroll"], .tg-platform .tg-portal-polish .tg-portal-content[data-view="password"], .tg-platform .tg-portal-polish .tg-portal-content[data-view="verify"]{ width: 100%; max-width: 720px; }
.tg-platform .tg-portal-polish .tg-game--embedded .tg-game-header{ margin-bottom: 20px; }
.tg-platform .tg-portal-polish .tg-game--embedded .tg-gtabs{ gap: 8px; margin-bottom: 18px; }
.tg-platform .tg-portal-polish .tg-game--embedded .tg-game-card{ padding: 18px; }
.tg-platform .tg-portal-polish .tg-foot{ margin-top: 24px; padding-top: 24px; padding-bottom: 24px; }
@media (max-width: 1100px) and (min-width: 901px) {.tg-platform .tg-portal-polish .tg-app{ grid-template-columns: 210px minmax(0,1fr); gap: 20px; }
.tg-platform .tg-portal-polish .tg-head-in{ gap: 16px; }}
@media (max-width: 600px) {.tg-platform .tg-portal-polish .tg-wrap-pad{ padding-top: 16px; padding-bottom: 24px; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-card{ padding: 16px; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-card-head{ margin-bottom: 12px; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-table th, .tg-platform .tg-portal-polish .tg-portal-content .tg-table td{ padding: 10px; }
.tg-platform .tg-portal-polish .tg-game--embedded .tg-game-card{ padding: 14px; }}
.tg-platform .tg-portal-polish .tg-portal-content .tg-password-help{ border: 0; padding: 0 2px; }
.tg-platform .tg-portal-polish .tg-password-help > summary{ font-size: .86rem; text-decoration: underline; text-underline-offset: 3px; width: fit-content; }
.tg-platform .tg-portal-polish .tg-password-help > form{ margin-top: 14px; padding: 20px; border: 1px solid var(--tg-line-soft); background: var(--tg-charcoal); }
.tg-platform .tg-portal-polish .tg-password-help > summary:focus-visible{ outline: 2px solid var(--tg-gold); outline-offset: 4px; }
.tg-platform .tg-portal-polish .tg-card-help > .tg-card{ margin-top: 14px; }
.tg-platform .tg-portal-polish .tg-side h2:first-of-type{ border-top: 0; padding-top: 0; margin-top: 10px; }
.tg-platform .tg-portal-polish .tg-ov-grid .tg-module{ display: flex; flex-direction: column; align-items: flex-start; }
.tg-platform .tg-portal-polish .tg-ov-grid .tg-module > p{ flex: 1; }
.tg-platform .tg-portal-polish .tg-ov-grid .tg-module > .tg-btn:last-child{ margin-top: 14px; }
.tg-platform .tg-portal-polish .tg-portal-content[data-view="book"] .tg-grid-2{ align-items: stretch; }
.tg-platform .tg-portal-polish .tg-portal-content[data-view="book"] .tg-grid-2 > .tg-btn{ height: 100%; min-height: 64px; }
.tg-platform .tg-portal-polish .tg-portal-content[data-view="overview"] .tg-table th .tg-fw600 + div{ font-family: var(--tg-font); font-size: .86rem; font-weight: 500; letter-spacing: 0; text-transform: none; margin-top: 6px; color: var(--tg-text); }
.tg-platform .tg-portal-polish .tg-portal-content[data-view="overview"] .tg-table th .tg-badge{ margin-bottom: 6px; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-table td{ font-variant-numeric: tabular-nums; }
.tg-platform .tg-portal-polish .tg-welcome-points{ display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin: 18px 0; }
.tg-platform .tg-portal-polish .tg-welcome-point{ padding: 16px; border: 1px solid var(--tg-line-soft); background: rgba(255,255,255,.02); }
.tg-platform .tg-portal-polish .tg-welcome-point dt{ font-size: .82rem; font-weight: 600; color: var(--tg-text); }
.tg-platform .tg-portal-polish .tg-welcome-point dd{ margin: 8px 0 0; display: flex; flex-direction: column; gap: 5px; }
.tg-platform .tg-portal-polish .tg-welcome-point strong{ font-family: var(--tg-display); color: var(--tg-gold-bright); font-size: 2rem; line-height: 1.1; }
.tg-platform .tg-portal-polish .tg-welcome-point dd span{ color: var(--tg-text-2); font-size: .8rem; line-height: 1.45; }
.tg-platform .tg-portal-polish .tg-welcome-point-goal{ border-color: var(--tg-gold-dim); background: var(--tg-gold-wash); }
@media(max-width:560px) {.tg-platform .tg-portal-polish .tg-welcome-points{ grid-template-columns: 1fr; gap: 8px; }
.tg-platform .tg-portal-polish .tg-welcome-point{ display: grid; grid-template-columns: 1fr 1.4fr; align-items: center; gap: 12px; padding: 12px 14px; }
.tg-platform .tg-portal-polish .tg-welcome-point dd{ margin: 0; }}
.tg-platform .tg-portal-polish .tg-account-stats{ gap: 12px; }
.tg-platform .tg-portal-polish .tg-account-stats .tg-stat{ padding: 16px; min-width: 0; background: rgba(255,255,255,.025); border: 1px solid var(--tg-line-soft); }
.tg-platform .tg-portal-polish .tg-account-stats .tg-stat:first-child{ background: var(--tg-gold-wash); border-color: var(--tg-gold-dim); }
.tg-platform .tg-portal-polish .tg-account-stats .tg-stat .k{ font-size: .72rem; letter-spacing: .08em; line-height: 1.5; }
.tg-platform .tg-portal-polish .tg-account-stats .tg-stat .v{ font-size: clamp(1.8rem,1.4rem + 1vw,2.3rem); line-height: 1.2; margin: 8px 0; font-variant-numeric: tabular-nums; }
.tg-platform .tg-portal-polish .tg-account-stats .tg-stat:first-child .v{ color: var(--tg-gold-bright); }
.tg-platform .tg-portal-polish .tg-account-stats .tg-stat .s{ font-size: .76rem; line-height: 1.4; }
.tg-platform .tg-portal-polish .tg-module-navigation{ padding: 12px 16px 0; border: 1px solid var(--tg-line-soft); background: #101012; }
.tg-platform .tg-portal-polish .tg-module-navigation .tg-tabs{ margin-bottom: 12px; }
.tg-platform .tg-portal-polish .tg-module-navigation .tg-tabs-group{ margin-bottom: 8px; }
.tg-platform .tg-portal-polish .tg-reward-option{ display: flex; flex-direction: column; gap: 12px; }
.tg-platform .tg-portal-polish .tg-reward-option .tg-card-head{ margin-bottom: 0; align-items: flex-start; }
.tg-platform .tg-portal-polish .tg-reward-option > p{ flex: 1; margin-bottom: 0; }
.tg-platform .tg-portal-polish .tg-reward-option > .tg-btn{ align-self: flex-start; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-dl{ column-gap: 20px; row-gap: 12px; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-dl dt{ color: var(--tg-text-2); font-size: .86rem; line-height: 1.5; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-dl dd{ line-height: 1.5; min-width: 0; overflow-wrap: anywhere; }
.tg-platform .tg-portal-polish .tg-portal-content code{ overflow-wrap: anywhere; }
.tg-platform .tg-portal-polish .tg-care-content form{ max-width: 640px; }
.tg-platform .tg-portal-polish .tg-portal-content progress{ height: 10px; accent-color: var(--tg-gold); border: 0; border-radius: 0; overflow: hidden; }
.tg-platform .tg-portal-polish .tg-portal-content progress::-webkit-progress-bar{ background: #28282e; }
.tg-platform .tg-portal-polish .tg-portal-content progress::-webkit-progress-value{ background: var(--tg-gold); }
.tg-platform .tg-portal-polish .tg-portal-content progress::-moz-progress-bar{ background: var(--tg-gold); }
@media(max-width:700px) {.tg-platform .tg-portal-polish .tg-account-stats{ grid-template-columns: repeat(2,minmax(0,1fr)); }
.tg-platform .tg-portal-polish .tg-account-stats .tg-stat{ padding: 12px; }
.tg-platform .tg-portal-polish .tg-module-navigation{ padding: 10px 10px 0; }}
.tg-platform .tg-portal-polish .tg-portal-content .tg-grid > .tg-card{ margin-top: 0; }
.tg-platform .tg-portal-polish .tg-portal-content .tg-account-stats .tg-stat .k{ min-height: 2.9em; }
.tg-platform .tg-portal-polish .tg-portal-content[data-view="points"] .tg-grid-3 .tg-stat .k{ font-size: .72rem; line-height: 1.5; }
.tg-platform .tg-portal-polish .tg-portal-content[data-view="points"] .tg-grid-3 .tg-stat .s{ font-size: .76rem; line-height: 1.4; }
.tg-platform .tg-portal-polish .tg-portal-content[data-account="signed-in"] .tg-empty{ padding: 20px 16px; }
.tg-platform .tg-portal-polish .tg-portal-content[data-account="signed-in"] .tg-empty h3{ font-size: 1.05rem; }
@media(min-width:1101px) {.tg-platform .tg-portal-polish .tg-portal-content .tg-account-stats{ grid-template-columns: repeat(4,minmax(0,1fr)); }}
.tg-platform .tg-portal-polish .tg-module-navigation{ display: flex; align-items: center; gap: 10px; padding: 6px 12px; overflow-x: auto; }
.tg-platform .tg-portal-polish .tg-module-navigation .tg-tabs{ flex: 0 0 auto; flex-wrap: nowrap; gap: 2px; margin: 0; border-bottom: 0; }
.tg-platform .tg-portal-polish .tg-module-navigation .tg-tabs-group{ margin: 0; padding-right: 10px; border-right: 1px solid var(--tg-line-soft); }
.tg-platform .tg-portal-polish .tg-module-navigation .tg-tab{ white-space: nowrap; padding-left: 10px; padding-right: 10px; font-size: .7rem; letter-spacing: .1em; }
.tg-platform .tg-portal-polish .tg-care-content > .tg-tabs{ flex-wrap: nowrap; overflow-x: auto; gap: 4px; }
.tg-platform .tg-portal-polish .tg-care-content > .tg-tabs .tg-tab{ white-space: nowrap; }
.tg-platform .tg-portal-polish .tg-side .tg-card-options{ margin-top: 12px; padding-top: 12px; }
.tg-platform .tg-portal-polish .tg-side .tg-card-options summary{ cursor: pointer; color: var(--tg-text-2); font-size: .8rem; }
.tg-platform .tg-portal-polish .tg-side .tg-card-options p{ margin: 10px 0; line-height: 1.45; }
.tg-platform .tg-uniform{ --tg-r-sm:6px; --tg-r:10px; --tg-r-lg:12px; --tg-text-3:#b1b3bf; }
.tg-platform .tg-uniform h1, .tg-platform .tg-uniform h2, .tg-platform .tg-uniform h3, .tg-platform .tg-uniform h4{ font-family:var(--tg-font); text-transform:none; letter-spacing:-.02em; font-weight:650; line-height:1.25; }
.tg-platform .tg-uniform h1{ font-size:clamp(1.6rem,1.3rem + 1vw,2.2rem); }
.tg-platform .tg-uniform h2{ font-size:clamp(1.25rem,1.1rem + .5vw,1.6rem); }
.tg-platform .tg-uniform h3{ font-size:1.1rem; }
.tg-platform .tg-uniform .tg-btn, .tg-platform .tg-uniform .tg-nav a, .tg-platform .tg-uniform .tg-nav button, .tg-platform .tg-uniform .tg-tab, .tg-platform .tg-uniform .tg-tabs button{ font-family:var(--tg-font); font-size:.875rem; letter-spacing:0; text-transform:none; border-radius:6px; min-height:44px; line-height:1.4; }
.tg-platform .tg-uniform .tg-btn-primary{ background:var(--tg-gold); border-color:var(--tg-gold); color:#171207; }
.tg-platform .tg-uniform .tg-btn-primary:hover{ background:var(--tg-gold-bright); }
.tg-platform .tg-uniform .tg-card, .tg-platform .tg-uniform .tg-module, .tg-platform .tg-uniform .tg-stat{ border-radius:10px; background:#151518; border-color:#34343d; box-shadow:0 2px 8px #0002; }
.tg-platform .tg-uniform .tg-card::before, .tg-platform .tg-uniform .tg-card::after, .tg-platform .tg-uniform .tg-module::before, .tg-platform .tg-uniform .tg-module::after{ display:none; }
.tg-platform .tg-uniform .tg-card-accent{ border-top:2px solid var(--tg-gold); }
.tg-platform .tg-uniform .tg-card{ padding:24px; }
.tg-platform .tg-uniform .tg-card-head{ gap:12px; flex-wrap:wrap; margin-bottom:18px; }
.tg-platform .tg-uniform .tg-input, .tg-platform .tg-uniform .tg-select, .tg-platform .tg-uniform .tg-textarea{ border-radius:6px; font-family:var(--tg-font); font-size:1rem; background:#101013; border-color:#4c4c57; min-height:44px; }
.tg-platform .tg-uniform .tg-badge, .tg-platform .tg-uniform .tg-tag, .tg-platform .tg-uniform .tg-chip, .tg-platform .tg-uniform .tg-pill{ font-family:var(--tg-font); font-size:.8rem; letter-spacing:0; text-transform:none; border-radius:5px; line-height:1.4; }
.tg-platform .tg-uniform .tg-side-nav button, .tg-platform .tg-uniform .tg-side-nav a{ font-family:var(--tg-font); font-size:.9rem; letter-spacing:0; text-transform:none; border-radius:6px; line-height:1.4; }
.tg-platform .tg-uniform .tg-table th{ font-family:var(--tg-font); font-size:.875rem; text-transform:none; letter-spacing:0; background:#1b1b20; color:var(--tg-text-2); }
.tg-platform .tg-uniform .tg-table td, .tg-platform .tg-uniform .tg-table th{ padding:12px 14px; line-height:1.5; font-variant-numeric:tabular-nums; }
.tg-platform .tg-uniform .tg-table tbody tr:nth-child(even){ background:#ffffff03; }
.tg-platform .tg-uniform .tg-table tbody tr:hover{ background:#ffffff07; }
.tg-platform .tg-uniform .tg-muted, .tg-platform .tg-uniform .tg-hint{ color:var(--tg-text-3); }
.tg-platform .tg-uniform .tg-small{ font-size:.875rem; }
.tg-platform .tg-uniform .tg-eyebrow{ font-family:var(--tg-font); font-size:.8rem; letter-spacing:.08em; }
.tg-platform .tg-uniform .tg-stat .k, .tg-platform .tg-uniform .tg-stat .s{ font-family:var(--tg-font); font-size:.875rem; letter-spacing:0; text-transform:none; line-height:1.5; }
.tg-platform .tg-uniform .tg-stat .v{ font-variant-numeric:tabular-nums; }
.tg-platform .tg-uniform .tg-tabs{ gap:6px; overflow-x:auto; }
.tg-platform .tg-uniform .tg-tabs .tg-tab{ white-space:nowrap; }
.tg-platform .tg-uniform .tg-side{ border-radius:10px; }
.tg-platform .tg-admin .tg-app-rail{ grid-template-columns:280px minmax(0,1fr); gap:28px; }
.tg-platform .tg-admin .tg-wrap-admin{ max-width:1600px; }
.tg-platform .tg-admin .tg-admin-sidebar{ top:calc(var(--tg-head-h) + 16px); max-height:calc(100dvh - var(--tg-head-h) - 32px); overflow-y:auto; padding:14px; background:#111114; }
.tg-platform .tg-admin .tg-admin-content{ min-width:0; }
.tg-platform .tg-admin .tg-admin-page-head{ margin-bottom:24px; padding-bottom:20px; border-bottom:1px solid var(--tg-line); }
.tg-platform .tg-admin .tg-admin-page-head h1{ margin:4px 0 8px; }
.tg-platform .tg-admin .tg-admin-page-tip{ margin:0; max-width:70ch; color:var(--tg-text-2); }
.tg-platform .tg-admin .tg-admin-nav-search{ padding:0 2px 14px; border-bottom:1px solid var(--tg-line); margin-bottom:8px; }
.tg-platform .tg-admin .tg-admin-nav-search label{ display:block; margin-bottom:8px; color:var(--tg-text-2); }
.tg-platform .tg-admin .tg-admin-nav-search input{ width:100%; font-size:.9rem; }
.tg-platform .tg-admin .tg-admin-search-results{ display:grid; gap:6px; margin-top:8px; }
.tg-platform .tg-admin .tg-admin-search-results:empty{ margin:0; }
.tg-platform .tg-admin .tg-admin-nav-group{ border:0; padding:0; margin:0; }
.tg-platform .tg-admin .tg-admin-nav-group summary{ cursor:pointer; padding:12px 8px; font-size:.9rem; font-weight:650; color:var(--tg-text-2); border-radius:6px; }
.tg-platform .tg-admin .tg-admin-nav-group summary:hover{ color:var(--tg-text); background:#ffffff05; }
.tg-platform .tg-admin .tg-admin-nav-group[open] > summary{ color:var(--tg-gold-bright); }
.tg-platform .tg-admin .tg-admin-nav-group .tg-side-nav{ padding:0 0 10px 8px; }
.tg-platform .tg-admin .tg-admin-nav-item{ display:flex; flex-direction:column; align-items:flex-start; gap:3px; padding:10px 12px; min-height:44px; }
.tg-platform .tg-admin .tg-admin-nav-tip{ color:var(--tg-text-3); font-size:.8125rem; font-weight:400; line-height:1.45; }
.tg-platform .tg-admin .tg-admin-nav-item.is-active{ color:var(--tg-gold-bright); border-left-color:var(--tg-gold); background:var(--tg-gold-wash); }
.tg-platform .tg-admin .tg-admin-mobile-menu > summary{ display:none; }
.tg-platform .tg-admin .tg-easy-tiles{ grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; }
.tg-platform .tg-admin .tg-easy-tile{ min-height:92px; border-radius:8px; }
.tg-platform .tg-admin .tg-easy-tile-label{ font-size:1rem; }
.tg-platform .tg-admin .tg-easy-tile-tip{ font-size:.875rem; line-height:1.45; }
.tg-platform .tg-admin .tg-head .tg-wrap{ max-width:1600px; }
.tg-platform .tg-admin .tg-nav{ align-items:center; }
.tg-platform .tg-admin .tg-syncbar{ font-size:.875rem; }
.tg-platform .tg-admin .tg-area-head > .tg-area-title{ display:none; }
.tg-platform .tg-uniform .tg-auth-card{ width:100%; max-width:480px; }
.tg-platform .tg-uniform .tg-auth .tg-card{ padding:32px; }
.tg-platform .tg-uniform :focus-visible{ outline:2px solid var(--tg-gold-bright); outline-offset:3px; }
@media(max-width:1100px) and (min-width:901px) {.tg-platform .tg-admin .tg-app-rail{ grid-template-columns:250px minmax(0,1fr); gap:20px; }}
@media(max-width:900px) {.tg-platform .tg-admin .tg-app-rail{ grid-template-columns:1fr; gap:20px; }
.tg-platform .tg-admin .tg-admin-sidebar{ position:static; max-height:none; }
.tg-platform .tg-admin .tg-admin-mobile-menu > summary{ display:list-item; padding:10px 8px; font-size:1rem; font-weight:650; cursor:pointer; }
.tg-platform .tg-admin .tg-admin-mobile-menu > nav{ padding-top:12px; }
.tg-platform .tg-admin .tg-side-nav{ flex-direction:column; }
.tg-platform .tg-admin .tg-side-nav button{ width:100%; }
.tg-platform .tg-admin .tg-head-in{ flex-wrap:wrap; padding-top:12px; padding-bottom:12px; }
.tg-platform .tg-admin .tg-nav{ width:100%; gap:4px; }
.tg-platform .tg-admin .tg-nav > span{ overflow-wrap:anywhere; }}
@media(max-width:600px) {.tg-platform .tg-uniform .tg-card{ padding:18px; }
.tg-platform .tg-admin .tg-admin-page-head{ margin-bottom:18px; padding-bottom:16px; }
.tg-platform .tg-admin .tg-easy-tiles{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.tg-platform .tg-uniform .tg-auth .tg-card{ padding:24px; }}
@media print {.tg-platform .tg-admin .tg-admin-sidebar, .tg-platform .tg-admin .tg-admin-page-head{ display:none; }
.tg-platform .tg-admin .tg-app-rail{ display:block; }}
.tg-platform .tg-uniform .tg-side h2{ font-family:var(--tg-font); font-size:.875rem; letter-spacing:0; text-transform:none; line-height:1.4; }
.tg-platform .tg-uniform .tg-dialog{ border-radius:12px; padding:24px; max-height:calc(100dvh - 32px); overflow-y:auto; }
.tg-platform .tg-uniform .tg-dialog h2{ font-family:var(--tg-font); text-transform:none; letter-spacing:-.02em; }
.tg-platform .tg-uniform .tg-sort-button{ display:flex; gap:6px; align-items:center; width:100%; padding:8px 0; min-height:44px; border:0; background:none; color:inherit; text-align:left; font:inherit; font-weight:650; cursor:pointer; }
.tg-platform .tg-uniform .tg-th-sort{ padding-top:4px; padding-bottom:4px; }
.tg-platform .tg-uniform .tg-page-size{ min-height:44px; font-size:.875rem; border-radius:6px; }
.tg-platform .tg-uniform .tg-pager{ gap:12px; flex-wrap:wrap; }
.tg-platform .tg-uniform .tg-portal-page-title{ font-size:clamp(1.5rem,1.25rem + .8vw,2rem); margin:0 0 20px; padding-bottom:16px; border-bottom:1px solid var(--tg-line); }
.tg-platform .tg-uniform .tg-settings-results{ display:grid; gap:8px; margin-top:10px; }
.tg-platform .tg-uniform .tg-settings-results:empty{ display:none; }
.tg-platform .tg-uniform .tg-settings-groups{ margin:18px 0; flex-wrap:wrap; }
.tg-platform .tg-uniform .tg-input:disabled, .tg-platform .tg-uniform .tg-select:disabled{ opacity:.6; cursor:not-allowed; }
.tg-platform .tg-uniform input[type="checkbox"], .tg-platform .tg-uniform input[type="radio"]{ accent-color:var(--tg-gold); }
.tg-platform .tg-uniform .sc-app, .tg-platform .tg-uniform .ck-wrap, .tg-platform .tg-uniform .ob-main, .tg-platform .tg-uniform .reg-workspace{ font-family:var(--tg-font); }
.tg-platform .tg-uniform.sc-body{ --sc-bg:var(--tg-black); --sc-panel:var(--tg-charcoal); --sc-line:var(--tg-line); --sc-text:var(--tg-text); --sc-dim:var(--tg-text-3); --sc-gold:var(--tg-gold); }
.tg-platform .tg-uniform .sc-b, .tg-platform .tg-uniform .sc-chip, .tg-platform .tg-uniform .sc-seg button{ border-radius:6px; font-size:.875rem; min-height:44px; font-family:var(--tg-font); line-height:1.4; }
.tg-platform .tg-uniform .sc-input, .tg-platform .tg-uniform .ob-input, .tg-platform .tg-uniform .ob-text{ min-height:44px; border-radius:6px; border-color:#4c4c57; background:#101013; font-size:1rem; }
.tg-platform .tg-uniform .sc-name, .tg-platform .tg-uniform .sc-time b{ font-size:1rem; }
.tg-platform .tg-uniform .sc-sub, .tg-platform .tg-uniform .sc-note, .tg-platform .tg-uniform .sc-who, .tg-platform .tg-uniform .sc-sum, .tg-platform .tg-uniform .sc-colhead{ font-size:.875rem; line-height:1.45; }
.tg-platform .tg-uniform .sc-sheet .sc-sub{ white-space:normal; overflow:visible; text-overflow:clip; margin-top:8px; }
.tg-platform .tg-uniform .sc-sheet h3{ font-family:var(--tg-font); font-size:.875rem; text-transform:none; letter-spacing:0; }
.tg-platform .tg-uniform .sc-sheet{ border-radius:12px; border-color:var(--tg-line); }
.tg-platform .tg-uniform .sc-item, .tg-platform .tg-uniform .sc-notebox, .tg-platform .tg-uniform .ob-card{ border-radius:10px; border-color:var(--tg-line); background:var(--tg-charcoal); }
.tg-platform .tg-uniform .sc-tag{ font-size:.75rem; line-height:1.4; border-radius:5px; }
.tg-platform .tg-uniform .sc-seg{ flex-wrap:wrap; }
.tg-platform .tg-uniform .sc-seg button{ flex:1 1 auto; padding:8px 12px; }
.tg-platform .tg-uniform .sc-menu{ font-size:.875rem; }
.tg-platform .tg-uniform .sc-menu button, .tg-platform .tg-uniform .sc-menu a{ min-height:44px; }
.tg-platform .tg-uniform .sc-sheet .sc-input{ scroll-margin-top:24px; }
.tg-platform .tg-uniform .sc-toprow{ flex-wrap:wrap; }
.tg-platform .tg-uniform .ob-btn{ border-radius:6px; }
.tg-platform .tg-uniform .ob-step-sub, .tg-platform .tg-uniform .ob-field em, .tg-platform .tg-uniform .ob-brand small{ font-size:.875rem; line-height:1.45; }
.tg-platform .tg-uniform .reg-item-type, .tg-platform .tg-uniform .reg-brand-name{ font-size:.75rem; letter-spacing:.04em; }
.tg-platform .tg-uniform .reg-sale-count, .tg-platform .tg-uniform .reg-result-count, .tg-platform .tg-uniform .reg-total-hint, .tg-platform .tg-uniform .reg-sale-line-name span, .tg-platform .tg-uniform .reg-device-popover p{ font-size:.8125rem; line-height:1.45; }
.tg-platform .tg-uniform .reg-sale-line-name strong, .tg-platform .tg-uniform .reg-barber-field label, .tg-platform .tg-uniform .reg-text-button, .tg-platform .tg-uniform .reg-device-details{ font-size:.875rem; }
.tg-platform .tg-uniform .reg-sale-line-name strong{ line-height:1.45; }
.tg-platform .tg-uniform .reg-item, .tg-platform .tg-uniform .reg-sale, .tg-platform .tg-uniform .reg-device-popover{ background:var(--tg-charcoal); border-color:var(--tg-line); border-radius:10px; }
.tg-platform .tg-uniform .reg-category, .tg-platform .tg-uniform .reg-barber-select, .tg-platform .tg-uniform .reg-pay-card, .tg-platform .tg-uniform .reg-pay-cash{ border-radius:6px; }
@media(max-width:600px) {.tg-platform .tg-uniform .tg-settings-groups{ gap:4px; }
.tg-platform .tg-uniform .tg-settings-groups .tg-tab{ padding:8px 10px; }
.tg-platform .tg-uniform .sc-sheet{ border-radius:12px 12px 0 0; max-height:90dvh; }
.tg-platform .tg-uniform .sc-toprow .sc-who{ flex:1; text-align:right; }}
.tg-platform .tg-uniform{
 --tg-line:#323238; --tg-line-soft:#29292f; --tg-text-2:#d1d1d7; --tg-text-3:#b2b2bd;
 background-color:#0b0b0e;
 background-image:radial-gradient(ellipse at 20% 0%,rgba(200,161,90,.045),transparent 55%);
}
.tg-platform .tg-uniform .tg-head{ background:rgba(11,11,14,.96); border-bottom:1px solid #29292f; }
.tg-platform .tg-uniform .tg-card, .tg-platform .tg-uniform .tg-module, .tg-platform .tg-uniform .tg-stat, .tg-platform .tg-uniform .sc-notebox, .tg-platform .tg-uniform .ob-card, .tg-platform .tg-uniform .reg-sale{
 background:linear-gradient(160deg,#1b1b20 0%,#141418 100%);
 box-shadow:0 1px 0 #ffffff05 inset,0 8px 24px #00000024;
 border-color:#34343d; border-radius:12px;
}
.tg-platform .tg-uniform .tg-side{ background:linear-gradient(180deg,#17171c,#111115); border-color:#34343d; box-shadow:0 8px 24px #0002; }
.tg-platform .tg-uniform .tg-card-accent{ border-top:2px solid var(--tg-gold); }
.tg-platform .tg-uniform .tg-card-head h2{ margin:0; }
.tg-platform .tg-uniform .tg-btn-primary{ background:linear-gradient(180deg,#e1bf7c,#c8a15a); box-shadow:0 1px 0 #ffffff30 inset,0 3px 8px #0002; font-weight:650; }
.tg-platform .tg-uniform .tg-btn-primary:hover{ background:linear-gradient(180deg,#eccd8c,#d7b26b); }
.tg-platform .tg-uniform .tg-btn:not(:disabled), .tg-platform .tg-uniform .tg-tabs button, .tg-platform .tg-uniform .tg-side-nav button, .tg-platform .tg-uniform .sc-b:not(:disabled), .tg-platform .tg-uniform .reg-item{ transition:background-color .15s,border-color .15s,box-shadow .15s; }
.tg-platform .tg-uniform .tg-btn:not(.tg-btn-primary):not(.tg-btn-danger):hover{ border-color:#777064; background-color:#25242a; }
.tg-platform .tg-uniform .tg-tabs button[aria-selected="true"], .tg-platform .tg-uniform .tg-settings-groups .is-active{
 background:var(--tg-gold-wash); border-color:var(--tg-gold); color:#efd397; box-shadow:0 1px 0 #c8a15a30 inset;
}
.tg-platform .tg-uniform .tg-input:focus, .tg-platform .tg-uniform .tg-select:focus, .tg-platform .tg-uniform .tg-textarea:focus, .tg-platform .tg-uniform .sc-input:focus, .tg-platform .tg-uniform .ob-input:focus{ border-color:var(--tg-gold); box-shadow:0 0 0 3px #c8a15a18; }
.tg-platform .tg-uniform .tg-table-wrap{ border-radius:10px; border:1px solid #34343d; }
.tg-platform .tg-uniform .tg-table th{ background:#202026; }
.tg-platform .tg-uniform .tg-table td{ border-color:#2c2c33; }
.tg-platform .tg-uniform .tg-stat{ padding:20px; }
.tg-platform .tg-uniform .tg-stat .v{ font-family:var(--tg-font); font-size:clamp(1.6rem,1.35rem + .7vw,2rem); letter-spacing:-.03em; margin:8px 0; }
.tg-platform .tg-uniform .tg-stat .k{ color:#cacad2; }
.tg-platform .tg-uniform .tg-acc{ border-radius:10px; overflow:hidden; border-color:#34343d; }
.tg-platform .tg-uniform .tg-dialog{ background:linear-gradient(150deg,#202026,#131317); border:1px solid #45454e; box-shadow:0 24px 80px #0009; }
.tg-platform .tg-uniform .tg-easy-tile{ background:linear-gradient(150deg,#202027,#17171b); border-color:#3a3a43; }
.tg-platform .tg-uniform .tg-easy-tile:hover{ background:#26252a; border-color:#a68b59; }
.tg-platform .tg-uniform .tg-shop-card{ padding:18px; }
.tg-platform .tg-uniform .tg-shop-media{ background:#f5f4f0; border-radius:9px; }
.tg-platform .tg-uniform .tg-shop-title{ font-size:1.05rem; line-height:1.4; }
.tg-platform .tg-uniform .tg-shop-desc, .tg-platform .tg-uniform .tg-shop-purpose, .tg-platform .tg-uniform .tg-shop-scent{ font-size:.875rem; color:#c1c1cb; line-height:1.55; }
.tg-platform .tg-uniform .tg-shop-origin{ font-size:.8125rem; line-height:1.5; color:#aeadb8; }
.tg-platform .tg-uniform .tg-shop-price{ font-size:1.2rem; font-variant-numeric:tabular-nums; color:#efdab0; }
.tg-platform .tg-uniform .tg-shop-foot .tg-btn{ width:100%; }
.tg-platform .tg-uniform .sc-item{ box-shadow:0 2px 8px #0002; }
.tg-platform .tg-uniform .sc-colhead{ background:#18181d; color:#d0d0d7; }
.tg-platform .tg-uniform .reg-item:hover{ background:#24232a; border-color:#aa905e; }
.tg-platform .tg-uniform .reg-sale-total{ font-variant-numeric:tabular-nums; }
.tg-platform .tg-uniform .ob-step-sub{ color:#c1c1cc; }
@media(prefers-reduced-motion:reduce) {.tg-platform .tg-uniform *, .tg-platform .tg-uniform *::before, .tg-platform .tg-uniform *::after{ transition:none!important; scroll-behavior:auto!important; }}
@media(max-width:600px) {.tg-platform .tg-uniform .tg-card, .tg-platform .tg-uniform .tg-portal-content .tg-card{ padding:18px; }
.tg-platform .tg-uniform .tg-shop-card{ padding:14px; }
.tg-platform .tg-uniform .tg-stat{ padding:16px; }}
.tg-platform .tg-uniform .tg-account-access{ width:100%; max-width:600px; margin:0 auto; }
.tg-platform .tg-uniform .tg-account-options{ padding:16px 20px; border-top:1px solid var(--tg-line); text-align:center; color:var(--tg-text-2); }
.tg-platform .tg-uniform .tg-account-options p{ margin:0; }
.tg-platform .tg-uniform .tg-account-options p + p{ margin-top:8px; }
.tg-platform .tg-uniform .tg-account-link{ display:inline-flex; align-items:center; min-height:44px; padding:4px 6px; background:none; border:0; color:var(--tg-gold-bright); font:inherit; font-weight:600; text-decoration:underline; text-underline-offset:4px; cursor:pointer; }
.tg-platform .tg-uniform .tg-account-link:hover{ color:#ffe4ad; }
.tg-platform .tg-uniform .tg-account-access .tg-btn-primary{ width:100%; }
.tg-platform #app.tg-uniform{ color:var(--tg-text); font-family:var(--tg-font); }
.tg-platform #app.tg-uniform .tg-card, .tg-platform #app.tg-uniform .tg-module, .tg-platform #app.tg-uniform .tg-side, .tg-platform #app.tg-uniform .tg-btn, .tg-platform #app.tg-uniform .tg-input{ clip-path:none; }
.tg-platform #app.tg-uniform .tg-game--embedded .tg-game-header > h2{ display:none; }
.tg-platform #app.tg-uniform .tg-nav{ justify-content:flex-end; }
.tg-platform #app.tg-uniform .tg-portal-content > .tg-account-access .tg-card{ padding:24px; }
.tg-platform .tg-uniform .tg-table-wrap{ max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; }
.tg-platform .tg-uniform .tg-table{ table-layout:auto; width:100%; min-width:640px; }
.tg-platform .tg-uniform .tg-table th{ white-space:nowrap; word-break:normal; overflow-wrap:normal; }
.tg-platform .tg-uniform .tg-table td{ word-break:normal; overflow-wrap:normal; }
.tg-platform .tg-uniform .tg-sort-button{ white-space:nowrap; }
.tg-platform .tg-uniform .tg-game-rule-panel{ padding:20px; border:1px solid var(--tg-line); border-radius:10px; background:#111115; }
.tg-platform .tg-uniform .tg-game-rule-panel[hidden]{ display:none!important; }
.tg-platform .tg-uniform .tg-game-rule-panel h3{ margin:0 0 20px; }
.tg-platform .tg-uniform .tg-game-rule-panel .tg-hint{ margin:8px 0 0; }
.tg-platform .tg-uniform .tg-game-advanced{ margin-top:18px; border-top:1px solid var(--tg-line); }
.tg-platform .tg-uniform .tg-game-advanced summary, .tg-platform .tg-uniform .tg-game-settings-section summary{ cursor:pointer; min-height:44px; padding:14px 0; font-size:1rem; font-weight:600; }
.tg-platform .tg-uniform .tg-game-settings-section{ padding:8px 24px; border:1px solid var(--tg-line); border-radius:12px; background:#17171c; }
.tg-platform .tg-uniform .tg-game-settings-section > .tg-stack{ padding:12px 0 20px; }
.tg-platform .tg-uniform #grow-add-sponsor[hidden]{ display:none!important; }
.tg-platform .tg-uniform .tg-game-sponsor-entry{ border-top:1px solid var(--tg-line); }
.tg-platform .tg-uniform .tg-game-sponsor-entry > summary{ padding:14px 0; }
.tg-platform .tg-uniform .tg-table .tg-pay-week{display:table-cell;min-width:105px;text-align:right;white-space:nowrap;background:transparent}
.tg-platform .tg-uniform .tg-donut{width:200px;height:200px}
.tg-platform .tg-uniform .tg-chart-key{min-height:32px;gap:10px}
.tg-platform .tg-uniform .tg-donut-seg.risk-on_track{stroke:#008300}
.tg-platform .tg-uniform .tg-chart-swatch.risk-on_track{background:#008300}
.tg-platform .tg-uniform .tg-donut-seg.risk-booked_ahead{stroke:#3987e5}
.tg-platform .tg-uniform .tg-chart-swatch.risk-booked_ahead{background:#3987e5}
.tg-platform .tg-uniform .tg-donut-seg.risk-approaching_due{stroke:#22d3ee}
.tg-platform .tg-uniform .tg-chart-swatch.risk-approaching_due{background:#22d3ee}
.tg-platform .tg-uniform .tg-donut-seg.risk-slightly_overdue{stroke:#c98500}
.tg-platform .tg-uniform .tg-chart-swatch.risk-slightly_overdue{background:#c98500}
.tg-platform .tg-uniform .tg-donut-seg.risk-significantly_overdue{stroke:#9085e9}
.tg-platform .tg-uniform .tg-chart-swatch.risk-significantly_overdue{background:#9085e9}
.tg-platform .tg-uniform .tg-donut-seg.risk-likely_lost{stroke:#e66767}
.tg-platform .tg-uniform .tg-chart-swatch.risk-likely_lost{background:#e66767}
.tg-platform .tg-uniform .tg-donut-seg.risk-unknown{stroke:#8a8a85}
.tg-platform .tg-uniform .tg-chart-swatch.risk-unknown{background:#8a8a85}
.tg-platform .tg-uniform .tg-onboarding-section{border:1px solid #34343b;border-radius:14px;background:#1b1b20;overflow:hidden}
.tg-platform .tg-uniform .tg-onboarding-section > summary{padding:18px 22px;cursor:pointer;font-size:17px;font-weight:650;min-height:52px}
.tg-platform .tg-uniform .tg-onboarding-section > .tg-card{margin:0;border:0;border-top:1px solid #34343b;border-radius:0}
.tg-platform .tg-uniform .tg-table{table-layout:auto!important;min-width:800px}
.tg-platform .tg-uniform .tg-table th{white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;min-width:75px}
.tg-platform .tg-uniform .tg-table td{word-break:normal!important;overflow-wrap:normal!important}
.tg-platform .tg-uniform .tg-table .tg-btn, .tg-platform .tg-uniform .tg-table .tg-badge{white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;min-width:max-content}
.tg-platform .tg-existing-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}
.tg-platform .tg-existing-photo{border:1px solid #34343b;border-radius:12px;overflow:hidden;background:#222228}
.tg-platform .tg-existing-photo>img{width:100%;height:220px;object-fit:cover;display:block}
.tg-platform .tg-existing-photo>div{padding:14px}
.tg-platform.tg-uniform .sc-login{max-width:440px;margin:clamp(40px,12vh,120px) auto;padding:32px;background:linear-gradient(145deg,#222226,#18181b);border:1px solid #37373f;border-top:2px solid #d8b462;border-radius:16px;box-shadow:0 20px 60px #0004}
.tg-platform.tg-uniform .sc-login h1{font-size:30px;color:#f6f5f0;margin:12px 0}
.tg-platform.tg-uniform .sc-login-brand{font-size:11px;letter-spacing:2px;color:#d8b462;font-weight:700}
.tg-platform.tg-uniform .sc-login p{color:#b9c3d0;line-height:1.6}
.tg-platform.tg-uniform .sc-login .sc-sso a{display:block;text-align:center;background:#d8b462;color:#17140e;border:1px solid #d8b462;min-height:48px;border-radius:8px;padding:14px 18px;font-weight:700;margin-top:24px}
@media(max-width:500px){.tg-platform.tg-uniform .sc-login{margin:32px 16px;padding:24px}}
.tg-platform .tg-uniform #app h1, .tg-platform .tg-uniform #app h2, .tg-platform .tg-uniform #app h3, .tg-platform .tg-uniform #app h4{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;letter-spacing:-.025em;line-height:1.3}
.tg-platform .tg-uniform .tg-game-card{border-radius:12px!important;padding:20px!important;background:#19191d!important;border:1px solid #34343c!important}
.tg-platform .tg-uniform .tg-game-card h4{font-size:17px!important;font-weight:700!important;margin:12px 0 6px!important}
.tg-platform img{background:none}
