/* Telegram review polish. Kept isolated from the approved DashNOX v27 surfaces. */
.sm-dialog.sm-dialog--telegram{
  width:min(1040px,calc(100vw - 48px));
  max-width:1040px;
  max-height:min(92vh,900px);
  border-radius:22px;
  background:
    radial-gradient(circle at 14% -12%,rgba(var(--sm-accent-rgb),.12),transparent 34%),
    linear-gradient(180deg,color-mix(in srgb,var(--sm-panel) 95%,#07111b),var(--sm-panel-2));
}
.sm-dialog.sm-dialog--telegram .sm-shell{max-height:min(92vh,900px)}
.dnx-telegram-preview{min-width:0}
.dnx-telegram-preview .sm-body{padding:16px 20px 20px;overflow-x:hidden}
.dnx-telegram-preview .tg-heading{
  align-items:center;
  min-height:82px;
  padding:17px 20px 16px;
  background:
    radial-gradient(circle at 0 0,rgba(var(--sm-accent-rgb),.11),transparent 42%),
    linear-gradient(180deg,rgba(var(--user-menu-bg-rgb,5,11,25),.96),rgba(var(--user-menu-bg-rgb,5,11,25),.84));
}
.tg-heading-copy{min-width:0}
.tg-heading-copy h2{margin-top:3px;font-size:1.34rem}
.tg-heading-copy .sm-source-row{
  margin-top:5px;
  color:var(--sm-muted);
  font-size:.78rem;
  font-weight:650;
}
.dnx-telegram-preview .sm-close{
  width:38px;
  height:38px;
  flex-basis:38px;
  border-radius:12px;
}

/* Selection summary */
.dnx-telegram-preview .tg-metrics{
  margin-bottom:10px;
  border-radius:13px;
  background:rgba(var(--user-menu-bg-rgb,5,11,25),.25);
}
.dnx-telegram-preview .tg-metrics article{padding:10px 13px}
.dnx-telegram-preview .tg-metrics span{font-size:.61rem}
.dnx-telegram-preview .tg-metrics strong{font-size:.94rem;margin-top:3px}
.dnx-telegram-preview .dnx-telegram-period{font-size:.82rem;overflow-wrap:anywhere}
.tg-warning{
  margin:9px 0 11px;
  padding:9px 11px;
  border:1px solid rgba(255,173,121,.2);
  border-radius:10px;
  background:rgba(255,143,82,.06);
  color:#ffc29d;
  font-size:.76rem;
  font-weight:700;
}

/* Source stays available without flooding the primary form. */
.tg-source-details{
  margin:0 0 14px!important;
  border:1px solid var(--sm-line);
  border-radius:11px;
  background:rgba(var(--user-menu-bg-rgb,5,11,25),.22);
  overflow:hidden;
}
.tg-source-details>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:10px 12px!important;
  list-style:none;
  color:var(--sm-muted);
  font-size:.75rem;
  font-weight:750!important;
  cursor:pointer;
}
.tg-source-details>summary::-webkit-details-marker{display:none}
.tg-source-details>summary::after{
  content:'+';
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  flex:0 0 20px;
  border-radius:6px;
  color:var(--sm-accent);
  background:rgba(var(--sm-accent-rgb),.07);
  font-size:.95rem;
}
.tg-source-details[open]>summary::after{content:'−'}
.tg-source-count{margin-left:auto;color:var(--sm-muted-2);font-size:.68rem;font-weight:650}
.tg-source-content{padding:0 12px 11px;border-top:1px solid var(--sm-line)}
.dnx-telegram-originals article{padding:12px 0;border-top:1px solid var(--sm-line)}
.dnx-telegram-originals article:first-child{border-top:0}
.tg-message-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.tg-message-head strong{font-size:.76rem;color:var(--sm-text)}
.tg-message-head span{color:var(--sm-muted-2);font-size:.68rem}
.dnx-telegram-originals pre{
  margin:7px 0 0;
  color:var(--sm-muted);
  font:inherit;
  font-size:.75rem;
  line-height:1.45;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.dnx-telegram-originals img{display:block;max-width:100%;height:auto;border-radius:10px;margin:9px 0}
.tg-source-content details{margin:8px 0!important}
.tg-source-content details summary{padding:5px 0!important;font-size:.72rem}
.tg-source-links{padding-top:8px;border-top:1px solid var(--sm-line)}
.tg-source-links p{margin:6px 0;font-size:.72rem}
.dnx-telegram-preview a,.dnx-telegram-link{overflow-wrap:anywhere;word-break:break-word}

/* Main form */
.tg-main-fields{
  padding:14px;
  border:1px solid var(--sm-line);
  border-radius:15px;
  background:
    linear-gradient(180deg,rgba(var(--sm-accent-rgb),.032),transparent 48%),
    rgba(var(--user-menu-bg-rgb,5,11,25),.28);
}
.tg-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.tg-form-grid+.tg-form-grid{margin-top:10px}
.dnx-telegram-preview .sm-field{
  color:var(--sm-muted);
  font-size:.71rem;
  font-weight:760;
}
.dnx-telegram-preview .sm-field input,
.dnx-telegram-preview .sm-field select,
.dnx-telegram-preview .sm-field textarea{
  width:100%;
  min-height:41px;
  margin-top:6px;
  padding:9px 11px;
  border:1px solid var(--sm-line);
  border-radius:10px;
  outline:0;
  background:var(--sm-field);
  color:var(--sm-text);
  font:inherit;
  font-size:.82rem;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.dnx-telegram-preview .sm-field textarea{
  min-height:62px;
  line-height:1.42;
  resize:vertical;
}
.dnx-telegram-preview .sm-field input:focus,
.dnx-telegram-preview .sm-field select:focus,
.dnx-telegram-preview .sm-field textarea:focus{
  border-color:rgba(var(--sm-accent-rgb),.52);
  box-shadow:0 0 0 3px rgba(var(--sm-accent-rgb),.075);
}
.tg-notes{display:block;margin-top:10px}

/* Calendar replaces the browser-native datetime popup. */
.dnx-telegram-preview .tg-datetime{min-width:0}
.dnx-telegram-preview .sm-datetime-trigger{
  min-height:63px;
  grid-template-columns:36px minmax(0,1fr) auto;
  padding:9px 10px;
  border-radius:10px;
  background:var(--sm-field);
}
.dnx-telegram-preview .sm-datetime-icon{width:34px;height:34px;border-radius:9px;font-size:.9rem}
.tg-datetime-copy{display:flex;min-width:0;flex-direction:column;gap:2px}
.tg-datetime-copy small{color:var(--sm-muted);font-size:.65rem;font-weight:760}
.tg-datetime-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.81rem!important}
.dnx-telegram-preview .sm-datetime-change{font-size:.67rem}
.dnx-telegram-preview .sm-datetime-popover{
  left:auto;
  right:0;
  width:min(520px,calc(100vw - 64px));
  max-width:min(520px,calc(100vw - 64px));
  grid-template-columns:minmax(250px,1fr) 150px;
  top:calc(100% + 8px);
  border-radius:15px;
  border-color:rgba(var(--sm-accent-rgb),.24);
  box-shadow:0 28px 80px rgba(0,0,0,.58);
}
.dnx-telegram-preview .sm-calendar-pane{padding:15px}
.dnx-telegram-preview .sm-calendar-day{height:34px;border-radius:9px;font-size:.73rem}
.dnx-telegram-preview .sm-calendar-day.is-today:not(.is-selected){
  color:var(--sm-accent);
  box-shadow:inset 0 0 0 1px rgba(var(--sm-accent-rgb),.32);
}
.dnx-telegram-preview .sm-calendar-day.is-selected{
  background:linear-gradient(180deg,color-mix(in srgb,var(--sm-accent) 90%,white),var(--sm-accent));
  box-shadow:0 7px 18px rgba(var(--sm-accent-rgb),.24);
}
.dnx-telegram-preview .sm-time-pane{padding:15px}
.tg-time-shortcuts{display:flex;justify-content:space-between;gap:10px;margin-top:12px}
.tg-date-apply{width:100%;margin-top:12px;min-height:36px!important;border-radius:9px!important}

/* Image/VH status */
.tg-vision-status{
  display:grid;
  grid-template-columns:32px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  margin:12px 0 14px;
  padding:10px 12px;
  border:1px solid var(--sm-line);
  border-radius:12px;
  background:rgba(var(--user-menu-bg-rgb,5,11,25),.30);
}
.tg-vision-icon{
  width:30px;
  height:30px;
  border-radius:9px;
  background:rgba(var(--sm-accent-rgb),.10);
  box-shadow:inset 0 0 0 1px rgba(var(--sm-accent-rgb),.13);
  position:relative;
}
.tg-vision-icon::before{
  content:'';
  position:absolute;
  inset:8px;
  border:2px solid var(--sm-accent);
  border-radius:4px;
}
.tg-vision-status>div:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:2px}
.tg-vision-status strong{font-size:.78rem;color:var(--sm-text)}
.tg-vision-status span{font-size:.70rem;color:var(--sm-muted)}
.tg-vision-status.is-loading .tg-vision-icon::before{border-radius:50%;border-right-color:transparent;animation:smSpin .75s linear infinite}
.tg-vision-status.is-success{border-color:rgba(72,190,115,.22);background:rgba(48,124,72,.07)}
.tg-vision-status.is-success .tg-vision-icon{background:rgba(72,190,115,.10)}
.tg-vision-status.is-success .tg-vision-icon::before{border-color:#65d994;border-radius:50%}
.tg-vision-status.is-error{border-color:rgba(255,112,112,.22);background:rgba(180,52,52,.06)}
.tg-vision-status.is-error .tg-vision-icon{background:rgba(255,112,112,.08)}
.tg-vision-status.is-error .tg-vision-icon::before{border-color:#ff8b8b;transform:rotate(45deg);border-radius:2px}
.tg-vision-status .sm-link-button{font-size:.72rem;white-space:nowrap}
.tg-hidden-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}



/* Searchable bookmaker + account creation controls. */
.tg-house-field{min-width:0}
.tg-house-picker{position:relative;min-width:0}
.dnx-telegram-preview .tg-house-picker>input{
  padding-right:34px;
  background-image:linear-gradient(45deg,transparent 50%,var(--sm-muted) 50%),linear-gradient(135deg,var(--sm-muted) 50%,transparent 50%);
  background-position:calc(100% - 17px) 18px,calc(100% - 12px) 18px;
  background-size:5px 5px,5px 5px;
  background-repeat:no-repeat;
}
.tg-house-results{
  position:absolute;
  z-index:6100;
  left:0;
  right:0;
  top:calc(100% + 6px);
  max-height:250px;
  overflow:auto;
  padding:6px;
  border:1px solid var(--sm-line-strong);
  border-radius:11px;
  background:rgba(var(--user-menu-bg-rgb,5,11,25),.99);
  box-shadow:0 18px 44px rgba(0,0,0,.5);
}
.tg-house-results[hidden]{display:none!important}
.tg-house-results button{
  width:100%;
  min-height:34px;
  padding:7px 9px;
  border:0;
  border-radius:8px;
  background:transparent;
  color:var(--sm-text);
  text-align:left;
  font:inherit;
  font-size:.76rem;
  font-weight:720;
  cursor:pointer;
}
.tg-house-results button:hover,.tg-house-results button:focus{outline:0;background:rgba(var(--sm-accent-rgb),.11);color:var(--sm-accent)}
.tg-house-empty{padding:10px;color:var(--sm-muted-2);font-size:.72rem}
.tg-account-tools{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:7px 0 0;
  padding:0 2px;
  color:var(--sm-muted-2);
  font-size:.65rem;
}
.tg-account-tools .sm-link-button{font-size:.67rem;white-space:nowrap}
.tg-account-create{
  margin-top:8px;
  padding:10px;
  border:1px solid rgba(var(--sm-accent-rgb),.18);
  border-radius:11px;
  background:rgba(var(--sm-accent-rgb),.045);
}
.tg-account-create[hidden]{display:none!important}
.tg-account-create-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:8px}
.tg-account-create-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:8px}
.tg-account-create-actions span{margin-right:auto;color:#ffad79;font-size:.67rem}
.tg-account-create-actions .primary-button{min-height:32px!important;padding:6px 12px!important;border-radius:8px!important;font-size:.70rem!important}

/* Entries */
.tg-entries-section{margin-top:4px}
.tg-section-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  margin:0 1px 9px;
}
.tg-section-head>div{display:flex;align-items:center;gap:8px}
.tg-section-head>div>strong{
  min-width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:7px;
  background:rgba(var(--sm-accent-rgb),.08);
  color:var(--sm-accent);
  font-size:.72rem;
}
.tg-section-head .secondary-button{min-height:32px;padding:6px 10px;border-radius:8px;font-size:.72rem}
.dnx-telegram-preview .tg-legs{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.dnx-telegram-preview .tg-leg-card{
  position:relative;
  padding:13px;
  border-radius:14px;
  background:
    radial-gradient(circle at 0 0,rgba(var(--sm-accent-rgb),.055),transparent 46%),
    rgba(var(--user-menu-bg-rgb,5,11,25),.31);
}
.dnx-telegram-preview .tg-leg-card legend{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:calc(100% - 10px);
  gap:10px;
}
.dnx-telegram-preview .tg-leg-card legend>span:first-child{
  color:var(--sm-text);
  font-size:.77rem;
  font-weight:850;
  letter-spacing:0;
  text-transform:none;
}
.tg-leg-kind{
  padding:3px 7px;
  border:1px solid rgba(var(--sm-accent-rgb),.20);
  border-radius:999px;
  background:rgba(var(--sm-accent-rgb),.07);
  color:var(--sm-accent)!important;
  font-size:.58rem!important;
  font-weight:900!important;
  letter-spacing:.05em!important;
}
.tg-leg-grid{display:grid;gap:8px}
.tg-leg-grid--account{grid-template-columns:1fr 1fr}
.tg-leg-grid--numbers{grid-template-columns:.8fr 1fr .9fr;margin-top:9px}
.dnx-telegram-preview .tg-leg-card .dashnox-select-control{margin-top:6px}
.dnx-telegram-preview .tg-leg-card .dashnox-select-button{min-height:40px;border-radius:10px;font-size:.78rem}
.tg-leg-toggles{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.tg-chip-check{position:relative;margin:0;cursor:pointer}
.tg-chip-check input{position:absolute;opacity:0;pointer-events:none}
.tg-chip-check span{
  display:block;
  padding:6px 9px;
  border:1px solid var(--sm-line);
  border-radius:8px;
  background:rgba(var(--user-menu-bg-rgb,5,11,25),.28);
  color:var(--sm-muted);
  font-size:.66rem;
  font-weight:800;
  transition:.15s ease;
}
.tg-chip-check input:checked+span{
  border-color:rgba(var(--sm-accent-rgb),.34);
  background:rgba(var(--sm-accent-rgb),.12);
  color:var(--sm-accent);
  box-shadow:inset 0 0 0 1px rgba(var(--sm-accent-rgb),.05);
}
.tg-chip-check:focus-within span{box-shadow:0 0 0 3px rgba(var(--sm-accent-rgb),.08)}
.tg-leg-more{margin:8px 0 0!important;border-top:1px solid var(--sm-line)}
.tg-leg-more>summary{padding:9px 0 4px!important;color:var(--sm-muted);font-size:.69rem;font-weight:780!important}
.tg-adjustment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:5px}
.tg-link-field{margin-top:8px}
.tg-remove-leg{margin-top:9px;font-size:.68rem;color:#ff9a9a!important}
.tg-remove-leg:disabled{display:none}

.tg-status{margin:10px 1px 0;color:#ffad79;font-size:.74rem;white-space:pre-wrap}
.tg-status:empty{display:none}
.dnx-telegram-preview .tg-footer{
  bottom:-20px;
  margin:16px -20px -20px;
  padding:12px 20px;
  background:rgba(var(--user-menu-bg-rgb,5,11,25),.95);
}
.tg-footer-hint{color:var(--sm-muted-2);font-size:.70rem;font-weight:650}
.dnx-telegram-preview .tg-footer .primary-button{min-width:190px}
.tg-confirmed{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:0}

@media(max-width:820px){
  .sm-dialog.sm-dialog--telegram{width:min(100% - 18px,780px);max-height:94vh;border-radius:17px}
  .sm-dialog.sm-dialog--telegram .sm-shell{max-height:94vh}
  .dnx-telegram-preview .tg-legs{grid-template-columns:1fr}
}
@media(max-width:650px){
  .sm-dialog.sm-dialog--telegram{width:calc(100% - 8px);max-height:96vh;border-radius:13px}
  .sm-dialog.sm-dialog--telegram .sm-shell{max-height:96vh}
  .dnx-telegram-preview .sm-body{padding:12px 12px 14px}
  .dnx-telegram-preview .tg-heading{padding:14px 14px 13px;min-height:72px}
  .tg-form-grid,.tg-leg-grid--account,.tg-leg-grid--numbers,.tg-adjustment-grid,.tg-account-create-grid{grid-template-columns:1fr}
  .dnx-telegram-preview .sm-datetime-popover{position:static;width:100%;max-width:100%;grid-template-columns:1fr;margin-top:8px}
  .dnx-telegram-preview .sm-time-pane{border-left:0;border-top:1px solid var(--sm-line)}
  .tg-source-count{display:none}
  .tg-vision-status{grid-template-columns:30px minmax(0,1fr)}
  .tg-vision-status .sm-link-button{grid-column:2;justify-self:start}
  .dnx-telegram-preview .tg-footer{position:static;display:flex;flex-direction:column;align-items:stretch;margin:14px 0 0;padding:12px 0 0;background:transparent;backdrop-filter:none}
  .tg-footer-hint{display:none}
  .dnx-telegram-preview .tg-footer .primary-button{width:100%;min-width:0}
}
