.bnb-profile-frame { background: var(--bnb-surface); border: 1px solid var(--bnb-line); border-radius: var(--bnb-radius-card); padding: var(--bnb-space-5); margin-block: var(--bnb-space-4); min-width: 0; }
.bnb-profile-heading { display: flex; flex-wrap: wrap; align-items: center; gap: var(--bnb-space-4); min-width: 0; }
.bnb-profile-heading > * { min-width: 0; }
.bnb-frame-identity { flex: 1 1 12rem; }
.bnb-profile-heading h1 { margin: 0; overflow-wrap: anywhere; }
.bnb-profile-heading p { overflow-wrap: anywhere; }
.bnb-frame-avatar { position: relative; display: grid; place-items: center; flex: 0 0 80px; width: 80px; height: 80px; border-radius: 50%; overflow: hidden; background: var(--bnb-surface-2); color: var(--bnb-color-navy); font-size: 2rem; font-weight: 700; }
.bnb-frame-avatar img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.bnb-profile-frame .bnb-dashboard-actions { margin: var(--bnb-space-4) 0 0; }
.bnb-profile-frame .bnb-dashboard-actions a { white-space: nowrap; justify-content: center; max-width: 100%; }
.bnb-profile-tabs-wrap { position: relative; min-width: 0; max-width: 100%; }
.bnb-profile-tabs-wrap::before, .bnb-profile-tabs-wrap::after { content: ""; position: absolute; z-index: 1; top: 0; bottom: 0; width: 2rem; pointer-events: none; opacity: 0; }
.bnb-profile-tabs-wrap::before { left: 0; background: linear-gradient(to right, var(--bnb-surface), transparent); }
.bnb-profile-tabs-wrap::after { right: 0; background: linear-gradient(to left, var(--bnb-surface), transparent); }
.bnb-profile-tabs-wrap.has-more-left::before, .bnb-profile-tabs-wrap.has-more-right::after { opacity: 1; }
.bnb-profile-tabs { display: flex; gap: var(--bnb-space-5); overflow-x: auto; overscroll-behavior-inline: contain; max-width: 100%; margin-top: var(--bnb-space-4); }
.bnb-profile-tabs a { position: relative; flex: none; padding: var(--bnb-space-3) 0; text-decoration: none; }
.bnb-profile-tabs a[aria-current="page"] { border-bottom: 3px solid currentColor; font-weight: 700; }
.bnb-profile-tabs a:focus-visible { outline: 2px solid var(--bnb-color-focus); outline-offset: -2px; }
.bnb-community-columns { grid-template-columns: minmax(0, 1fr); }
.bnb-community-columns > *, .bnb-community-panel { min-width: 0; }
.bnb-community-columns .bnb-community-panel dl { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
@media (max-width: 600px) {
 .bnb-profile-frame { padding: var(--bnb-space-2); }
 .bnb-frame-avatar { flex-basis: 56px; width: 56px; height: 56px; font-size: 1.5rem; }
 .bnb-profile-frame .bnb-dashboard-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--bnb-space-2); margin-inline: -4px; }
 .bnb-profile-frame .bnb-dashboard-actions a { min-width: 0; min-height: 44px; padding-inline: 0; font-size: 15px; font-weight: 400; line-height: 1.3; letter-spacing: -0.1px; }
 .bnb-profile-frame .bnb-dashboard-actions a:first-child { grid-column: 1 / -1; font-weight: 700; }
 .bnb-profile-frame .bnb-dashboard-actions > a:last-child:nth-child(odd) { grid-column: auto; }
 .bnb-profile-tabs-wrap { position: sticky; top: 0; z-index: 5; background: var(--bnb-surface); }
}

.bnb-about { margin-block: 1rem; }
.bnb-about summary { cursor: pointer; font-weight: 700; }
.bnb-about-form { display: grid; gap: .75rem; margin-top: .75rem; max-width: 42rem; }
.bnb-about-form label { display: grid; gap: .25rem; }
.bnb-about-form input, .bnb-about-form textarea { width: 100%; max-width: 100%; box-sizing: border-box; }
.bnb-about-form button { justify-self: start; }
@media (max-width: 600px) { .bnb-profile-frame .bnb-dashboard-actions a:last-child { white-space: normal; overflow-wrap: anywhere; text-align: center; } }

