.profile-page {
    min-height: 100vh;
    overflow-x: hidden;
    background:
        radial-gradient(circle at 12% 72%, rgba(91, 34, 150, 0.42), transparent 20rem),
        radial-gradient(circle at 82% 18%, rgba(255, 146, 120, 0.12), transparent 26rem),
        radial-gradient(circle at 50% 100%, rgba(42, 17, 82, 0.82), transparent 34rem),
        linear-gradient(180deg, #080510 0%, #0e0719 58%, #190c31 100%);
}

.profile-shell {
    position: relative;
    width: min(1380px, calc(100% - clamp(36px, 7vw, 132px)));
    margin: -10px auto 0;
    padding: clamp(58px, 5.8vw, 96px) 0 184px;
}

.profile-shell::before {
    content: "";
    position: absolute;
    inset: 0 -12vw;
    z-index: -1;
    pointer-events: none;
    background:
        linear-gradient(115deg, rgba(255, 146, 120, 0.08), transparent 32%),
        radial-gradient(ellipse at 76% 44%, rgba(195, 66, 255, 0.17), transparent 38%);
}

.profile-hero {
    display: grid;
    gap: 22px;
}

.profile-card,
.profile-panel,
.profile-stats article {
    border: 1px solid rgba(255, 255, 255, 0.08);
    background:
        radial-gradient(circle at 18% 0, rgba(255, 146, 120, 0.1), transparent 16rem),
        linear-gradient(180deg, rgba(24, 13, 46, 0.96), rgba(16, 9, 31, 0.98));
    box-shadow: inset 0 0 0 1px rgba(255, 146, 120, 0.04), 0 24px 70px rgba(0, 0, 0, 0.3);
}

.profile-card--main {
    min-height: 240px;
    padding: clamp(26px, 3vw, 44px);
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: clamp(22px, 3vw, 44px);
    align-items: center;
    border-radius: 30px;
}

.profile-avatar {
    position: relative;
    width: clamp(122px, 10vw, 160px);
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    border: 5px solid var(--accent);
    border-radius: 6px;
    background:
        linear-gradient(180deg, #7145bd 0 42%, #2d194f 43% 100%);
    box-shadow:
        inset 8px 8px 0 rgba(255, 255, 255, 0.08),
        inset -8px -8px 0 rgba(0, 0, 0, 0.32),
        0 0 32px rgba(255, 146, 120, 0.18);
}

.profile-avatar span {
    width: 54%;
    height: 54%;
    background:
        linear-gradient(90deg, transparent 0 24%, #f3d8c8 25% 39%, transparent 40% 60%, #f3d8c8 61% 75%, transparent 76%),
        linear-gradient(180deg, #201230 0 50%, #0e0818 51% 100%);
    box-shadow: 0 18px 0 #1a1026;
}

.profile-eyebrow {
    margin: 0;
    color: var(--accent);
    font-family: var(--font-pixel);
    font-size: clamp(0.62rem, 0.78vw, 0.86rem);
    line-height: 1.55;
    text-shadow: 0 0 16px rgba(255, 146, 120, 0.38);
}

.profile-identity h1 {
    margin: 10px 0 18px;
    color: #fff;
    font-family: var(--font-pixel);
    font-size: clamp(1.75rem, 3.3vw, 3.55rem);
    font-weight: 400;
    line-height: 1.15;
    letter-spacing: 0;
    text-shadow: 0 7px 0 rgba(0, 0, 0, 0.35);
}

.profile-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    min-width: 0;
}

.profile-badges span {
    padding: 8px 10px;
    border: 2px solid rgba(255, 146, 120, 0.34);
    border-radius: 2px;
    background: linear-gradient(180deg, rgba(96, 45, 50, 0.72), rgba(42, 20, 35, 0.92));
    color: rgba(255, 238, 232, 0.92);
    font-size: 0.84rem;
    font-weight: 900;
    line-height: 1;
    box-shadow: inset 3px 3px 0 rgba(255, 196, 174, 0.12), inset -3px -3px 0 rgba(0, 0, 0, 0.28), 0 4px 0 rgba(10, 5, 14, 0.62);
}

.profile-actions {
    display: grid;
    gap: 14px;
}

.profile-actions a,
.profile-panel__head a,
.profile-support,
.profile-stats button {
    position: relative;
    min-height: 48px;
    padding: 0 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 3px solid #a96a61;
    border-radius: 2px;
    background: linear-gradient(180deg, #8f514f 0%, #6e3943 52%, #4a2534 100%);
    color: #fff6f0;
    font-weight: 900;
    line-height: 1;
    text-shadow: 0 2px 0 rgba(0, 0, 0, 0.48);
    box-shadow: inset 4px 4px 0 rgba(255, 194, 172, 0.18), inset -4px -4px 0 rgba(20, 8, 18, 0.48), 0 7px 0 #2a1320, 0 0 26px rgba(255, 146, 120, 0.18);
}

.profile-actions a::before,
.profile-panel__head a::before,
.profile-support::before,
.profile-stats button::before {
    content: "";
    position: absolute;
    left: 8px;
    right: 8px;
    top: 6px;
    height: 3px;
    background: rgba(255, 220, 203, 0.3);
}

.profile-actions a:hover,
.profile-panel__head a:hover,
.profile-support:hover,
.profile-stats button:hover {
    transform: translateY(-2px);
    filter: brightness(1.08);
}

.profile-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.profile-stats article {
    min-height: 112px;
    padding: 20px;
    display: grid;
    align-content: center;
    gap: 10px;
    border-radius: 18px;
}

.profile-stats span {
    color: var(--accent);
    font-family: var(--font-pixel);
    font-size: 0.62rem;
}

.profile-stats strong {
    color: #fff;
    font-size: clamp(1.28rem, 1.6vw, 1.85rem);
    line-height: 1;
}

.profile-stats button {
    width: fit-content;
    min-height: 42px;
}

.profile-grid {
    margin-top: 32px;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.85fr);
    gap: 24px;
}

.profile-panel {
    padding: clamp(24px, 2.5vw, 34px);
    border-radius: 26px;
}

.profile-panel--wide {
    grid-row: span 2;
}

.profile-panel__head {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 24px;
}

.profile-panel h2 {
    margin: 8px 0 0;
    color: #fff;
    font-family: var(--font-pixel);
    font-size: clamp(1.15rem, 1.5vw, 1.72rem);
    font-weight: 400;
    line-height: 1.42;
}

.perk-list,
.order-list,
.detail-list {
    display: grid;
    gap: 14px;
}

.perk-card,
.order-row,
.detail-list div,
.empty-state {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    background: rgba(7, 4, 14, 0.34);
}

.perk-card {
    padding: 18px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 16px;
    align-items: center;
}

.perk-card__icon {
    width: 64px;
    height: 54px;
    display: grid;
    place-items: center;
}

.perk-card__icon span,
.empty-state__icon span {
    width: 54px;
    height: 32px;
    background: #ffbd6e;
    box-shadow: inset 0 -10px 0 #d17444, 0 0 22px rgba(255, 189, 110, 0.28);
    clip-path: polygon(0 100%, 0 34%, 18% 48%, 30% 0, 50% 50%, 70% 0, 82% 48%, 100% 34%, 100% 100%);
}

.perk-card h3,
.empty-state h3 {
    margin: 0 0 6px;
    color: #fff;
    font-family: var(--font-pixel);
    font-size: 0.9rem;
    font-weight: 400;
    line-height: 1.45;
}

.perk-card p,
.empty-state p,
.order-row span,
.detail-list dt {
    margin: 0;
    color: rgba(255, 255, 255, 0.66);
    font-weight: 700;
    line-height: 1.35;
}

.empty-state {
    min-height: 270px;
    padding: 30px;
    display: grid;
    place-items: center;
    text-align: center;
}

.empty-state--small {
    min-height: 210px;
}

.order-row,
.detail-list div {
    padding: 16px;
    display: flex;
    justify-content: space-between;
    gap: 16px;
}

.order-row strong,
.detail-list dd {
    margin: 0;
    color: #fff;
    font-weight: 900;
}

.order-row p {
    margin: 0;
    color: #65d977;
    font-size: 1.18rem;
    font-weight: 900;
}

.detail-list {
    margin: 0;
}

.profile-support {
    width: fit-content;
    margin-top: 24px;
}

.profile-page .site-footer {
    margin-top: -112px;
}

@media (max-width: 1080px) {
    .profile-card--main,
    .profile-grid {
        grid-template-columns: 1fr;
    }

    .profile-actions {
        grid-template-columns: max-content max-content;
    }

    .profile-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    html,
    body,
    .profile-page {
        max-width: 100%;
        overflow-x: hidden;
    }

    .profile-shell {
        width: min(520px, calc(100vw - 44px));
        margin: 0 auto;
        padding: 44px 0 136px;
    }

    .profile-card--main {
        min-width: 0;
        padding-right: 16px;
        padding-left: 16px;
        justify-items: center;
        text-align: center;
    }

    .profile-identity {
        min-width: 0;
        width: 100%;
    }

    .profile-identity h1 {
        max-width: 100%;
        font-size: clamp(1.35rem, 8vw, 2.15rem);
        overflow-wrap: anywhere;
    }

    .profile-badges {
        max-width: 100%;
        justify-content: center;
    }

    .profile-badges span {
        font-size: 0.76rem;
    }

    .profile-actions,
    .profile-stats {
        width: 100%;
        grid-template-columns: 1fr;
    }

    .profile-actions a,
    .profile-stats button,
    .profile-panel__head a,
    .profile-support {
        width: 100%;
        max-width: 100%;
    }

    .profile-actions {
        justify-items: center;
    }

    .profile-actions a {
        width: min(100%, 280px);
    }

    .profile-grid {
        grid-template-columns: 1fr;
    }

    .profile-panel__head {
        flex-direction: column;
    }

    .order-row,
    .detail-list div {
        flex-direction: column;
    }
}
