/* Shared global search: one dialog and one history on every page. */
.paxor-universal-nav-search, .paxor-modal-search-entry { display: none !important; }
.paxor-search-dialog:not([open]), .paxor-search-dialog [hidden] { display: none !important; }
.paxor-search-dialog {
    --search-bg: #0c1b23;
    --search-text: #eaf5f8;
    --search-muted: #9fb3bd;
    --search-border: rgba(118,177,194,.28);
    --search-hover: rgba(45,180,211,.12);
    position: fixed;
    inset: 0;
    margin: min(10vh, 80px) auto auto;
    width: min(720px, calc(100vw - 32px));
    max-width: none;
    max-height: calc(100dvh - min(10vh, 80px) - 24px);
    padding: 0;
    border: 1px solid var(--search-border);
    border-radius: 20px;
    background: var(--search-bg);
    color: var(--search-text);
    box-shadow: 0 24px 90px rgba(0,0,0,.55);
    overflow: hidden;
    box-sizing: border-box;
    font-family: Inter, 'Segoe UI', sans-serif;
}
.paxor-search-dialog[open] { display: flex; flex-direction: column; }
.paxor-search-dialog::backdrop { background: rgba(0,8,13,.74); backdrop-filter: blur(5px); }
html body.paxor-search-modal-open.paxor-search-modal-open { overflow: hidden !important; }
.paxor-search-dialog-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 20px 20px 12px;
    flex: 0 0 auto;
}
.paxor-search-dialog-heading h2 { margin: 0; font-size: 22px; line-height: 1.3; color: var(--search-text); }
.paxor-search-dialog button { font-family: inherit; cursor: pointer; }
.paxor-search-close {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    padding: 0;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: var(--search-muted);
    font-size: 28px;
    line-height: 1;
}
.paxor-search-close:hover { background: var(--search-hover); color: var(--search-text); }
.paxor-search-form { display: flex; gap: 10px; padding: 0 20px 18px; margin: 0; flex: 0 0 auto; }
.paxor-search-field {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1 1 auto;
    min-width: 0;
    height: 48px;
    padding: 0 14px;
    border: 1px solid var(--search-border);
    border-radius: 12px;
    background: rgba(100,160,180,.06);
    color: var(--search-muted);
    box-sizing: border-box;
}
.paxor-search-field:focus-within { border-color: #29bddc; box-shadow: 0 0 0 2px rgba(41,189,220,.12); }
html body .paxor-search-dialog #paxor-universal-search-input {
    display: block;
    width: 100%;
    min-width: 0;
    height: 100%;
    padding: 0;
    margin: 0;
    border: 0;
    outline: 0;
    box-shadow: none;
    border-radius: 0;
    background: transparent;
    color: var(--search-text);
    font: 16px/1.4 Inter, 'Segoe UI', sans-serif;
}
.paxor-search-dialog input::placeholder { color: var(--search-muted); opacity: 1; }
.paxor-search-submit {
    flex: 0 0 auto;
    padding: 0 18px;
    border: 1px solid #158aa4;
    border-radius: 12px;
    background: #087d97;
    color: #fff;
    font-size: 14px;
    font-weight: 650;
}
.paxor-search-submit:hover { background: #0b91ae; }
.paxor-search-dialog-content { min-height: 0; overflow: auto; padding: 0 20px 20px; overscroll-behavior: contain; }
.paxor-search-history-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 4px 0 8px; }
.paxor-search-history-heading h3 { color: var(--search-muted); margin: 0; font-size: 13px; font-weight: 600; }
#paxor-search-clear-history { padding: 6px 0; border: 0; background: transparent; color: #68d0e5; font-size: 12px; }
.paxor-search-history-row { display: flex; align-items: stretch; gap: 6px; border-radius: 10px; }
.paxor-search-history-row:hover { background: var(--search-hover); }
.paxor-search-history-query { text-align: start; min-width: 0; flex: 1 1 auto; padding: 12px; border: 0; border-radius: 10px; background: transparent; color: var(--search-text); font-size: 14px; overflow-wrap: anywhere; }
.paxor-search-history-remove { flex: 0 0 40px; border: 0; background: transparent; border-radius: 10px; color: var(--search-muted); font-size: 23px; }
.paxor-search-history-remove:hover { color: var(--search-text); background: var(--search-hover); }
.paxor-search-empty-history, .paxor-us-status { color: var(--search-muted); padding: 18px 12px; margin: 0; font-size: 14px; line-height: 1.5; }
.paxor-search-dialog .paxor-universal-search-results { position: static; width: 100%; min-width: 0; max-height: none; padding: 0; border: 0; background: transparent; box-shadow: none; }
.paxor-search-result-group + .paxor-search-result-group { margin-top: 12px; }
.paxor-us-heading { padding: 8px 12px; margin: 0; color: #64cee4; font-size: 12px; font-weight: 650; }
.paxor-us-link { display: block; padding: 12px; border-radius: 10px; color: var(--search-text); text-decoration: none; font-size: 15px; line-height: 1.45; overflow-wrap: anywhere; }
.paxor-us-link:is(:hover, :focus-visible) { background: var(--search-hover); color: var(--search-text); }
.paxor-us-subtitle { display: block; color: var(--search-muted); font-size: 12px; margin-top: 3px; }
.paxor-search-dialog :is(button, a):focus-visible { outline: 2px solid #3cc7e2; outline-offset: -2px; }
html body.light-theme .paxor-search-dialog {
    --search-bg: #f7fbfd;
    --search-text: #153540;
    --search-muted: #526f7c;
    --search-border: rgba(30,96,118,.24);
    --search-hover: rgba(3,125,156,.09);
}
html body.light-theme .paxor-search-dialog :is(.paxor-us-heading, #paxor-search-clear-history) { color: #08738d; }
/* Preserve the established single global entry point instead of Music's old fields. */
html body .music-search-shell { display: none !important; }
@media (min-width: 761px) {
    html body > nav .menu-left > .paxor-universal-nav-search {
        display: flex !important;
        width: 300px;
        min-width: 160px;
        max-width: 300px;
        flex: 0 1 300px;
        margin-left: 24px;
        padding: 0;
        list-style: none;
    }
    .paxor-search-desktop-trigger {
        display: flex;
        align-items: center;
        gap: 12px;
        width: 100%;
        height: 36px;
        padding: 0 14px;
        border: 1px solid rgba(26,172,207,.42);
        border-radius: 23px;
        background: linear-gradient(100deg,#07151c,#073344);
        color: #c4dee6;
        font: 13px/1.4 Inter, 'Segoe UI', sans-serif;
        cursor: pointer;
    }
    .paxor-search-desktop-trigger span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .paxor-search-desktop-trigger kbd { margin-left: auto; font: 11px/1.4 inherit; color: #91acb6; white-space: nowrap; }
    .paxor-search-desktop-trigger:hover { border-color: #20c4e7; }
    body.paxor-music-active .music-main > .music-topbar { display: none !important; }
}
@media (max-width: 760px) {
    html body .paxor-search-desktop-trigger { display: none !important; }
    html body > nav .menu-left > .paxor-universal-nav-search { display: none !important; }
    .paxor-search-dialog { width: calc(100vw - 20px); margin: max(10px, env(safe-area-inset-top)) auto auto; max-height: calc(100dvh - 24px - env(safe-area-inset-top)); border-radius: 16px; }
    .paxor-search-dialog-heading { padding: 14px 14px 10px; }
    .paxor-search-dialog-heading h2 { font-size: 20px; }
    .paxor-search-form { gap: 8px; padding: 0 14px 14px; }
    .paxor-search-field { gap: 8px; padding: 0 10px; }
    .paxor-search-submit { padding: 0 12px; }
    .paxor-search-dialog-content { padding: 0 14px 14px; }
    html body .paxor-modal-search-entry {
        display: block !important;
        position: fixed;
        top: var(--paxor-global-search-mobile-top, 58px);
        right: auto;
        left: 12px;
        width: 42px;
        height: 42px;
        margin: 0;
        padding: 0;
        z-index: 1250;
    }
    html body:is(.paxor-v56-music, :has(.artist-studio)) .paxor-modal-search-entry {
        left: auto;
        right: 10px;
    }
    html body .paxor-modal-search-entry .paxor-search-open {
        display: grid !important;
        place-items: center;
        width: 42px;
        height: 42px;
        padding: 0;
        margin: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
        color: #d8edf3;
        font-size: 22px;
        cursor: pointer;
    }
    html body .smart-contracts-page .smart-contracts-hero.smart-contracts-compact-header.smart-contracts-compact-header {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 8px !important;
        padding-left: 12px !important;
        padding-right: 6px !important;
    }
    html body .smart-contracts-page .smart-contracts-hero.smart-contracts-compact-header .smart-contracts-hero-text {
        width: auto !important;
        min-width: 0 !important;
        flex: 1 1 auto !important;
    }
    html body .smart-contracts-page .smart-contracts-hero.smart-contracts-compact-header h1 {
        justify-content: flex-start !important;
        text-align: left !important;
        white-space: nowrap;
        font-size: clamp(15px, 4.6vw, 18px) !important;
    }
    html body .smart-contracts-page .smart-contracts-hero.smart-contracts-compact-header .paxor-search-in-smart-header {
        display: block !important;
        position: static !important;
        inset: auto !important;
        transform: none !important;
        flex: 0 0 38px;
        width: 38px;
        height: 38px;
        margin: 0 0 0 auto;
        align-self: center;
    }
    html body .paxor-search-in-smart-header .paxor-search-open { width: 38px; height: 38px; }
    html body.light-theme .paxor-modal-search-entry .paxor-search-open { color: #174657; }
}
@media (prefers-reduced-motion: reduce) { .paxor-search-dialog * { scroll-behavior: auto; } }