.bnb-about-display p:empty { display: none; }
.bnb-about-display [data-about="bio"] { white-space: pre-line; }
.bnb-hobby { display: inline-block; border-radius: 1rem; background: var(--bnb-surface-2); padding: .2rem .7rem; margin: .2rem; }

.bnb-about-row { display: flex; flex-wrap: wrap; gap: .4rem; align-items: baseline; margin-block: .35rem; }
.bnb-about-value { white-space: pre-line; overflow-wrap: anywhere; }
.bnb-about-empty { color: var(--bnb-text-muted, #555); }
.bnb-about-row .bnb-about { margin: 0; }
.bnb-about-row summary { list-style: none; cursor: pointer; padding: .2rem .5rem; }
.bnb-about-row summary::-webkit-details-marker { display: none; }
.bnb-about-row details[open] { flex-basis: 100%; }
.bnb-about-row .bnb-about-form { margin: .5rem 0; }
.bnb-profile-details-form { display: grid; gap: .5rem; }
.bnb-profile-details-form > input, .bnb-profile-details-form > select { width: 100%; max-width: 40rem; }
.bnb-profile-details-form > button { justify-self: start; }
.bnb-profile-motto { font-style: italic; }
.bnb-public-about h2 { font-size: 1rem; margin-block: .7rem .2rem; }
.bnb-public-hobbies { margin-block: .5rem; }

.bnb-field-heading { display:flex; align-items:center; flex-wrap:wrap; gap:.5rem; }
.bnb-field-heading .bnb-visibility { display:inline-flex; align-items:center; gap:.25rem; font-size:.85em; }
.bnb-field-heading .bnb-visibility select { width:auto; max-width:100%; }

.bnb-overview-waiting { list-style: none; padding: 0; margin: 0; }
.bnb-overview-waiting li { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-block: .75rem; }
.bnb-forum-level { display: flex; align-items: center; gap: .35rem; flex-wrap: wrap; }
.bnb-forum-level select { max-width: 100%; }
@media (max-width: 600px) { .bnb-overview-waiting li { display: flex; flex-direction: column; align-items: stretch; } .bnb-overview-waiting .bnb-button { width: 100%; text-align: center; box-sizing: border-box; } }

.bnb-profile-tabs a { min-height: 44px; display: inline-flex; align-items: center; gap: .3rem; box-sizing: border-box; }
.bnb-profile-frame a:focus-visible, .bnb-profile-frame button:focus-visible, .bnb-profile-frame summary:focus-visible, .bnb-profile-tabs a:focus-visible, .bnb-tab-panel a:focus-visible, .bnb-tab-panel button:focus-visible { outline: 3px solid #174b8c; outline-offset: 2px; }
@media (max-width: 768px) { .bnb-profile-tabs-wrap { position: sticky; top: 0; z-index: 5; background: #fff; } }

.bnb-tab-count { display: inline-flex; align-items: center; justify-content: center; min-width: 1.4em; padding: .05em .35em; border-radius: 1em; background: #174b8c; color: #fff; font-size: .8em; line-height: 1.4; }

.bnb-profile-frame [id], .bnb-tab-panel [id] { scroll-margin-top: calc(var(--bnb-profile-tabs-height, 0px) + 16px); }
.bnb-tab-panel .bnb-recognition-section, .bnb-tab-panel .bnb-tab-intro { padding-inline: var(--bnb-space-4); }

#bnb-profile-preview [role="group"] { display: flex; gap: .5rem; flex-wrap: wrap; }
#bnb-profile-preview [data-preview-mode] { min-height: 44px; min-width: 44px; padding: .5rem 1rem; border: 2px solid currentColor; border-radius: .5rem; background: white; color: #183851; cursor: pointer; }
#bnb-profile-preview [data-preview-mode][aria-pressed="true"] { background: #183851; color: white; font-weight: 700; text-decoration: underline; text-decoration-thickness: 2px; }
#bnb-profile-preview [data-preview-mode]:focus-visible { outline: 3px solid #a65c00; outline-offset: 3px; }

#bnb-doc-verify-profession fieldset { border: 0; margin: 0; padding: 0; }
#bnb-doc-verify-profession legend { font-weight: 600; padding: 0; margin-bottom: .5rem; }

.bnb-about-row[data-field="bio"] .bnb-about-value:not(.bnb-bio-expanded) { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }

.bnb-profile-frame [hidden], .bnb-tab-panel [hidden] { display: none !important; }
