:root {
    --bugpk-ink: #13253a;
    --bugpk-muted: #64748b;
    --bugpk-primary: #0f9f9a;
    --bugpk-primary-dark: #087f7b;
    --bugpk-primary-soft: #e8f8f6;
    --bugpk-accent: #f59e0b;
    --bugpk-line: #dbe7ec;
    --bugpk-surface: #ffffff;
    --bugpk-canvas: #f5f9fb;
    --bugpk-shadow: 0 18px 45px rgba(25, 61, 78, .09);
    --bugpk-radius: 18px;
}

html {
    overflow-x: hidden;
    scroll-padding-top: 76px;
}

body.page-public-home,
body.page-public-links,
body.page-public-changelog,
body.page-public-sponsor,
body.page-public-doc,
body.page-auth,
body.page-user-console {
    min-width: 320px;
    overflow-x: hidden;
    color: var(--bugpk-ink);
    background: var(--bugpk-canvas);
    font-family: Inter, "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    text-rendering: optimizeLegibility;
}

body.page-public-links *,
body.page-public-changelog *,
body.page-public-sponsor *,
body.page-public-doc *,
body.page-auth *,
body.page-user-console * {
    box-sizing: border-box;
}

body.page-public-links img,
body.page-public-changelog img,
body.page-public-sponsor img,
body.page-public-doc img,
body.page-auth img,
body.page-user-console img,
body.page-public-links video,
body.page-public-doc video {
    max-width: 100%;
    height: auto;
}

body.page-public-links a,
body.page-public-changelog a,
body.page-public-sponsor a,
body.page-public-doc a,
body.page-auth a,
body.page-user-console a,
body.page-public-links button,
body.page-public-changelog button,
body.page-public-sponsor button,
body.page-public-doc button,
body.page-auth button,
body.page-user-console button,
body.page-public-links input,
body.page-public-links select,
body.page-public-links textarea,
body.page-auth input,
body.page-auth select,
body.page-auth textarea {
    -webkit-tap-highlight-color: transparent;
}

body.page-public-links :focus-visible,
body.page-public-changelog :focus-visible,
body.page-public-sponsor :focus-visible,
body.page-public-doc :focus-visible,
body.page-auth :focus-visible,
body.page-user-console :focus-visible {
    outline: 3px solid rgba(15, 159, 154, .32);
    outline-offset: 3px;
}

/* Shared header menu controls: keep the menu trigger visible in dark mode. */
body.theme-dark.page-public-home #page-header .btn-alt-secondary,
body.theme-dark.page-public-links #page-header .btn-alt-secondary,
body.theme-dark.page-public-changelog #page-header .btn-alt-secondary,
body.theme-dark.page-public-sponsor #page-header .btn-alt-secondary,
body.theme-dark.page-public-doc #page-header .btn-alt-secondary {
    color: #dcebee !important;
    background: #1b2a32 !important;
    border: 1px solid #3b505a !important;
    box-shadow: 0 5px 16px rgba(0, 0, 0, .2) !important;
}

body.theme-dark.page-public-home #page-header .btn-alt-secondary:hover,
body.theme-dark.page-public-home #page-header .btn-alt-secondary:focus,
body.theme-dark.page-public-home #page-header .btn-alt-secondary.show,
body.theme-dark.page-public-home #page-header .btn-alt-secondary[aria-expanded="true"],
body.theme-dark.page-public-links #page-header .btn-alt-secondary:hover,
body.theme-dark.page-public-links #page-header .btn-alt-secondary:focus,
body.theme-dark.page-public-links #page-header .btn-alt-secondary.show,
body.theme-dark.page-public-links #page-header .btn-alt-secondary[aria-expanded="true"],
body.theme-dark.page-public-changelog #page-header .btn-alt-secondary:hover,
body.theme-dark.page-public-changelog #page-header .btn-alt-secondary:focus,
body.theme-dark.page-public-changelog #page-header .btn-alt-secondary.show,
body.theme-dark.page-public-changelog #page-header .btn-alt-secondary[aria-expanded="true"],
body.theme-dark.page-public-sponsor #page-header .btn-alt-secondary:hover,
body.theme-dark.page-public-sponsor #page-header .btn-alt-secondary:focus,
body.theme-dark.page-public-sponsor #page-header .btn-alt-secondary.show,
body.theme-dark.page-public-sponsor #page-header .btn-alt-secondary[aria-expanded="true"],
body.theme-dark.page-public-doc #page-header .btn-alt-secondary:hover,
body.theme-dark.page-public-doc #page-header .btn-alt-secondary:focus,
body.theme-dark.page-public-doc #page-header .btn-alt-secondary.show,
body.theme-dark.page-public-doc #page-header .btn-alt-secondary[aria-expanded="true"] {
    color: #ffffff !important;
    background: #24504f !important;
    border-color: #59b9af !important;
    box-shadow: 0 0 0 3px rgba(89, 185, 175, .16) !important;
}

