/* TDGram Feature 1/2: additive rules over the existing design system. */
.tdg-category-picker{position:relative;min-width:0}
.tdg-category-trigger{display:flex;gap:6px;align-items:center;min-width:0}
.tdg-category-open{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-width:0;min-height:38px;height:auto;text-align:start}
.tdg-category-label{display:flex;gap:7px;align-items:center;min-width:0;flex:1}
.tdg-category-label>span:last-child{overflow-wrap:anywhere;white-space:normal}
.tdg-category-clear{flex:0 0 32px}
.tdg-category-options{position:absolute;z-index:45;inset-inline:0;top:calc(100% + 4px);max-height:300px;overflow:auto;padding:8px;overscroll-behavior:contain}
.tdg-category-options>.rf-input{position:sticky;top:0;background:var(--color-surface);z-index:1}
.tdg-category-option{width:100%;text-align:start;white-space:normal;overflow-wrap:anywhere}
.tdg-category-option>span:last-child{min-width:0;flex:1}
.rf-imp-svcname-text,.tdg-full-service-name{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere;min-width:0;line-height:1.5}
.tdg-service-trigger{height:auto!important;min-height:38px;align-items:flex-start!important}
.tdg-service-trigger>span{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere}
.rf-imp-svcrow{height:auto;min-height:54px;align-items:center}
.tdg-unread-badge{background:#b91c1c!important;color:#fff!important;font-size:11px!important;min-width:18px!important;min-height:18px!important}
.tdg-info{display:inline-block;margin-inline-start:4px;cursor:help;font-size:12px;color:var(--color-text-muted);border-radius:3px}
.tdg-info:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:3px}
.tdg-viewing-as{position:fixed;inset-inline-end:0;top:42%;z-index:55;max-width:calc(100vw - 24px);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);border-radius:10px 0 0 10px;box-shadow:var(--shadow-3)}
.tdg-viewing-as>summary{cursor:pointer;padding:12px 8px;font-size:12px;font-weight:700;writing-mode:vertical-rl;background:var(--color-warning-soft);color:var(--state-warning-fg);border-radius:inherit;list-style:none}
.tdg-viewing-as>summary::-webkit-details-marker{display:none}
.tdg-viewing-as[open]{width:300px}
.tdg-viewing-as[open]>summary{writing-mode:horizontal-tb}
.tdg-viewing-as>div{padding:12px;max-height:45vh;overflow:auto;overflow-wrap:anywhere}
.tdg-viewing-as p{margin:0 0 12px}
.tdg-public-header{min-width:0;position:relative}
.tdg-public-brand{flex:0 1 160px;min-width:0}
.tdg-public-brand .tdg-brand-logo{max-width:100%}
.tdg-public-brand img{max-width:100%;height:28px;object-fit:contain}
.tdg-public-menu{display:none;flex:0 0 auto}
.tdg-public-menu>summary{display:flex;align-items:center;justify-content:center;width:38px;height:38px;cursor:pointer;border:1px solid var(--color-border);border-radius:8px;list-style:none}
.tdg-public-menu>summary::-webkit-details-marker{display:none}
.tdg-public-menu nav{position:absolute;top:calc(100% + 5px);inset-inline-end:12px;width:min(300px,calc(100vw - 24px));max-height:calc(100dvh - 80px);overflow:auto;padding:8px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-3)}
.tdg-public-menu nav a{display:block;padding:11px 12px;color:var(--color-text);border-radius:7px;overflow-wrap:anywhere}
.tdg-public-menu nav a:hover,.tdg-public-menu nav a:focus-visible{background:var(--color-surface-2)}
@media(max-width:639px){.tdg-public-menu{display:block}.tdg-public-header{gap:6px;padding-inline:10px}.tdg-public-brand{flex-basis:140px}.tdg-public-header>.rf-btn{font-size:12px;padding-inline:10px;flex-shrink:0}}
/* Keep nested desktop menus unclipped: wrap nav text rather than scrolling/clipping its popovers. */
@media(min-width:1280px){.tdg-desktop-navigation{flex:1 1 0;min-width:0;flex-wrap:wrap;row-gap:0}.tdg-desktop-navigation .rf-topnav-item{padding-inline:7px;font-size:12px}.tdg-aurora-header-row{height:auto;min-height:56px}.tdg-header-wallet{flex-shrink:0}.tdg-aurora-header-row>.flex-1{flex:0 0 0}}
/* Primary foreground follows the existing per-panel contrast token. */
.rf-imp-tab-active,.rf-imp-verbtn{color:var(--color-on-primary)}
@media(prefers-reduced-motion:reduce){.tdg-category-options{scroll-behavior:auto}}
