.fk-profile {
    --fp-accent: #f5ad11;
    --fp-panel: #181b1e;
    --fp-border: #303438;
    --fp-muted: #a5adb5;
    padding-top: 125px;
    padding-bottom: 70px;
    color: #f2f4f5;
}
.fk-profile *,.fk-profile-settings * {
    box-sizing: border-box;
}
.fk-profile a {
    color: inherit;
    text-decoration: none;
}
.fk-profile-breadcrumb {
    display: flex;
    gap: 12px;
    color: var(--fp-muted);
    font-size: 12px;
    margin-bottom: 22px;
}
.fk-profile-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 42px;
    border: 1px solid #49402a;
    border-radius: 24px;
    background: radial-gradient(ellipse at 15% 0,rgba(245,173,17,.16),transparent 60%),linear-gradient(125deg,#222321,#181b1e 65%);
}
.fk-profile-hero-art {
    position: absolute;
    left: 34px;
    top: 12px;
    display: flex;
    flex-direction: column;
    font: 900 56px/1.05 Arial,sans-serif;
    letter-spacing: 5px;
    color: rgba(245,173,17,.065);
    transform: rotate(-9deg);
    z-index: -1;
    direction: ltr;
    user-select: none;
}
.fk-profile-identity {
    display: flex;
    gap: 25px;
    align-items: center;
}
.fk-profile-avatar {
    display: grid;
    place-items: center;
    flex: 0 0 105px;
    height: 105px;
    font-size: 44px;
    font-weight: 800;
    background: linear-gradient(145deg,#4c3c19,#211f1b);
    color: #f5bd4e;
    border: 1px solid #80612a;
    border-radius: 28px;
    box-shadow: 0 8px 40px #0003;
}
.fk-profile-intro {
    min-width: 0;
    max-width: 760px;
}
.fk-profile-eyebrow {
    font-size: 12px;
    color: var(--fp-accent);
    letter-spacing: .2px;
}
.fk-profile-intro h1 {
    font-size: 32px;
    font-weight: 800;
    margin: 7px 0 12px;
    overflow-wrap: anywhere;
}
.fk-profile-intro p {
    font-size: 14px;
    color: #c5cbd0;
    line-height: 2;
    white-space: pre-line;
    overflow-wrap: anywhere;
    margin: 0;
}
.fk-profile-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}
.fk-profile-badges span {
    font-size: 11px;
    border: 1px solid #45443a;
    background: #ffffff05;
    padding: 6px 10px;
    border-radius: 7px;
    color: #c6c9c6;
}
.fk-profile-badges span:first-child {
    color: #e5bd70;
    border-color: #65502d;
}
.fk-profile-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 26px;
}
.fk-profile .fk-profile-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 43px;
    border: 1px solid #f5ad11;
    border-radius: 10px;
    background: #f5ad11;
    color: #1c1b16;
    padding: 10px 18px;
    font: inherit;
    font-size: 13px;
    cursor: pointer;
    font-weight: 700;
}
.fk-profile .fk-profile-button-secondary {
    background: #ffffff04;
    color: #e8eaec;
    border-color: #555751;
}
.fk-profile-share-status {
    font-size: 12px;
    color: #dfbd75;
    overflow-wrap: anywhere;
    max-width: 100%;
}
.fk-profile-share-status input {
    max-width: 100%;
    color: #fff;
    background: #151719;
    border: 1px solid #555;
    padding: 8px;
    border-radius: 6px;
}
.fk-profile-notice {
    background: #f5ad110a;
    border: 1px solid #f5ad1130;
    border-radius: 12px;
    padding: 14px 18px;
    color: #d7c6a7;
    font-size: 12px;
    line-height: 2;
    margin: 16px 0;
}
.fk-profile-stats {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 12px;
    margin: 20px 0 38px;
}
.fk-profile-stats a {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 23px 26px;
    background: var(--fp-panel);
    border: 1px solid var(--fp-border);
    border-radius: 15px;
    transition: border-color .2s;
}
.fk-profile-stats a:hover {
    border-color: #a77e2c;
}
.fk-profile-stats strong {
    font-size: 30px;
    font-weight: 800;
    line-height: 1.2;
    color: #f5c463;
}
.fk-profile-stats span {
    font-size: 12px;
    color: var(--fp-muted);
}
.fk-profile-section-heading {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    align-items: center;
    margin-bottom: 22px;
}
.fk-profile-section-heading h2 {
    font-size: 20px;
    line-height: 1.8;
    margin: 7px 0 0;
    overflow-wrap: anywhere;
}
.fk-profile-section-heading>span {
    font-size: 12px;
    color: var(--fp-muted);
}
.fk-profile-tabs {
    display: flex;
    gap: 7px;
    overflow-x: auto;
    padding: 5px 0 15px;
    border-bottom: 1px solid var(--fp-border);
    scrollbar-width: thin;
    scrollbar-color: #7a602b transparent;
}
.fk-profile-tabs a {
    display: flex;
    align-items: center;
    gap: 9px;
    flex-shrink: 0;
    white-space: nowrap;
    padding: 12px 13px;
    font-size: 12px;
    color: #b4bbc0;
    border-radius: 9px;
}
.fk-profile-tabs a span {
    font-size: 10px;
    background: #ffffff09;
    border-radius: 5px;
    padding: 3px 5px;
}
.fk-profile-tabs a[aria-current] {
    background: #f5ad111c;
    color: #f5bd4e;
    box-shadow: inset 0 0 0 1px #f5ad1140;
}
.fk-profile-section-caption {
    margin: 24px 0;
}
.fk-profile-section-caption h3 {
    font-size: 16px;
    margin: 0 0 8px;
}
.fk-profile-section-caption p {
    font-size: 12px;
    color: var(--fp-muted);
    line-height: 1.9;
    margin: 0;
}
.fk-profile-grid {
    display: grid;
    grid-template-columns: repeat(6,minmax(0,1fr));
    gap: 25px 18px;
}
.fk-profile-grid-comments,.fk-profile-grid-liked-comments {
    grid-template-columns: repeat(2,minmax(0,1fr));
    align-items: start;
}
.fk-profile-comment {
    padding: 23px;
    background: var(--fp-panel);
    border: 1px solid var(--fp-border);
    border-radius: 15px;
    min-width: 0;
}
.fk-profile-comment-head {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    font-size: 11px;
    color: var(--fp-muted);
    margin-bottom: 15px;
    overflow-wrap: anywhere;
}
.fk-profile-comment-title {
    font-size: 14px;
    font-weight: 700;
    line-height: 1.8;
}
.fk-profile-comment details {
    margin: 16px 0;
    padding: 13px;
    background: #ffffff03;
    border: 1px solid #ffffff0a;
    border-radius: 9px;
}
.fk-profile-comment summary {
    cursor: pointer;
    font-size: 12px;
    line-height: 1.8;
    color: #e2c185;
}
.fk-profile-comment summary span {
    display: block;
    font-size: 10px;
    color: var(--fp-muted);
    margin-top: 5px;
}
.fk-profile-comment p {
    font-size: 13px;
    line-height: 2.2;
    color: #ccd1d5;
    overflow-wrap: anywhere;
}
.fk-profile .fk-profile-text-link {
    font-size: 11px;
    color: #e4b85f;
}
.fk-profile-grid-lists,.fk-profile-grid-bookmarks {
    grid-template-columns: repeat(3,minmax(0,1fr));
}
.fk-profile-list {
    border-radius: 15px;
    background: var(--fp-panel);
    border: 1px solid var(--fp-border);
    overflow: hidden;
    min-width: 0;
}
.fk-profile-list-posters {
    display: flex;
    gap: 4px;
    aspect-ratio: 2.2;
    background: #222629;
    padding: 14px 14px 0;
    overflow: hidden;
}
.fk-profile-list-posters>span {
    display: grid;
    place-items: center;
    flex: 1;
    min-width: 0;
    background: #333536;
    color: #777;
    border-radius: 6px 6px 0 0;
    overflow: hidden;
}
.fk-profile-list-posters img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.fk-profile-list-copy {
    padding: 20px;
}
.fk-profile-list-copy small {
    color: #b5a784;
    font-size: 10px;
}
.fk-profile-list h3 {
    font-size: 16px;
    margin: 10px 0;
    line-height: 1.8;
    overflow-wrap: anywhere;
}
.fk-profile-list p {
    font-size: 12px;
    color: var(--fp-muted);
    line-height: 1.9;
    overflow-wrap: anywhere;
}
.fk-profile-empty {
    padding: 50px 20px;
    text-align: center;
    background: #181b1e;
    border: 1px dashed #3b3f42;
    border-radius: 16px;
}
.fk-profile-empty h1 {
    font-size: 26px;
}
.fk-profile-empty h3 {
    font-size: 18px;
}
.fk-profile-empty p {
    font-size: 13px;
    color: var(--fp-muted);
    margin: 14px 0 24px;
    line-height: 2;
}
.fk-profile-symbol {
    display: block;
    font-size: 46px;
    color: #d4a651;
    margin-bottom: 20px;
}
.fk-profile-locked {
    max-width: 650px;
    margin: 60px auto;
}
.fk-profile-pagination {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 35px;
}
.fk-profile-pagination .page-numbers {
    padding: 10px 15px;
    border-radius: 8px;
    border: 1px solid var(--fp-border);
    font-size: 13px;
}
.fk-profile-pagination .current {
    background: #f5ad11;
    color: #181b1e;
}
.fk-profile :is(a,button,summary,input):focus-visible,.fk-profile-settings :is(a,input,textarea):focus-visible {
    outline: 2px solid #f5ad11;
    outline-offset: 4px;
}
.fk-profile-settings {
    display: block;
    clear: both;
    flex: 0 0 100%;
    width: 100%;
    min-width: 0;
    margin: 22px 0;
    padding: 25px;
    border: 1px solid #48402d;
    border-radius: 15px;
    background: linear-gradient(120deg,#f5ad1109,#191c1e);
    color: #eceff1;
}
.fk-profile-settings legend {
    padding: 0 10px;
    font-size: 17px;
    font-weight: 700;
    color: #f4c064;
}
.fk-profile-settings>p {
    font-size: 12px;
    color: #b1b7bc;
    line-height: 2;
    margin: 0 0 18px;
}
.fk-profile-privacy-options {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 15px;
}
.fk-profile-privacy-options label {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 17px;
    border: 1px solid #41464b;
    border-radius: 10px;
    cursor: pointer;
}
.fk-profile-privacy-options label:has(input:checked) {
    border-color: #d79608;
    background: #f5ad110d;
}
.fk-profile-privacy-options input {
    accent-color: #f5ad11;
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}
.fk-profile-privacy-options strong {
    display: block;
    font-size: 14px;
    margin-bottom: 7px;
}
.fk-profile-privacy-options small {
    font-size: 11px;
    color: #b1b7bc;
    line-height: 1.7;
}
.fk-profile-settings .fk-profile-settings-hint {
    font-size: 11px;
}
.fk-profile-bio-label {
    display: block;
    font-size: 13px;
    margin-bottom: 10px;
}
.fk-profile-settings :is(textarea,input[type="text"]).put_field {
    width: 100%;
    min-height: 105px;
    height: auto;
    resize: vertical;
    padding: 13px;
    background: #111416;
    border: 1px solid #383e42;
    border-radius: 9px;
    color: #eceff1;
    font: inherit;
    font-size: 13px;
    line-height: 1.9;
}
.fk-profile-settings-footer {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 12px;
}
.fk-profile-settings-footer small {
    font-size: 10px;
    color: #9ca4aa;
}
.fk-profile-settings-footer a {
    font-size: 12px;
    color: #f5bd4e;
}
@media(max-width:1000px) {
    .fk-profile-grid {
        grid-template-columns: repeat(4,minmax(0,1fr));
    }
    .fk-profile-grid-comments,.fk-profile-grid-liked-comments,.fk-profile-grid-lists,.fk-profile-grid-bookmarks {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
    .fk-profile-section-heading>span {
        display: none;
    }
    .fk-profile-hero {
        padding: 30px;
    }
}
@media(max-width:600px) {
    .fk-profile {
        padding-top: 95px;
        padding-bottom: 35px;
    }
    .fk-profile-hero {
        padding: 23px 20px;
        border-radius: 18px;
    }
    .fk-profile-identity {
        align-items: flex-start;
        gap: 15px;
    }
    .fk-profile-avatar {
        flex-basis: 62px;
        height: 62px;
        border-radius: 19px;
        font-size: 28px;
    }
    .fk-profile-intro h1 {
        font-size: 23px;
    }
    .fk-profile-intro p {
        font-size: 12px;
    }
    .fk-profile-eyebrow {
        font-size: 10px;
    }
    .fk-profile-hero-art {
        font-size: 43px;
        left: 10px;
        opacity: .6;
    }
    .fk-profile-badges {
        gap: 5px;
    }
    .fk-profile-badges span {
        font-size: 9px;
        padding: 5px 7px;
    }
    .fk-profile-stats {
        grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 9px;
        margin-bottom: 28px;
    }
    .fk-profile-stats a {
        padding: 18px;
    }
    .fk-profile-stats strong {
        font-size: 26px;
    }
    .fk-profile-stats span {
        font-size: 11px;
    }
    .fk-profile-section-heading h2 {
        font-size: 17px;
    }
    .fk-profile-tabs a {
        font-size: 11px;
        padding: 10px;
    }
    .fk-profile-grid {
        grid-template-columns: repeat(3,minmax(0,1fr));
        gap: 18px 10px;
    }
    .fk-profile-grid-comments,.fk-profile-grid-liked-comments,.fk-profile-grid-lists,.fk-profile-grid-bookmarks {
        grid-template-columns: minmax(0,1fr);
    }
    .fk-profile-settings {
        padding: 18px;
    }
    .fk-profile-privacy-options {
        grid-template-columns: minmax(0,1fr);
    }
    .fk-profile-locked {
        margin: 30px 0;
    }
    .fk-profile-empty h1 {
        font-size: 21px;
    }
}
@media(prefers-reduced-motion:reduce) {
    .fk-profile * {
        transition: none!important;
        scroll-behavior: auto!important;
    }
}
.fk-profile-directory-count {
    font-size: 13px;
    color: #e5bc6c;
}
.fk-profile-search {
    margin: 28px 0;
}
.fk-profile-search label {
    display: block;
    font-size: 13px;
    margin-bottom: 12px;
    color: #d7dce0;
}
.fk-profile-search>div {
    display: flex;
    gap: 10px;
    align-items: center;
}
.fk-profile-search input {
    flex: 1;
    min-width: 0;
    max-width: 500px;
    background: #181b1e;
    border: 1px solid #41464b;
    color: #eee;
    border-radius: 10px;
    padding: 13px 16px;
    font: inherit;
    font-size: 13px;
}
.fk-profile-search a {
    font-size: 12px;
    color: #e5bc6c;
}
.fk-profile-member-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 20px;
}
.fk-profile-member-card {
    background: linear-gradient(145deg,#24251f,#191c1f 40%);
    border: 1px solid #343837;
    border-radius: 18px;
    padding: 25px;
    min-width: 0;
    display: flex;
    flex-direction: column;
    transition: border-color .2s;
}
.fk-profile-member-card:hover {
    border-color: #ac8235;
}
.fk-profile-member-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
}
.fk-profile-member-top .fk-profile-avatar {
    flex-basis: 65px;
    height: 65px;
    border-radius: 20px;
    font-size: 29px;
}
.fk-profile-member-top>span {
    font-size: 10px;
    color: #b9b29e;
}
.fk-profile-member-card h2 {
    font-size: 19px;
    margin: 20px 0 10px;
    overflow-wrap: anywhere;
}
.fk-profile-member-card p {
    color: #aab1b6;
    font-size: 12px;
    line-height: 2;
    overflow-wrap: anywhere;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0 0 25px;
}
.fk-profile-member-bottom {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
    border-top: 1px solid #ffffff0c;
    padding-top: 17px;
    margin-top: auto;
}
.fk-profile-member-bottom small {
    color: #91999f;
    font-size: 10px;
}
.fk-profile-member-bottom span {
    color: #e9ba60;
    font-size: 11px;
}
@media(max-width:900px) {
    .fk-profile-member-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}
@media(max-width:600px) {
    .fk-profile-member-grid {
        grid-template-columns: minmax(0,1fr);
    }
    .fk-profile-search>div {
        flex-wrap: wrap;
    }
    .fk-profile-search input {
        width: 65%;
    }
}
/* The theme's .container is a flex row; profile sections use normal block flow. */
.fk-profile.container {
    display: block;
    width: 100%;
    box-sizing: border-box;
}

/* Media cards deliberately inherit the same markup and rules as the home archive. */
.fk-profile .fk-profile-media { margin-top: 0; }
.fk-profile .fk-profile-media > .body { margin-top: 10px; }
.fk-profile-social-counts { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 24px; color: #aab1b6; font-size: 13px; }
.fk-profile-social-counts b { color: #f4c064; margin-inline-end: 5px; }
.fk-profile .fk-follow-button[aria-pressed="true"] { color: #f4c064; background: #f5ad1110; border-color: #75613b; }
.fk-follow-button:disabled { opacity: .6; cursor: wait; }
.fk-follow-status { font-size: 12px; color: #d6bd8a; }
.fk-timeline-tabs { margin-top: 24px; }
.fk-timeline { display: grid; gap: 22px; max-width: 850px; margin: 25px auto; }
.fk-timeline-event { padding: 24px; background: #181b1e; border: 1px solid #343837; border-radius: 16px; min-width: 0; }
.fk-timeline-event-head { display: flex; justify-content: space-between; gap: 18px; margin-bottom: 20px; font-size: 13px; line-height: 1.9; }
.fk-timeline-event-head a { color: #f4c064; margin-inline-end: 10px; }
.fk-timeline-event-head span, .fk-timeline-event-head time { color: #aab1b6; }
.fk-timeline-event-head time { font-size: 11px; white-space: nowrap; }
.fk-timeline .fk-timeline-media { margin: 0; }
.fk-timeline .fk-timeline-media > .body { margin: 0; justify-content: flex-start; }
.fk-timeline .fk-timeline-media .item_loop_post { width: 180px; max-width: 100%; }
.fk-timeline-comment { margin-top: 14px; font-size: 13px; line-height: 2; }
.fk-timeline-comment summary { cursor: pointer; color: #e3bd74; }
.fk-timeline-comment p { overflow-wrap: anywhere; margin: 15px 0; }
.fk-timeline-list { display: block; padding: 22px; border: 1px solid #49412f; border-radius: 12px; background: #f5ad1108; }
.fk-timeline-list strong { font-size: 17px; }
.fk-timeline-list p { margin: 10px 0; font-size: 13px; line-height: 2; color: #aab1b6; overflow-wrap: anywhere; }
.fk-timeline-list span { color: #e3bd74; font-size: 12px; }
@media(max-width:600px) {
    .fk-timeline-event { padding: 18px; }
    .fk-timeline-event-head { flex-wrap: wrap; gap: 5px; }
    .fk-profile-social-counts { font-size: 12px; gap: 15px; }
}

/* Profile width follows the theme's .container, including its responsive gutters. */
.fk-profile-personal .fk-profile-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(320px, .8fr);
    align-items: center;
    gap: 48px;
    padding: 32px 38px;
    background: radial-gradient(ellipse at 0 20%, #f5ad1112, transparent 55%), #14181b;
}
.fk-profile-hero-main { min-width: 0; }
.fk-profile-personal .fk-profile-intro h1 { font-size: clamp(28px, 2.3vw, 44px); margin-bottom: 10px; }
.fk-profile-personal .fk-profile-avatar { flex-basis: 96px; height: 96px; border-radius: 24px; }
.fk-profile-personal .fk-profile-actions { margin-top: 20px; }
.fk-profile-taste { width: 100%; max-width: 520px; justify-self: end; min-width: 0; border-inline-start: 1px solid #ffffff0d; padding-inline-start: 30px; }
.fk-profile-taste h2 { font-size: 18px; margin: 7px 0; }
.fk-profile-taste > p { font-size: 12px; color: #a5adb5; line-height: 1.9; }
.fk-profile .fk-profile-shelf { margin: 0; }
.fk-profile .fk-profile-shelf > .body { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 14px 0 0; }
.fk-profile .fk-profile-shelf .item_loop_post { width: 100%; min-width: 0; margin: 0; }
.fk-profile .fk-profile-shelf .item_loop_post .bgcover { height: auto; aspect-ratio: 2 / 3; }
.fk-profile .fk-profile-shelf .item_loop_post .bgcover img { width: 100%; height: 100%; object-fit: cover; }
.fk-profile .fk-profile-shelf .item_loop_post h2 { font-size: 12px; }
.fk-profile-taste-empty { display: flex; gap: 20px; align-items: center; min-height: 130px; color: #a5adb5; font-size: 13px; line-height: 2; }
.fk-profile-taste-empty > span { font-size: 52px; color: #c79c4b; }
.fk-profile-personal .fk-profile-stats { gap: 16px; margin: 20px 0 28px; }
.fk-profile-personal .fk-profile-stats a { flex-direction: row; align-items: center; justify-content: space-between; padding: 20px 24px; border-radius: 12px; border-top-color: #79602f; background: linear-gradient(110deg, #f5ad1105, #171b1e); }
.fk-profile-personal .fk-profile-section-heading { margin-bottom: 14px; }
.fk-profile-personal .fk-profile-notice { padding: 10px 16px; }
.fk-profile-personal #profile-activity { scroll-margin-top: 150px; }
.fk-profile-media-filter { display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0; }
.fk-profile-media-filter a { display: inline-flex; align-items: center; gap: 16px; border: 1px solid #363c40; border-radius: 9px; padding: 10px 18px; font-size: 13px; color: #b4bbc0; }
.fk-profile-media-filter a[aria-current] { border-color: #a17b31; color: #f5bc52; background: #f5ad1112; }
.fk-profile-media-filter b { font-size: 11px; }
.fk-profile-native-comments { width: 100%; }
.fk-profile-comment-source { margin: 22px 0 10px; font-size: 13px; color: #d8ba7d; }
.fk-profile-comment-status { color: #d8ba7d; font-size: 13px; margin: 12px 0; }
.fk-profile-native-comments .likeCommentBtn { cursor: pointer; }
.fk-profile-native-comments .likeCommentBtn[aria-busy=true] { opacity: .5; pointer-events: none; }
.fk-profile-native-comments .btnbtnShowCmShowCm { cursor: pointer; }
@media(max-width:1000px) {
    .fk-profile-personal .fk-profile-hero { grid-template-columns: minmax(0,1fr); gap: 25px; padding: 26px; }
    .fk-profile-taste { max-width: 100%; border-inline-start: 0; border-top: 1px solid #ffffff0d; padding-inline-start: 0; padding-top: 20px; }
    .fk-profile .fk-profile-shelf { max-width: 480px; }
}
@media(max-width:600px) {
    .fk-profile-personal .fk-profile-hero { padding: 22px 18px; gap: 18px; }
    .fk-profile-personal .fk-profile-avatar { flex-basis: 64px; height: 64px; font-size: 30px; border-radius: 18px; }
    .fk-profile-personal .fk-profile-stats { gap: 10px; }
    .fk-profile-personal .fk-profile-stats a { padding: 16px 12px; gap: 8px; }
    .fk-profile-personal .fk-profile-stats strong { font-size: 23px; }
    .fk-profile-personal .fk-profile-stats span { font-size: 10px; }
    .fk-profile-media-filter { gap: 7px; }
    .fk-profile-media-filter a { gap: 8px; padding: 10px 12px; font-size: 11px; }
    .fk-profile-personal #profile-activity { scroll-margin-top: 110px; }
}
.fk-timeline-native-list .item_list { flex-basis: min(100%, 360px); width: min(100%, 360px); }

/* A single navigation surface for the profile's cinema library. */
.fk-library-navigation { margin: 30px 0 18px; }
.fk-library-rail { display: flex; gap: 4px; padding: 8px; background: #151a1d; border: 1px solid #ffffff0b; border-radius: 20px; overflow-x: auto; scrollbar-width: thin; scrollbar-color: #635335 transparent; }
.fk-library-link { position: relative; flex: 1 0 116px; min-width: 0; display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 18px 10px 14px; color: #8d979e; border-radius: 14px; transition: color .18s, background .18s; }
.fk-library-icon { display: grid; place-items: center; width: 28px; height: 28px; }
.fk-library-icon svg { display: block; width: 25px; height: 25px; }
.fk-library-label { font-size: 12px; white-space: nowrap; font-weight: 500; }
.fk-library-count { font-size: 12px; font-variant-numeric: tabular-nums; color: #65717a; }
.fk-library-private { font-size: 10px; color: #65717a; }
.fk-library-link:hover { background: #ffffff05; color: #ecedef; }
.fk-library-link[aria-current] { color: #ffc45b; background: linear-gradient(160deg, #f5ad1126, #f5ad1108); box-shadow: inset 0 0 0 1px #f5ad1124; }
.fk-library-link[aria-current]::after { content: ''; position: absolute; bottom: 0; width: 25px; height: 3px; border-radius: 3px 3px 0 0; background: #f5ad11; }
.fk-library-link[aria-current] .fk-library-count, .fk-library-link[aria-current] .fk-library-private { color: #c3a568; }
.fk-library-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 26px 2px 8px; }
.fk-library-title { display: flex; align-items: center; gap: 12px; }
.fk-library-title h2 { margin: 0; font-size: 22px; font-weight: 700; }
.fk-library-title > span { font-size: 11px; color: #919a9f; padding: 4px 9px; border-inline-start: 1px solid #ffffff16; }
.fk-library-heading p { color: #89939a; font-size: 12px; line-height: 1.9; margin: 7px 0 0; }
.fk-library-filter { display: flex; flex-shrink: 0; gap: 4px; padding: 5px; border-radius: 12px; background: #171c20; border: 1px solid #ffffff09; }
.fk-library-filter a { display: flex; align-items: center; justify-content: center; gap: 12px; padding: 10px 18px; color: #929ca4; font-size: 12px; border-radius: 8px; }
.fk-library-filter a span { font-size: 10px; opacity: .65; }
.fk-library-filter a[aria-current] { background: #f5b328; color: #201b10; box-shadow: 0 2px 8px #0003; }
.fk-library-link:focus-visible,.fk-library-filter a:focus-visible { outline: 2px solid #f5b328; outline-offset: -2px; }
@media(max-width:1000px) {
    .fk-library-toolbar { flex-wrap: wrap; gap: 16px; }
    .fk-library-link { flex-basis: 110px; }
}
@media(max-width:600px) {
    .fk-library-navigation { margin-top: 20px; }
    .fk-library-rail { border-radius: 15px; padding: 5px; scroll-snap-type: x proximity; }
    .fk-library-link { flex-basis: 100px; gap: 8px; padding: 14px 8px 12px; scroll-snap-align: start; }
    .fk-library-label { font-size: 11px; }
    .fk-library-title h2 { font-size: 19px; }
    .fk-library-filter { width: 100%; }
    .fk-library-filter a { flex: 1; padding: 10px; }
}
@media(prefers-reduced-motion:reduce) { .fk-library-link { transition: none; } }

/* A quiet, compact identity header; the cinema cards remain native theme cards. */
.fk-profile-personal .fk-profile-hero {
    grid-template-columns: minmax(0, 1fr);
    gap: 60px;
    padding: 12px 0 30px;
    border: 0;
    border-bottom: 1px solid #ffffff10;
    border-radius: 0;
    background: none;
    box-shadow: none;
}
.fk-profile-personal .fk-profile-identity { gap: 20px; align-items: flex-start; }
.fk-profile-personal .fk-profile-avatar { flex-basis: 72px; height: 72px; font-size: 30px; border-radius: 50%; border: 1px solid #ffffff14; background: #22292e; color: #e7e9eb; box-shadow: none; }
.fk-profile-personal .fk-profile-intro h1 { margin: 0 0 8px; font-size: clamp(26px, 2vw, 34px); line-height: 1.3; font-weight: 700; }
.fk-profile-personal .fk-profile-intro p { font-size: 13px; color: #a7afb5; max-width: 560px; }
.fk-profile-personal .fk-profile-badges { gap: 16px; margin-top: 12px; }
.fk-profile-personal .fk-profile-badges span { padding: 0; border: 0; background: none; color: #7e8992; font-size: 11px; }
.fk-profile-personal .fk-profile-badges span + span::before { content: '·'; margin-inline-end: 16px; }
.fk-profile-personal .fk-profile-social-counts { margin-top: 20px; margin-inline-start: 92px; gap: 24px; font-size: 12px; }
.fk-profile-personal .fk-profile-social-counts b { color: #e9edef; font-size: 14px; }
.fk-profile-personal .fk-profile-actions { margin-top: 18px; margin-inline-start: 92px; gap: 8px; }
.fk-profile-personal .fk-profile-hero .fk-profile-button { min-height: 36px; padding: 7px 14px; border-radius: 8px; font-size: 12px; }
.fk-profile-personal .fk-profile-hero .fk-profile-button-secondary { border-color: #ffffff1a; background: none; color: #aeb7bf; }
.fk-profile-personal .fk-profile-taste { padding: 0; border: 0; width: 300px; }
.fk-profile-taste-heading { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
.fk-profile-personal .fk-profile-taste h2 { margin: 0; color: #a7b0b7; font-weight: 500; font-size: 12px; }
.fk-profile-taste-heading a { color: #747f87; font-size: 11px; }
.fk-profile-taste-heading a:hover { color: #f5b328; }
.fk-profile-personal .fk-profile-shelf > .body { gap: 12px; margin-top: 0; }
.fk-profile-personal .fk-profile-shelf .item_loop_post h2 { font-size: 10px; margin-top: 8px; }
.fk-profile-personal .fk-profile-taste-empty { min-height: 130px; font-size: 12px; }
.fk-profile-personal .fk-profile-taste-empty > span { color: #747f87; font-size: 30px; }
@media(max-width:800px) {
    .fk-profile-personal .fk-profile-hero { grid-template-columns: minmax(0,1fr); gap: 26px; }
    .fk-profile-personal .fk-profile-taste { width: min(300px,100%); justify-self: start; margin-inline-start: 92px; }
}
@media(max-width:600px) {
    .fk-profile-personal .fk-profile-hero { padding: 8px 0 24px; }
    .fk-profile-personal .fk-profile-avatar { flex-basis: 56px; height: 56px; font-size: 24px; }
    .fk-profile-personal .fk-profile-identity { gap: 14px; }
    .fk-profile-personal .fk-profile-social-counts,.fk-profile-personal .fk-profile-actions { margin-inline-start: 70px; }
    .fk-profile-personal .fk-profile-taste { margin-inline-start: 0; }
    .fk-profile-personal .fk-profile-badges { gap: 10px; }
    .fk-profile-personal .fk-profile-badges span + span::before { margin-inline-end: 10px; }
}

/* Shared type scale and spacing for the personal profile. */
.fk-profile-personal {
    --fp-text: #eef0f2;
    --fp-muted: #a1aab1;
    --fp-subtle: #86929a;
    --fp-surface: #151a1d;
    font-size: 14px;
    line-height: 1.8;
}
.fk-profile-personal .fk-profile-hero { padding: 16px 0 32px; gap: 0; }
.fk-profile-personal .fk-profile-hero-main { width: 100%; max-width: 640px; margin-inline: auto; text-align: center; }
.fk-profile-personal .fk-profile-identity { flex-direction: column; align-items: center; gap: 14px; }
.fk-profile-personal .fk-profile-avatar { flex: 0 0 72px; width: 72px; height: 72px; font-size: 30px; }
.fk-profile-personal .fk-profile-intro h1 { font-size: clamp(28px, 2.2vw, 36px); font-weight: 700; line-height: 1.4; margin: 0 0 8px; }
.fk-profile-personal .fk-profile-intro p { font-size: 14px; line-height: 1.9; color: var(--fp-muted); margin-inline: auto; }
.fk-profile-personal .fk-profile-badges { justify-content: center; margin-top: 10px; }
.fk-profile-personal .fk-profile-badges span { font-size: 12px; color: var(--fp-subtle); }
.fk-profile-personal .fk-profile-social-counts { justify-content: center; margin: 18px 0 0; font-size: 13px; gap: 28px; }
.fk-profile-personal .fk-profile-social-counts b { font-size: 15px; font-weight: 600; }
.fk-profile-personal .fk-profile-actions { justify-content: center; margin: 18px 0 0; gap: 10px; }
.fk-profile-personal .fk-profile-hero .fk-profile-button { min-height: 40px; font-size: 13px; font-weight: 500; padding: 8px 16px; }
.fk-profile-personal .fk-profile-share-status:empty { display: none; }
.fk-profile-personal .fk-profile-share-status:not(:empty) { flex-basis: 100%; }
.fk-profile-personal .fk-library-navigation { margin-top: 28px; }
.fk-profile-personal .fk-library-rail { border-radius: 14px; background: var(--fp-surface); }
.fk-profile-personal .fk-library-link { border-radius: 10px; gap: 8px; padding-block: 14px 12px; color: var(--fp-muted); }
.fk-profile-personal .fk-library-label { font-size: 13px; font-weight: 500; }
.fk-profile-personal .fk-library-count,.fk-profile-personal .fk-library-private { color: var(--fp-subtle); font-size: 12px; }
.fk-profile-personal .fk-library-link[aria-current] { background: #f5ad1112; color: #f5bd4e; box-shadow: none; }
.fk-profile-personal .fk-library-toolbar { padding-top: 24px; gap: 20px; }
.fk-profile-personal .fk-library-title h2 { font-size: 22px; line-height: 1.6; font-weight: 600; }
.fk-profile-personal .fk-library-heading p { font-size: 13px; color: var(--fp-muted); line-height: 1.9; margin-top: 4px; }
.fk-profile-personal .fk-library-filter a { font-size: 13px; font-weight: 500; }
.fk-profile-personal .fk-library-title > span,.fk-profile-personal .fk-library-filter a span { font-size: 12px; }
.fk-profile-personal .fk-timeline-tabs { display: inline-flex; margin: 0 0 16px; padding: 4px; border: 1px solid #ffffff0c; border-radius: 10px; background: var(--fp-surface); }
.fk-profile-personal .fk-timeline-tabs a { padding: 8px 16px; font-size: 13px; border-radius: 7px; }
.fk-profile-personal .fk-timeline-tabs a[aria-current] { color: #201b10; background: #f5b328; box-shadow: none; }
.fk-profile-personal .fk-profile-notice { font-size: 13px; line-height: 1.9; border: 0; border-inline-start: 2px solid #6d5930; border-radius: 0; padding: 10px 14px; color: var(--fp-muted); background: #ffffff02; }
.fk-profile-personal .fk-profile-empty { border: 1px solid #ffffff0c; border-radius: 14px; background: var(--fp-surface); padding: 38px 20px; }
.fk-profile-personal .fk-profile-empty h2,.fk-profile-personal .fk-profile-empty h3 { font-size: 18px; font-weight: 600; }
.fk-profile-personal .fk-profile-empty p { font-size: 13px; color: var(--fp-muted); }
.fk-profile-personal .fk-profile-empty .fk-profile-symbol { font-size: 32px; color: var(--fp-subtle); }
@media(max-width:600px) {
    .fk-profile-personal .fk-profile-hero { padding: 8px 0 26px; }
    .fk-profile-personal .fk-profile-intro p { font-size: 13px; }
    .fk-profile-personal .fk-library-label { font-size: 12px; }
    .fk-profile-personal .fk-library-private { font-size: 11px; }
    .fk-profile-personal .fk-library-title h2 { font-size: 20px; }
    .fk-profile-personal .fk-library-heading p,.fk-profile-personal .fk-profile-notice { font-size: 12px; }
}

/* Match the artist profile proportions and the title page's underline tabs. */
.fk-profile-personal .fk-profile-hero { padding: 28px 0 40px; border-bottom: 0; }
.fk-profile-personal .fk-profile-identity { gap: 12px; }
.fk-profile-personal .fk-profile-avatar { width: 160px; height: 160px; flex-basis: 160px; font-size: 58px; font-weight: 600; border: 8px solid #ffffff04; outline: 4px solid #ffffff03; outline-offset: 6px; background: #171c1f; margin: 10px 0 12px; }
.fk-profile-personal .fk-profile-intro h1 { font-size: 32px; font-weight: 600; margin: 8px 0 10px; }
.fk-profile-personal .fk-profile-intro p { font-size: 16px; line-height: 1.9; }
.fk-profile-personal .fk-profile-badges { margin-top: 12px; }
.fk-profile-personal .fk-profile-badges span { font-size: 14px; color: #aeb5ba; }
.fk-profile-personal .fk-profile-social-counts { font-size: 15px; margin-top: 16px; gap: 0; }
.fk-profile-personal .fk-profile-social-counts > span { padding-inline: 16px; }
.fk-profile-personal .fk-profile-social-counts > span + span { border-inline-start: 1px solid #ffffff24; }
.fk-profile-personal .fk-profile-social-counts b { font-size: 16px; font-weight: 500; }
.fk-profile-personal .fk-profile-actions { margin-top: 20px; }
.fk-profile-personal .fk-profile-hero .fk-profile-button { font-size: 15px; font-weight: 600; min-height: 43px; border-radius: 13px; }
.fk-profile-personal .fk-library-navigation { margin-top: 18px; }
.fk-profile-personal .fk-library-rail { gap: 0; padding: 0; background: none; border: 0; border-top: 1px solid #ffffff07; border-bottom: 1px solid #ffffff12; border-radius: 0; justify-content: center; }
.fk-profile-personal .fk-library-link { flex: 1 0 auto; flex-direction: row; justify-content: center; align-items: center; padding: 23px 15px; gap: 8px; border-radius: 0; color: #c5cbd0; }
.fk-profile-personal .fk-library-label { font-size: 15px; font-weight: 600; }
.fk-profile-personal .fk-library-count { font-size: 12px; font-weight: 500; color: #98a2aa; min-width: 22px; text-align: center; }
.fk-profile-personal .fk-library-link:hover { background: none; color: #fff; }
.fk-profile-personal .fk-library-link[aria-current] { background: none; box-shadow: none; color: #f3f4f5; }
.fk-profile-personal .fk-library-link[aria-current]::after { width: 100%; height: 3px; bottom: 0; border-radius: 0; }
.fk-profile-personal .fk-library-link[aria-current] .fk-library-count { background: #f5ad11; color: #171b1e; padding: 1px 6px; border-radius: 8px; }
.fk-profile-personal .fk-library-toolbar { padding-top: 28px; }
.fk-profile-personal .fk-library-title h2 { font-size: 22px; font-weight: 600; }
.fk-profile-personal .fk-library-heading p { font-size: 14px; }
@media(max-width:800px) {
    .fk-profile-personal .fk-library-rail { justify-content: flex-start; }
    .fk-profile-personal .fk-library-link { flex: 0 0 auto; padding: 20px 16px; }
}
@media(max-width:600px) {
    .fk-profile-personal .fk-profile-hero { padding: 20px 0 30px; }
    .fk-profile-personal .fk-profile-avatar { width: 112px; height: 112px; flex-basis: 112px; font-size: 40px; }
    .fk-profile-personal .fk-profile-intro h1 { font-size: 28px; }
    .fk-profile-personal .fk-profile-intro p,.fk-profile-personal .fk-profile-social-counts { font-size: 14px; }
    .fk-profile-personal .fk-profile-badges span { font-size: 12px; }
    .fk-profile-personal .fk-library-label { font-size: 14px; }
    .fk-profile-personal .fk-library-heading p { font-size: 13px; }
}

.fk-profile-personal .fk-library-rail { justify-content: flex-start; }
.fk-profile-personal .fk-library-tab-icon { width: 18px; height: 18px; flex: 0 0 18px; opacity: .75; }
.fk-profile-personal .fk-library-link[aria-current] .fk-library-tab-icon { color: #f5ad11; opacity: 1; }

/* Profile actions keep one short label and expose progress inside the button. */
.fk-profile .fk-action-button { position: relative; gap: 9px; min-width: 146px; white-space: nowrap; transition: background .18s, border-color .18s, color .18s; }
.fk-profile .fk-action-icon { width: 20px; height: 20px; flex: 0 0 20px; }
.fk-profile .fk-check-icon,.fk-profile .fk-unfollow-label { display: none; }
.fk-profile .fk-follow-button[aria-pressed=true] { background: #ffffff05; border-color: #ffffff26; color: #e0e5e8; }
.fk-follow-button[aria-pressed=true] .fk-hand-icon { display: none; }
.fk-follow-button[aria-pressed=true] .fk-check-icon { display: block; color: #d6b66d; }
.fk-copy-button[data-copied=true] .fk-copy-icon { display: none; }
.fk-copy-button[data-copied=true] .fk-check-icon { display: block; color: #a9d4b6; }
.fk-profile .fk-copy-button[data-copied=true] { border-color: #62816c; color: #b7d9c1; }
.fk-profile .fk-action-button:focus-visible { outline: 2px solid #f5ad11; outline-offset: 4px; }
.fk-profile .fk-action-button[aria-busy=true] { cursor: progress; opacity: .75; }
.fk-action-button[aria-busy=true] .fk-action-icon { display: none; }
.fk-action-button[aria-busy=true]::before { content: ''; width: 17px; height: 17px; border: 2px solid currentColor; border-inline-end-color: transparent; border-radius: 50%; animation: fk-action-spin .7s linear infinite; }
.fk-profile .fk-action-feedback { order: 10; flex-basis: 100%; margin: 0; font-size: 12px; line-height: 1.9; color: #aebbb2; }
.fk-profile .fk-action-feedback:empty { display: none; }
.fk-profile .fk-action-feedback[data-error=true] { color: #efa49c; }
.fk-profile .fk-action-feedback input { display: block; width: min(100%,440px); margin: 8px auto 0; }
@media(hover:hover) {
    .fk-profile .fk-action-button:hover { filter: brightness(1.1); }
    .fk-follow-button[aria-pressed=true]:not([aria-busy=true]):hover [data-action-label] { display: none; }
    .fk-follow-button[aria-pressed=true]:not([aria-busy=true]):hover .fk-unfollow-label { display: inline; }
}
@keyframes fk-action-spin { to { transform: rotate(360deg); } }
@media(prefers-reduced-motion:reduce) { .fk-profile .fk-action-button { transition: none; } .fk-action-button[aria-busy=true]::before { animation: none; } }

.fk-profile-personal .fk-profile-membership { display: flex; justify-content: center; align-items: center; gap: 8px; margin-top: 12px; color: #aeb5ba; font-size: 14px; line-height: 1.9; }
.fk-profile-membership svg { width: 18px; height: 18px; flex: 0 0 18px; color: #9b895e; }
.fk-profile-personal .fk-profile-badges .fk-profile-role { color: #dfbf7b; font-weight: 500; }
.fk-profile-initial { display: inline-block; animation: fk-initial-arrive .7s ease-out both, fk-initial-float 5s ease-in-out .7s infinite; }
@keyframes fk-initial-arrive { from { opacity: 0; transform: translateY(8px) scale(.9); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes fk-initial-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-3px); } }
.fk-profile-personal .fk-library-rail { border-image: linear-gradient(#ffffff12,#ffffff12) 1 / 1px 0 / 0 100vw; }
@media(max-width:600px) { .fk-profile-personal .fk-profile-membership { font-size: 12px; } }
@media(prefers-reduced-motion:reduce) { .fk-profile-initial { animation: none; } }

.fk-profile-personal .fk-profile-membership { align-items: baseline; gap: 8px; }
.fk-profile-personal .fk-profile-membership > svg { width: 18px; height: 18px; position: relative; top: 3px; }
.fk-membership-text { display: inline-flex; flex-wrap: wrap; justify-content: center; align-items: baseline; gap: 6px 10px; }
.fk-membership-text time { color: #c1c8cd; white-space: nowrap; }
.fk-membership-duration { color: #959fa7; }
.fk-membership-separator { color: #66717a; }
@media(max-width:600px) {
    .fk-membership-text { gap: 2px 8px; }
    .fk-membership-duration { flex-basis: 100%; }
    .fk-membership-separator { display: none; }
}

.fk-profile-personal [data-profile-avatar] {
    --avatar-x: 0; --avatar-y: 0; --avatar-pop: 0;
    position: relative; cursor: grab; touch-action: none; user-select: none;
    -webkit-user-select: none; -webkit-tap-highlight-color: transparent;
    padding: 0; font-family: inherit; line-height: 1;
    transform: perspective(600px) rotateX(calc(var(--avatar-y) * -14deg)) rotateY(calc(var(--avatar-x) * 14deg)) scale(calc(1 + var(--avatar-pop)));
    background: radial-gradient(circle at calc(50% + var(--avatar-x) * 30%) calc(50% + var(--avatar-y) * 30%), #30332c 0, #171c1f 65%);
    transition: border-color .2s, box-shadow .2s;
}
.fk-profile-personal [data-profile-avatar] .fk-profile-initial {
    animation: none;
    transform: translate(calc(var(--avatar-x) * 12px), calc(var(--avatar-y) * 12px));
    pointer-events: none;
}
.fk-profile-personal [data-profile-avatar].is-playing { border-color: #c8a35220; box-shadow: 0 12px 35px #0003; }
.fk-profile-personal [data-profile-avatar]:active { cursor: grabbing; }
.fk-profile-personal [data-profile-avatar].is-tapped { box-shadow: 0 0 0 16px #f5ad1109, 0 0 45px #f5ad1112; }
.fk-profile-personal [data-profile-avatar]:focus-visible { outline-color: #f5ad11; }
@media(prefers-reduced-motion:reduce) {
    .fk-profile-personal [data-profile-avatar],.fk-profile-personal [data-profile-avatar] .fk-profile-initial { transform: none; transition: none; }
}

/* Transparent cinema linework fades away behind the profile identity. */
.fk-profile-personal .fk-profile-hero::before {
    content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none;
    background: url('../images/profile-cinema-pattern.svg') center 12px / 640px 440px repeat;
    opacity: .18;
    -webkit-mask-image: linear-gradient(to bottom, transparent, #000 15%, #000 80%, transparent);
    mask-image: linear-gradient(to bottom, transparent, #000 15%, #000 80%, transparent);
}
.fk-profile-personal .fk-profile-hero::after {
    content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none;
    background: radial-gradient(ellipse 36% 95% at center, #0b0e0f 50%, #0b0e0fe8 72%, transparent 100%);
}
@media(max-width:800px) {
    .fk-profile-personal .fk-profile-hero::before { background-size: 480px 330px; opacity: .12; }
    .fk-profile-personal .fk-profile-hero::after { background: radial-gradient(ellipse 60% 90% at center, #0b0e0f 45%, #0b0e0fd9 70%, transparent 100%); }
}
.fk-profile-personal .fk-profile-hero::before {
    -webkit-mask-image: radial-gradient(ellipse 40% 95% at center, transparent 50%, #000 100%), linear-gradient(to bottom, transparent, #000 15%, #000 80%, transparent);
    -webkit-mask-composite: source-in;
    mask-image: radial-gradient(ellipse 40% 95% at center, transparent 50%, #000 100%), linear-gradient(to bottom, transparent, #000 15%, #000 80%, transparent);
    mask-composite: intersect;
}
.fk-profile-personal .fk-profile-hero::after { content: none; }
@media(max-width:800px) {
    .fk-profile-personal .fk-profile-hero::before {
        -webkit-mask-image: radial-gradient(ellipse 65% 95% at center, transparent 50%, #000 100%);
        mask-image: radial-gradient(ellipse 65% 95% at center, transparent 50%, #000 100%);
    }
}
.fk-profile-personal .fk-profile-display-name { font-size: 17px; font-weight: 500; line-height: 1.8; color: #c1c8cd; margin: -4px 0 10px; overflow-wrap: anywhere; }
@media(max-width:600px) { .fk-profile-personal .fk-profile-display-name { font-size: 15px; } }

/* Edge-to-edge pattern across the entire profile introduction. */
.fk-profile-personal { overflow-x: clip; }
.fk-profile-cover { position: relative; isolation: isolate; }
.fk-profile-personal .fk-profile-hero::before { content: none; }
.fk-profile-cover::before {
    content: ''; position: absolute; z-index: -1; pointer-events: none;
    top: -125px; bottom: 0; left: 50%; width: 100vw; transform: translateX(-50%);
    background: url('../images/profile-cinema-pattern.svg') center top / 430px 296px repeat;
    opacity: .25;
    -webkit-mask-image: radial-gradient(ellipse 30% 70% at 50% 62%, #0003 20%, #000 90%);
    mask-image: radial-gradient(ellipse 30% 70% at 50% 62%, #0003 20%, #000 90%);
}
@media(max-width:800px) {
    .fk-profile-cover::before { background-size: 340px 234px; opacity: .2; }
}

/* A quiet, continuous timeline: the native content cards stay unchanged. */
.fk-profile-timeline .fk-timeline {max-width:960px;display:block;margin:24px auto 0;padding:0 25px 0 0}
.fk-profile-timeline .fk-timeline-event {position:relative;margin:0;padding:0 42px 36px 0;border:0;border-right:1px solid #292e31;border-radius:0;background:transparent}
.fk-profile-timeline .fk-timeline-event:last-child {padding-bottom:12px}
.fk-timeline-avatar {position:absolute;right:-23px;top:0;width:46px;height:46px;display:flex;align-items:center;justify-content:center;border:5px solid #090e10;border-radius:50%;background:#242b2f;color:#f2c25a;font-size:18px;font-weight:600}
.fk-profile-timeline .fk-timeline-event-head {min-height:46px;gap:16px;margin-bottom:16px;align-items:center}
.fk-profile-timeline .fk-timeline-event-head>div {display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;line-height:1.9}
.fk-profile-timeline .fk-timeline-event-head a {font-size:16px;color:#eceff0;font-weight:600}
.fk-profile-timeline .fk-timeline-event-head span {font-size:14px;color:#a4adb2}
.fk-profile-timeline .fk-timeline-event-head time {font-size:12px;color:#929da3;white-space:nowrap}
.fk-timeline-content {padding:20px;border:1px solid #252c30;border-radius:14px;background:#12181b}
.fk-profile-timeline .fk-timeline-media {margin:0;padding:0}
.fk-profile-timeline .fk-timeline-media>.body {display:block;margin:0;padding:0}
.fk-profile-timeline .fk-timeline-media .item_loop_post {width:180px!important;max-width:100%;margin:0!important;flex:none!important}
.fk-profile-timeline .fk-timeline-native-list {margin:0;padding:0}
.fk-timeline-added-title {margin:0 0 16px;line-height:1.9;font-size:14px}
.fk-timeline-added-title a {color:#efbe54}
.fk-timeline-load {text-align:center;padding:24px 0;font-size:13px;color:#98a3a9}
.fk-timeline-load [hidden] {display:none!important}
.fk-timeline-load [aria-disabled=true] {opacity:.5;pointer-events:none}
@media(max-width:600px){
.fk-profile-timeline .fk-timeline {padding-right:17px}
.fk-profile-timeline .fk-timeline-event {padding-right:26px}
.fk-timeline-avatar {width:36px;height:36px;right:-18px;font-size:14px}
.fk-profile-timeline .fk-timeline-event-head {align-items:flex-start;flex-direction:column;gap:2px}
.fk-timeline-content {padding:12px}
.fk-profile-timeline .fk-timeline-event-head a {font-size:14px}
.fk-profile-timeline .fk-timeline-event-head span {font-size:13px}
}
.fk-profile-timeline .fk-timeline {max-width:820px}
.fk-timeline-content {padding:0;border:0;background:transparent;border-radius:0}
.fk-profile-timeline .fk-timeline-native-list>.body {margin:0;padding:0}
.fk-profile-timeline .fk-timeline-native-list .item_list {margin:0;max-width:100%}
.fk-timeline-content .fk-profile-native-comments {margin:0}

/* Public-section preferences and compact notification activity. */
.fk-profile-tab-choices {border:0;padding:0;margin:24px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.fk-profile-tab-choices legend {margin-bottom:16px;font-size:15px}
.fk-profile-tab-choices label {display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 14px;border:1px solid #30383d;border-radius:10px;font-size:13px;cursor:pointer}
.fk-profile-tab-choices input {width:18px;height:18px;accent-color:#f5ad11;flex:none}
.fk-profile-tab-choices label:has(input:checked) {border-color:#8a7037;background:#f5ad1108}
.fk-profile-tab-choices label:focus-within {outline:2px solid #f5ad11;outline-offset:2px}
#filmkio-profile-bio {height:50px;min-height:50px;resize:none}
.fk-profile-timeline .fk-timeline {max-width:none;padding:0;margin:12px 0}
.fk-profile-timeline .fk-timeline-notification {display:flex;gap:16px;align-items:flex-start;border:0;border-bottom:1px solid #222a2e;border-radius:0;padding:22px 4px;background:transparent}
.fk-profile-timeline .fk-timeline-notification:last-child {padding-bottom:22px}
.fk-timeline-event-icon {display:flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;background:#182024;border-radius:50%;color:#d9b568}
.fk-timeline-event-icon svg {width:20px;height:20px}
.fk-timeline-notification-body {min-width:0}
.fk-timeline-notification-body p {margin:0 0 6px!important;font-size:15px!important;line-height:2!important;color:#aeb8be;overflow-wrap:anywhere}
.fk-timeline-notification-body a {color:#e4e9ec;text-decoration:none}
.fk-timeline-notification-body .fk-timeline-actor {font-weight:600}
.fk-timeline-notification-body .fk-timeline-target {color:#e5bd67}
.fk-timeline-notification-body a:hover {text-decoration:underline;text-underline-offset:4px}
.fk-timeline-notification-body time {font-size:12px;color:#86939b}
@media(max-width:760px){.fk-profile-tab-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.fk-profile-tab-choices label{padding:10px;font-size:12px}}
@media(max-width:480px){.fk-profile-timeline .fk-timeline-notification{gap:12px;padding:18px 0}.fk-timeline-notification-body p{font-size:13px!important}.fk-timeline-event-icon{flex-basis:36px;width:36px;height:36px}}