body.theme-dark.page-public-home #page-header .btn-alt-secondary i,
body.theme-dark.page-public-links #page-header .btn-alt-secondary i,
body.theme-dark.page-public-changelog #page-header .btn-alt-secondary i,
body.theme-dark.page-public-sponsor #page-header .btn-alt-secondary i,
body.theme-dark.page-public-doc #page-header .btn-alt-secondary i {
    color: inherit !important;
    opacity: 1 !important;
}

body.theme-dark.page-public-home #page-header .dropdown-menu,
body.theme-dark.page-public-links #page-header .dropdown-menu,
body.theme-dark.page-public-changelog #page-header .dropdown-menu,
body.theme-dark.page-public-sponsor #page-header .dropdown-menu,
body.theme-dark.page-public-doc #page-header .dropdown-menu {
    background: #17242b !important;
    border: 1px solid #354952 !important;
    box-shadow: 0 18px 45px rgba(0, 0, 0, .34) !important;
}

body.theme-dark.page-public-home #page-header .dropdown-menu .bg-body-light,
body.theme-dark.page-public-links #page-header .dropdown-menu .bg-body-light,
body.theme-dark.page-public-changelog #page-header .dropdown-menu .bg-body-light,
body.theme-dark.page-public-sponsor #page-header .dropdown-menu .bg-body-light,
body.theme-dark.page-public-doc #page-header .dropdown-menu .bg-body-light {
    background: #1d2d35 !important;
    border-color: #354952 !important;
}

body.theme-dark.page-public-home #page-header .dropdown-item,
body.theme-dark.page-public-links #page-header .dropdown-item,
body.theme-dark.page-public-changelog #page-header .dropdown-item,
body.theme-dark.page-public-sponsor #page-header .dropdown-item,
body.theme-dark.page-public-doc #page-header .dropdown-item {
    color: #dbe8ec !important;
}

body.theme-dark.page-public-home #page-header .dropdown-item:hover,
body.theme-dark.page-public-home #page-header .dropdown-item:focus,
body.theme-dark.page-public-links #page-header .dropdown-item:hover,
body.theme-dark.page-public-links #page-header .dropdown-item:focus,
body.theme-dark.page-public-changelog #page-header .dropdown-item:hover,
body.theme-dark.page-public-changelog #page-header .dropdown-item:focus,
body.theme-dark.page-public-sponsor #page-header .dropdown-item:hover,
body.theme-dark.page-public-sponsor #page-header .dropdown-item:focus,
body.theme-dark.page-public-doc #page-header .dropdown-item:hover,
body.theme-dark.page-public-doc #page-header .dropdown-item:focus {
    color: #ffffff !important;
    background: #263a43 !important;
}

body.theme-dark.page-public-home #page-header .dropdown-divider,
body.theme-dark.page-public-links #page-header .dropdown-divider,
body.theme-dark.page-public-changelog #page-header .dropdown-divider,
body.theme-dark.page-public-sponsor #page-header .dropdown-divider,
body.theme-dark.page-public-doc #page-header .dropdown-divider {
    border-color: #354952 !important;
}

body.page-public-links .content,
body.page-public-changelog .content,
body.page-public-sponsor .content,
body.page-public-doc .content,
body.page-user-console .content {
    width: min(100%, 1320px);
}

body.page-public-links .block,
body.page-public-changelog .timeline-content,
body.page-public-changelog .feedback-card,
body.page-public-sponsor .block,
body.page-public-doc .block,
body.page-auth .block,
body.page-user-console .block {
    border: 1px solid var(--bugpk-line);
    border-radius: var(--bugpk-radius);
    box-shadow: 0 10px 30px rgba(25, 61, 78, .055);
}

body.page-public-links .block-header,
body.page-public-sponsor .block-header,
body.page-public-doc .block-header,
body.page-auth .block-header,
body.page-user-console .block-header {
    min-height: 58px;
    border-radius: var(--bugpk-radius) var(--bugpk-radius) 0 0;
}

body.page-public-links .btn,
body.page-public-changelog .btn,
body.page-public-sponsor .btn,
body.page-public-doc .btn,
body.page-auth .btn,
body.page-user-console .btn {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    border-radius: 10px;
}

body.page-public-links .form-control,
body.page-public-links .form-select,
body.page-auth .form-control,
body.page-auth .form-select,
body.page-user-console .form-control,
body.page-user-console .form-select {
    min-height: 48px;
    border-radius: 11px;
}

body.page-public-links textarea.form-control,
body.page-auth textarea.form-control,
body.page-user-console textarea.form-control {
    min-height: 112px;
}

/* Friend directory: a quiet network map rather than a generic card wall. */
body.page-public-links {
    background:
        radial-gradient(circle at 8% 5%, rgba(15, 159, 154, .11), transparent 28rem),
        linear-gradient(180deg, #f8fcfd 0, var(--bugpk-canvas) 38rem);
}

.page-public-links #page-header {
    border-bottom: 1px solid rgba(207, 226, 232, .9);
    background: rgba(255, 255, 255, .88);
    backdrop-filter: blur(14px);
}

.page-public-links .content-header {
    width: min(100%, 1320px);
    min-height: 68px;
    gap: 1rem;
}

.page-public-links .friend-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin: 1.5rem 0;
    padding: clamp(1.6rem, 4vw, 3.4rem);
    border: 1px solid rgba(15, 159, 154, .18);
    border-radius: 24px;
    background:
        linear-gradient(rgba(15, 159, 154, .08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(15, 159, 154, .08) 1px, transparent 1px),
        linear-gradient(135deg, #fff 0%, #effbf9 100%);
    background-size: 34px 34px, 34px 34px, auto;
    box-shadow: var(--bugpk-shadow);
}

.page-public-links .friend-hero::before,
.page-public-links .friend-hero::after {
    content: "";
    position: absolute;
    z-index: -1;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--bugpk-primary);
    box-shadow:
        92px 36px 0 -3px rgba(15, 159, 154, .55),
        176px -18px 0 2px rgba(245, 158, 11, .6),
        248px 54px 0 -1px rgba(15, 159, 154, .38);
    opacity: .8;
}

.page-public-links .friend-hero::before {
    top: 22%;
    right: 19%;
}

.page-public-links .friend-hero::after {
    right: 32%;
    bottom: 18%;
    transform: scale(.72);
}

.page-public-links .friend-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: .8rem;
    color: var(--bugpk-primary-dark);
    font: 700 .74rem/1.2 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.page-public-links .friend-hero h1 {
    max-width: 720px;
    margin: 0;
    color: var(--bugpk-ink);
    font-size: clamp(1.75rem, 4.4vw, 3.35rem);
    line-height: 1.08;
    letter-spacing: -.04em;
}

.page-public-links .friend-hero p {
    max-width: 680px;
    margin: 1rem 0 0;
    color: var(--bugpk-muted);
    font-size: clamp(.95rem, 1.4vw, 1.08rem);
    line-height: 1.8;
}

.page-public-links .friend-hero__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    margin-top: 1.3rem;
}

.page-public-links .friend-hero__pill,
.page-public-links .link-category {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .38rem .68rem;
    border: 1px solid rgba(15, 159, 154, .18);
    border-radius: 999px;
    color: var(--bugpk-primary-dark);
    background: rgba(255, 255, 255, .82);
    font: 700 .72rem/1.2 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.page-public-links .friend-directory {
    overflow: hidden;
    background: rgba(255, 255, 255, .94);
}

.page-public-links .friend-directory .block-content {
    padding: clamp(1rem, 2.5vw, 2rem);
}

.page-public-links .link-card-col {
    display: flex;
}

.page-public-links .link-card {
    width: 100%;
    min-height: 132px;
    overflow: hidden;
    color: inherit;
    background: linear-gradient(145deg, #fff, #f9fcfd);
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.page-public-links .link-card:hover {
    transform: translateY(-4px);
    border-color: rgba(15, 159, 154, .48);
    box-shadow: 0 18px 36px rgba(25, 61, 78, .12);
}

.page-public-links .link-card .block-content {
    width: 100%;
    min-width: 0;
    gap: 1rem;
}

.page-public-links .link-copy {
    min-width: 0;
    flex: 1 1 auto;
}

.page-public-links .link-title,
.page-public-links .link-description {
    max-width: none !important;
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    overflow-wrap: anywhere;
}

.page-public-links .link-title {
    line-height: 1.42;
}

.page-public-links .link-description {
    margin-top: .35rem;
    line-height: 1.5;
}

.page-public-links .link-category {
    margin-top: .7rem;
    padding: .25rem .52rem;
    background: var(--bugpk-primary-soft);
}

.page-public-links .link-icon {
    width: 58px;
    height: 58px;
    flex: 0 0 58px;
    border: 4px solid #fff;
    border-radius: 16px;
    object-fit: cover;
    box-shadow: 0 8px 22px rgba(25, 61, 78, .14);
}

.page-public-links .application-guide .alert,
.page-public-links .friend-directory .alert {
    max-width: 100%;
    white-space: normal;
    text-align: left;
}

.page-public-links .site-info p {
    display: grid;
    grid-template-columns: 6.4rem minmax(0, 1fr);
    gap: .6rem;
    overflow-wrap: anywhere;
}

.page-public-links .modal-dialog {
    width: min(100% - 2rem, 620px);
    margin-right: auto;
    margin-left: auto;
}

.page-public-links .modal-content {
    overflow: hidden;
    border: 0;
    border-radius: 20px;
    box-shadow: 0 28px 70px rgba(15, 35, 50, .25);
}

/* Changelog */
.page-public-changelog .hero-bg,
.page-public-sponsor .bg-image,
.page-public-doc .doc-header-bg {
    overflow: hidden;
}

.page-public-changelog .timeline {
    max-width: 1040px;
    margin-inline: auto;
}

.page-public-changelog .timeline-content,
.page-public-changelog .feedback-card {
    background: rgba(255, 255, 255, .96);
}

.page-public-changelog .timeline-title,
.page-public-changelog .timeline-changes,
.page-public-changelog .feedback-card p {
    overflow-wrap: anywhere;
}

.page-public-changelog .timeline-changes li {
    line-height: 1.75;
}

/* Sponsor and data-heavy public content */
.page-public-sponsor .table-responsive,
.page-public-doc .table-responsive,
.page-user-console .table-responsive {
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
}

.page-public-sponsor table,
.page-public-doc table,
.page-user-console table {
    margin-bottom: 0;
}

.page-public-sponsor td,
.page-public-sponsor th,
.page-public-doc td,
.page-public-doc th,
.page-user-console td,
.page-user-console th {
    vertical-align: middle;
}

.page-public-sponsor .qr-code,
.page-public-sponsor [class*="qrcode"],
.page-public-sponsor [class*="qr-code"] {
    max-width: min(100%, 280px);
    margin-inline: auto;
}

/* API documentation */
.page-public-doc pre,
.page-public-doc code,
.page-public-doc .code-container {
    max-width: 100%;
}

.page-public-doc pre,
.page-public-doc .code-container {
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
}

.page-public-doc .nav-tabs {
    scrollbar-width: thin;
}

.page-public-doc .nav-tabs .nav-link {
    min-height: 44px;
    white-space: nowrap;
}

.page-public-doc .doc-shell,
.page-public-doc .block-content,
.page-public-doc .tab-content,
.page-public-doc .tab-pane {
    min-width: 0;
}

.page-public-doc .form-control,
.page-public-doc .input-group,
.page-public-doc .btn-group {
    max-width: 100%;
}

/* Authentication pages */
body.page-auth {
    background:
        radial-gradient(circle at 18% 12%, rgba(15, 159, 154, .22), transparent 27rem),
        radial-gradient(circle at 85% 86%, rgba(245, 158, 11, .12), transparent 23rem),
        #10263a;
}

.page-auth #main-container,
.page-auth .bg-body-dark,
.page-auth .row.mx-0 {
    min-height: 100svh;
}

.page-auth .bg-body-dark {
    background: transparent !important;
}

.page-auth .hero-static {
    display: flex;
    align-items: center;
    width: min(100%, 580px);
    max-width: 580px;
    min-height: 100svh;
}

.page-auth .content {
    width: 100%;
    padding: clamp(1rem, 4vw, 2rem);
}

.page-auth .block {
    overflow: hidden;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 28px 70px rgba(0, 0, 0, .22);
}

.page-auth .py-4.text-center h1,
.page-auth .py-4.text-center h2,
.page-auth .py-4.text-center .text-body-color,
.page-auth .text-center.push,
.page-auth .text-center.push a,
.page-auth .text-center.push small {
    color: #fff !important;
}

.page-auth .block-content {
    padding: clamp(1rem, 4vw, 1.75rem);
}

.page-auth .form-floating > .form-control {
    min-height: 56px;
}

.page-auth #login,
.page-auth #register,
.page-auth #submitBtn {
    width: 100%;
    min-height: 50px;
}

.page-auth #sendCode,
.page-auth #sendCodeBtn {
    width: 100%;
}

/* Logged-in user console */
.page-user-console #page-header {
    background: rgba(255, 255, 255, .92);
    backdrop-filter: blur(12px);
}

.page-user-console #pjax-container {
    min-width: 0;
    padding-top: 1.25rem;
    padding-bottom: 2rem;
}

.page-user-console .block-content,
.page-user-console .row > * {
    min-width: 0;
}

.page-user-console .dropdown-menu {
    max-width: calc(100vw - 1.5rem);
}

.page-user-console .dataTables_wrapper,
.page-user-console .dataTables_scroll,
.page-user-console .dataTables_scrollBody {
    max-width: 100%;
}

@media (min-width: 1200px) {
    .page-public-links .link-card-col {
        width: 25%;
    }

    .page-public-links .friend-hero {
        min-height: 310px;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    body.page-public-links .content,
    body.page-public-changelog .content,
    body.page-public-sponsor .content,
    body.page-public-doc .content,
    body.page-user-console .content {
        padding-right: 1.5rem;
        padding-left: 1.5rem;
    }

    .page-public-links .link-card-col {
        width: 50%;
    }

    .page-public-links .friend-hero::before {
        right: 11%;
        opacity: .55;
    }

    .page-public-links .friend-hero::after {
        display: none;
    }

    .page-public-doc .doc-shell > .row,
    .page-public-sponsor .content > .row {
        --bs-gutter-x: 1.25rem;
    }
}

@media (max-width: 767.98px) {
    body.page-public-links .content,
    body.page-public-changelog .content,
    body.page-public-sponsor .content,
    body.page-public-doc .content,
    body.page-user-console .content {
        width: 100%;
        padding-right: .85rem;
        padding-left: .85rem;
    }

    body.page-public-links .block,
    body.page-public-changelog .timeline-content,
    body.page-public-changelog .feedback-card,
    body.page-public-sponsor .block,
    body.page-public-doc .block,
    body.page-auth .block,
    body.page-user-console .block {
        border-radius: 14px;
    }

    body.page-public-links .block-header,
    body.page-public-sponsor .block-header,
    body.page-public-doc .block-header,
    body.page-auth .block-header,
    body.page-user-console .block-header {
        min-height: 52px;
        padding-right: 1rem;
        padding-left: 1rem;
        border-radius: 14px 14px 0 0;
    }

    body.page-public-links .btn,
    body.page-public-changelog .btn,
    body.page-public-sponsor .btn,
    body.page-public-doc .btn,
    body.page-auth .btn,
    body.page-user-console .btn {
        min-height: 44px;
    }

    .page-public-links .content-header {
        min-height: 62px;
        padding-right: .85rem;
        padding-left: .85rem;
    }

    .page-public-links .content-header .space-x-1:last-child {
        display: flex;
        gap: .45rem;
    }

    .page-public-links .content-header .btn {
        min-width: 44px;
        padding-right: .7rem;
        padding-left: .7rem;
    }

    .page-public-links .friend-hero {
        margin: .85rem 0 1rem;
        padding: 1.35rem 1.1rem;
        border-radius: 18px;
        background-size: 26px 26px, 26px 26px, auto;
    }

    .page-public-links .friend-hero::before,
    .page-public-links .friend-hero::after {
        display: none;
    }

    .page-public-links .friend-hero h1 {
        font-size: clamp(1.65rem, 9vw, 2.25rem);
    }

    .page-public-links .friend-hero p {
        margin-top: .75rem;
        line-height: 1.65;
    }

    .page-public-links .link-card-col {
        width: 100%;
    }

    .page-public-links .link-card {
        min-height: 118px;
    }

    .page-public-links .link-icon {
        width: 52px;
        height: 52px;
        flex-basis: 52px;
    }

    .page-public-links .friend-directory .block-content,
    .page-public-links .application-guide .block-content {
        padding: 1rem;
    }

    .page-public-links .friend-directory .block-title small {
        display: block;
        margin: .35rem 0 0 !important;
        line-height: 1.45;
    }

    .page-public-links .site-info p {
        grid-template-columns: 1fr;
        gap: .15rem;
    }

    .page-public-links .modal {
        padding: 0 !important;
    }

    .page-public-links .modal-dialog {
        width: 100%;
        max-width: none;
        min-height: 100%;
        margin: 0;
        align-items: flex-end;
    }

    .page-public-links .modal-content {
        max-height: 94svh;
        overflow-y: auto;
        border-radius: 20px 20px 0 0;
    }

    .page-public-links .modal .block-content-sm.text-end {
        position: sticky;
        bottom: 0;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: .65rem;
        background: #fff;
    }

    .page-public-changelog .hero-content {
        padding-top: 2.25rem !important;
        padding-bottom: 2.25rem !important;
    }

    .page-public-changelog .timeline {
        padding-left: 0;
    }

    .page-public-changelog .timeline-item {
        padding-left: 2.35rem;
    }

    .page-public-changelog .timeline-badge {
        left: 0;
    }

    .page-public-changelog .timeline-content,
    .page-public-changelog .feedback-card {
        padding: 1.1rem;
    }

    .page-public-changelog .timeline-date {
        display: flex;
        flex-wrap: wrap;
        gap: .3rem;
    }

    .page-public-changelog .timeline-changes {
        padding-left: 1.15rem;
    }

    .page-public-sponsor .table-responsive,
    .page-public-doc .table-responsive,
    .page-user-console .table-responsive {
        margin-right: -.85rem;
        margin-left: -.85rem;
        padding-right: .85rem;
        padding-left: .85rem;
    }

    .page-public-sponsor table,
    .page-public-doc table,
    .page-user-console table {
        min-width: 640px;
    }

    .page-public-doc .nav-tabs,
    .page-public-doc .nav-pills {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: .25rem;
    }

    .page-public-doc .input-group,
    .page-user-console .input-group {
        flex-wrap: nowrap;
    }

    .page-auth .hero-static {
        align-items: flex-start;
    }

    .page-auth .content {
        padding: max(1rem, env(safe-area-inset-top)) .85rem max(1rem, env(safe-area-inset-bottom));
    }

    .page-auth .py-4.text-center {
        padding-top: 1rem !important;
        padding-bottom: 1.25rem !important;
    }

    .page-auth .py-4.text-center h1 {
        margin-top: 1.25rem !important;
        font-size: 1.55rem;
    }

    .page-auth .block-content {
        padding: 1rem;
    }

    .page-user-console #pjax-container {
        padding-top: .85rem;
        padding-bottom: 1.25rem;
    }

    .page-user-console #page-header .content-header {
        padding-right: .75rem;
        padding-left: .75rem;
    }

    .page-user-console .block-content {
        padding: 1rem;
    }

    .page-user-console .row {
        --bs-gutter-x: .85rem;
    }
}

@media (max-width: 380px) {
    .page-public-links .content-header .btn {
        font-size: 0;
    }

    .page-public-links .content-header .btn i {
        margin: 0 !important;
        font-size: .9rem;
    }

    .page-public-links .friend-hero__meta {
        display: grid;
        grid-template-columns: 1fr;
    }

    .page-public-links .friend-hero__pill {
        justify-content: center;
    }

    .page-public-links .link-card .block-content {
        padding: .9rem;
    }

    .page-auth .content {
        padding-right: .6rem;
        padding-left: .6rem;
    }

    .page-auth .block-content {
        padding: .85rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .page-public-links *,
    .page-public-changelog *,
    .page-public-sponsor *,
    .page-public-doc *,
    .page-auth *,
    .page-user-console * {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}
