@import url('https://fonts.googleapis.com/css2?family=Bai+Jamjuree:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;1,200;1,300;1,400;1,500;1,600;1,700&family=Mitr:wght@200;300;400;500;600;700&display=swap');
@import url('https://fonts.cdnfonts.com/css/rounded-elegance');
@import url('https://fonts.cdnfonts.com/css/nahista');
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/7.0.1/css/all.min.css');

:root {
    --apt-primary: red;
    --apt-accent: #000;
    --apt-bg: #fff;

    --apt-pic: gray;
    --apt-pos: center;
    --apt-size: cover;

    --apt-cover: gray;
    --apt-cpos: center;
    --apt-csize: cover;
}

#Apartment { position: relative; }
#Apartment * { box-sizing: border-box; }

#Apartment a[href="https://discord.com/users/625292873914515456/"] {
    height: 12px;
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;
    right: 0;
}

#Apartment a[href="https://discord.com/users/625292873914515456/"] ~ div:first-child { position: relative; }
  
#Apartment::after {
    display: block;
    content: "✩";
    font-family: 'Rounded Elegance', sans-serif;
    font-size: x-small;
    color: gray !important;
    width: 100%;
    text-align: center;
}
  
#Apartment:hover::after { content: "© Early Birds Co."; }

#Apartment {
    #apt-role.apt-box {
        width: calc(650px + 6rem);
        max-width: 100%;
        margin: auto;
        margin-block-end: 0.25rem;
        padding: 2rem 3rem;
        background: var(--apt-bg);

        font-family: 'Bai Jamjuree', sans-serif;
        color: var(--apt-accent);
        
        .apt-head {
            display: flex;
            gap: 1rem;
            padding-inline: 1rem;
            font-family: 'Mitr', sans-serif;
            font-weight: 200;

            i { color: var(--apt-primary); }

            div:last-child {
                margin-left: auto;
                user-select: none;
                pointer-events: none;

                i:not(:last-child) { color: var(--apt-accent) !important; }
            }
        }

        .apt-pic-grid {
            width: 100%;
            aspect-ratio: 16/9;
            margin-block: 0.5rem;
            display: grid;
            gap: 0.75rem;
            grid-template: 'a b' 2fr 'a c' 3fr / 3fr 2fr;

            .apt-pic-1, .apt-pic-2, .apt-pic-3{
                border-radius: 1rem;
                border: clamp(2px, 0.2vw, 3px) solid var(--apt-accent);
                background: var(--apt-pic) var(--apt-pos)/var(--apt-size) no-repeat;
            }

            .apt-pic-1 { grid-area: a;}

            .apt-pic-2 { 
                position: relative;
                grid-area: b;

                &::before {
                    content: attr(data);
                    position: absolute;
                    top: 50%;
                    right: 0;
                    transform: translate(calc(50% + clamp(16px, 1vw, 17px)), -50%) rotate(-90deg);

                    width: calc(80% - 1rem);
                    padding: 0.5rem 0.5rem 0.6rem 0.4rem;
                    border-radius: 0 0 1rem 1rem;

                    font-family:'Rounded Elegance', sans-serif;
                    font-size: clamp(9px, 0.7vw, 12px);
                    line-height: 1;
                    letter-spacing: 1px;
                    text-align: center;
                }
            }

            .apt-pic-3 {
                position: relative;
                grid-area: c;

                .apt-room {
                    position: absolute;
                    top: 50%;
                    right: 0;
                    transform: translate(calc(50% + clamp(16px, 1vw, 17px)), -50%) rotate(-90deg);

                    width: calc(80% - 1rem);
                    background: var(--apt-primary);
                    padding: 0.5rem 0.5rem 0.6rem 0.4rem;
                    border-radius: 0 0 1rem 1rem;
                    
                    font-family:'Rounded Elegance', sans-serif;
                    font-size: clamp(9px, 0.7vw, 12px);
                    line-height: 1;
                    letter-spacing: 1px;
                    text-align: center;
                    color: var(--apt-bg);

                    i.fa-key { margin-inline-end: 0.25rem; }
                }
            }
        }

        .apt-info {
            display: flex;
            gap: 1rem;
            padding-inline: 2rem 1rem;
            margin-block-start: -3rem;

            .apt-pfpic {
                position: relative;
                flex-shrink: 0;
                width: 125px;
                height: 125px;
                background: var(--apt-pic) var(--apt-pos)/var(--apt-size) no-repeat;
                border: clamp(2px, 0.2vw, 3px) solid var(--apt-accent);
                border-radius: 50%;

                &::before {
                    content: "+";
                    position: absolute;
                    bottom: 2%;
                    right: 2%;

                    width: 28px;
                    height: 28px;
                    border-radius: 50%;
                    background: var(--apt-primary);
                    
                    display: flex;
                    justify-content: center;
                    align-items: center;

                    font-size: 28px;
                    line-height: 1;
                    color: var(--apt-bg);
                }
            }

            .apt-nameset {
                position: relative;
                flex: 1;
                display: flex;
                flex-direction: column;
                gap: 0.5rem;
                
                padding-block: 1rem;
                margin-block-start: 2rem;

                font-family: 'Mitr', sans-serif;
                font-weight: 200;
                line-height: 1;

                .apt-name {
                    font-weight: normal;
                    font-size: 28px;
                    text-transform: uppercase;
                }

                .apt-gear {
                    position: absolute;
                    top: 2rem;
                    right: 0;
                }
            }
        }

        .apt-content {
            display: flex;
            margin-block: 2rem;
            padding-inline: 1rem;
        }

        .apt-psset {
            display: flex;
            gap: 1rem;
            background: var(--apt-primary);
            border-radius: 1.5rem;
            padding: 0.25rem 1rem;
            color: var(--apt-bg);
            margin-block-end: 1rem;

            .apt-ps { flex: 1; }
            .apt-send {
                padding-block-start: 0.4rem;

                i.fa-paper-plane {
                    transform: rotate(45deg);
                }
            }
        }
    }

    #apt-reg.apt-box {
        width: 1000px;
        max-width: 100%;
        margin: auto;
        background: var(--apt-bg);
        padding: 3rem;
        margin-block-end: 0.25rem;
        
        display: flex;
        flex-direction: column;
        gap: 1rem;
        
        font-family: 'Bai Jamjuree', sans-serif;
        color: var(--apt-accent);

        .apt-header {
            display: flex;
            justify-content: space-between;
            align-items: baseline;
            padding-inline: 1rem;
            font-family: 'Rounded Elegance', sans-serif;
            font-weight: 600;
            letter-spacing: 1px;
        }

        .apt-tabs {
            display: flex;
            justify-content: space-between;
            align-items: center;

            padding: 0.25rem 1rem;
            background: var(--apt-accent);
            color: var(--apt-bg);
            border-radius: 1.5rem;
            
            font-family: 'Rounded Elegance', sans-serif;
            font-weight: 600;
            letter-spacing: 1px;
            text-transform: uppercase;

            div:first-child {
                display: flex;
                align-items: center;
                gap: 0.5rem;

                div { padding-block-start: 0.2rem; }
            }

            div:last-child {
                display: flex;
                align-items: center;
                gap: 0.25rem;

                i.fa-bag-shopping { padding-block-start: 0.2rem; }
                i.fa-user { margin-inline-end: -0.1rem; }
            }
        }

        section + br { display: none; }

        .apt-section {
            margin-block-end: 1rem;

            .apt-topic {
                padding-inline: 1rem;
                padding-block-end: 0.5rem;
                margin-block-end: 1rem;
                border-block-end: 2px solid var(--apt-accent);
                
                font-family: 'Mitr', sans-serif;
                text-transform: uppercase;
            }

            .apt-grid {
                display: grid;
                gap: 0.5rem;
                grid-template-columns: fit-content(16.67%) repeat(5, 1fr);
                align-items: baseline;
                padding-inline-start: 1rem;

                .apt-pic {
                    grid-area: 1/5/7/7;
                    align-self: normal;
                    min-width: 155px;
                    border: clamp(2px, 0.2vw, 3px) solid var(--apt-accent);
                    border-radius: 1rem;
                    margin: 0 0.25rem 0.25rem 0.25rem;
                    background: var(--apt-pic) var(--apt-pos)/var(--apt-size) no-repeat;
                }

                .apt-q {
                    min-width: max-content;
                    font-weight: bold;
                    display: flex;
                }

                .apt-a {
                    border-radius: 1rem;
                    border: 1px solid #aaa;
                    padding: 0 1rem;
                    display: flex;
                }

                .apt-a.sm { grid-column: 2/5; }
                .apt-a.bd { grid-column: 2/4; }
                .apt-a.age { 
                    grid-column: 4/5;
                    min-width: max-content;
                }
                .apt-a.lg { grid-column: 2/7; }

                .apt-a.sm.fc { column-gap: 0.5ch; }
            }

            .apt-flex {
                display: flex;
                flex-direction: column;
                gap: 0.5rem;

                .apt-q {
                    min-width: max-content;
                    font-weight: bold;
                    display: flex;
                    padding-inline-start: 1rem;
                }

                .apt-a {
                    border-radius: 1rem;
                    border: 1px solid #aaa;
                    padding: 0.5rem 1rem;
                    display: flex;
                    flex-direction: column;

                    p { margin-block: 0 0.5rem; }
                    p:last-child { margin-block-end: 0; }

                    ul {
                        margin-block: 0;
                        padding-inline-start: 1.2rem;
                    }
                }
            }
        }

        .apt-btn {
            display: flex;

            width: fit-content;
            margin: auto;            
            padding: 0.45rem 2rem 0.25rem;
            background: var(--apt-accent);
            color: var(--apt-bg);
            border-radius: 1.5rem;
            border: 2px solid var(--apt-accent);
            
            font-family: 'Rounded Elegance', sans-serif;
            font-weight: 600;
            letter-spacing: 1px;
            text-transform: uppercase;

            cursor: pointer;
            user-select: none;

            transition: .2s;

            &:hover {
                background: var(--apt-bg);
                color: var(--apt-accent);
            }
        }
    }

    #apt-thread.apt-box {
        width: 1000px;
        max-width: 100%;
        margin: auto;
        background: var(--apt-bg);
        padding: 3rem;
        margin-block-end: 0.25rem;
        
        display: flex;
        flex-direction: column;
        gap: 1rem;
        
        font-family: 'Bai Jamjuree', sans-serif;
        color: var(--apt-accent);

        .apt-header {
            display: flex;
            justify-content: space-between;
            align-items: baseline;
            padding-inline: 1rem;
            font-family: 'Rounded Elegance', sans-serif;
            font-weight: 600;
            letter-spacing: 1px;
        }

        .apt-tabs {
            display: flex;
            justify-content: space-between;
            align-items: center;

            padding: 0.25rem 1rem;
            background: var(--apt-accent);
            color: var(--apt-bg);
            border-radius: 1.5rem;
            
            font-family: 'Rounded Elegance', sans-serif;
            font-weight: 600;
            letter-spacing: 1px;
            text-transform: uppercase;

            div:first-child {
                display: flex;
                align-items: center;
                gap: 0.5rem;

                div { padding-block-start: 0.2rem; }
                .sm { font-size: 10px; }
            }

            div:last-child {
                display: flex;
                align-items: center;
                gap: 0.25rem;

                i.fa-bag-shopping { padding-block-start: 0.2rem; }
                i.fa-user { margin-inline-end: -0.1rem; }
            }
        }

        section + br { display: none; }

        .apt-section {
            margin-block-end: 1rem;

            .apt-topic {
                padding-inline: 1rem;
                padding-block-end: 0.5rem;
                margin-block-end: 1rem;
                border-block-end: 2px solid var(--apt-accent);
                
                font-family: 'Mitr', sans-serif;
                text-transform: uppercase;
            }

            .apt-content {
                display: flex;
                flex-direction: column;
                padding-inline: 1rem;

                p { margin-block: 0 1rem; }
                pp {
                    display: block;
                    margin-block: 0 0.5rem;
                }
                pp + br { display: none; }
                p:last-child, pp:last-child, p:has(+ol), p:has(+ul) { margin-block: 0; }

                .apt-item-pf {
                    width: 100px;
                    height: 100px;
                    margin: auto;
                    background: url(https://iili.io/KSsHnNR.png) center/contain no-repeat content-box, #202020;
                    border-radius: 6px;
                    padding: 10px;
                }

                .apt-item-prop {
                    position: relative;
                    width: 200px;
                    aspect-ratio: 500/496;
                    margin: auto;
                    background: #202020;
                    border-radius: 6px;
                    overflow: hidden;
                    user-select: none;
                    pointer-events: none;

                    &::before {
                        content: "";
                        position: relative;
                        z-index: 1;
                        display: block;
                        width: 100%;
                        height: 100%;
                        background: url(https://iili.io/KSsHzoN.gif) center/contain no-repeat;
                    }

                    &::after {
                        content: "";
                        position: absolute;
                        left: 0;
                        bottom: -100px;
                        display: block;
                        width: 100%;
                        height: 100%;
                        background: url(https://iili.io/KSsHzoN.gif) center/contain no-repeat;
                        filter: blur(50px) saturate(3);
                        opacity: 0.35;
                    }
                }

                .apt-reward-grid {
                    display: grid;
                    grid-template-columns: 1fr fit-content(15%) fit-content(15%) fit-content(15%) fit-content(15%);
                    font-size: 15px;
                    margin-block-end: 0.5rem;

                    .apt-th {
                        border: 1px solid var(--apt-accent);
                        padding: 0.25rem 0.5rem;
                        background: var(--apt-accent);
                        color: var(--apt-bg);
                        font-weight: bold;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        text-align: center;
                    }

                    .apt-th:not(:first-child) { border-inline-start: 0; }

                    .apt-tdf {
                        border: 1px solid var(--apt-accent);
                        border-block-start: 0;
                        padding: 0.25rem 0.5rem;
                        display: flex;
                        align-items: center;
                    }

                    .apt-td {
                        border: 1px solid var(--apt-accent);
                        border-block-start: 0;
                        border-inline-start: 0;
                        padding: 0.25rem 0.5rem;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        text-align: center;
                    }
                }

                #gift-item {
                    margin-inline-start: -40px;
                    margin-block-start: 1rem;
                }

                #npc-item, #gift-item, #achievement {
                    .apt-item-topic {
                        background: #666;
                        color: var(--apt-bg);
                        padding: 0 0.5rem;
                        margin-block-end: 1rem;
                    }

                    .apt-item-flex {
                        display: flex;
                        gap: 1rem;
                        align-items: flex-start;
                        font-size: 15px;
                        margin-block-end: 1rem;

                        .apt-item-pic {
                            width: 100px;
                            min-height: 100px;
                            aspect-ratio: 1;
                            border-radius: 1rem;
                            border: clamp(2px, 0.2vw, 3px) solid var(--apt-accent);
                            padding: 1rem;
                            background: var(--apt-item) center/contain no-repeat content-box, #333;
                        }

                        .apt-item-info {
                            flex: 1;
                            display: grid;
                            grid-template-columns: 180px 1fr;

                            .apt-item-name {
                                font-size: 20px;
                                font-weight: bold;
                            }

                            .lg { grid-column: 1/3; }

                            hr { 
                                grid-column: 1/3;
                                width: 100%;
                            }
                        }
                    }

                    .apt-item-flex:last-child { margin-block-end: 1.5rem; }
                }

                #achievement {
                    .apt-item-flex:last-child { margin-block-end: 0 !important; }
                }

                details > summary { cursor: pointer; }
            }
        }

        .apt-pic {
            width: 100%;
            aspect-ratio: 3;
            background: var(--apt-pic) var(--apt-pos)/var(--apt-size) no-repeat;
            margin-block-end: 1rem;
        }

        input[type="radio"], input[type="radio"] + br { display: none; }

        .apt-npc-flex {
            display: flex;
            gap: min(1vw, 1rem);
            margin-block-start: min(1vw, 1rem);

            .apt-npc-l {
                overflow: hidden auto;
                padding-inline-end: 0.5rem;

                &::-webkit-scrollbar { width: 8px; }
                &::-webkit-scrollbar-track { 
                    background: var(--apt-accent);
                    border-inline: 3px solid transparent;
                    background-clip: padding-box;
                }
                &::-webkit-scrollbar-thumb {
                    background: var(--apt-accent);
                    border-radius: 10px;
                }

                .apt-npc-list {
                    display: flex;
                    flex-direction: column;
                    gap: min(1vw, 1rem);
                    height: 0;
                    min-height: 100%;

                    label.apt-npc {
                        cursor: pointer;
                        width: clamp(100px, 10vw, 150px);
                        aspect-ratio: 1;
                        border-radius: 1rem;
                        border: clamp(2px, 0.2vw, 3px) solid var(--apt-accent);
                        background: var(--apt-pic) var(--apt-pos)/var(--apt-size) no-repeat;
                        filter: grayscale(1);
                        transition: .5s ease;

                        &:hover { filter: grayscale(0); }
                    }
                    
                    label + br { display: none; }
                }
            }

            .apt-npc-r {
                flex: 1;
                padding-inline-start: 1rem;
                min-height: clamp(calc(500px + calc(min(1vw, 1rem) * 4)), 43vw, calc(750px + calc(min(1vw, 1rem) * 4)));

                .apt-npc-grid {
                    display: none;
                    grid-template-columns: minmax(83.63px, 20%) minmax(94.17px, 50%) minmax(54.58px, 10%) minmax(41.44px, 20%);
                    gap: min(1vw, 1rem);
                    align-items: baseline;

                    .apt-name {
                        grid-column: 1/5;
                        font-family: 'Mitr', sans-serif;
                        font-size: clamp(28px, 2vw, 32px);
                        line-height: 1;
                        text-transform: uppercase;
                    }

                    .apt-pic {
                        grid-column: 1/5;
                        width: 100%;
                        aspect-ratio: 4;
                        background: var(--apt-pic) var(--apt-pos)/var(--apt-size) no-repeat;
                    }

                    .apt-q {
                        min-width: max-content;
                        font-weight: bold;
                        display: flex;
                    }

                    .apt-a {
                        border-radius: 1rem;
                        border: 1px solid #aaa;
                        padding: 0 1rem;
                        display: flex;
                        flex-direction: column;
                    }

                    .apt-a.lg { grid-column: 2/5; }
                    .apt-a.about {
                        grid-column: 1/5;
                        padding: 0.5rem 1rem;
                        margin-inline-start: -1rem;

                        p { margin-block: 0 0.5rem; }
                        p:last-child { margin-block: 0; }
                    }
                }
            }
        }
    }

    #apt-banner.apt-box {
        width: 500px;
        max-width: 100%;
        margin: auto;
        
        display: grid;
        grid-template-columns: 1fr 125px;
        column-gap: 0.5rem;

        .apt-name {
            grid-column: 1/3;
            display: flex;
            gap: 0.25rem;
            padding-inline: 1rem;

            font-family: 'Rounded Elegance', sans-serif;
            font-size: 10px;
            letter-spacing: 1px;

            i { text-transform: uppercase; }
        }

        .apt-player, .apt-pic {
            position: relative;
            border-radius: 1rem;
            border: clamp(2px, 0.2vw, 3px) solid var(--apt-accent);
        }

        .apt-player {
            display: flex;
            column-gap: 1.5rem;
            padding: 1.5rem 2.5rem;
            overflow: clip;

            &::before {
                content: "";
                position: absolute;
                inset: 0;
                transform: scale(1.05);
                will-change: transform;
                
                background: linear-gradient(rgba(0,0,0,0.2) 0 0), var(--apt-pic) var(--apt-pos)/var(--apt-size) no-repeat;
                filter: blur(2px);
            }

            .apt-cover {
                position: relative;
                aspect-ratio: 1;
                height: 100%;
                border-radius: 0.5rem;
                background: var(--apt-cover) var(--apt-cpos)/var(--apt-csize) no-repeat;
            }

            .apt-cover[style*="--apt-pos"][style*="--apt-size"] {
                background: var(--apt-cover) var(--apt-pos)/var(--apt-size) no-repeat;
            }

            .apt-cover[style*="--apt-pos"]:not([style*="--apt-size"]) {
                background: var(--apt-cover) var(--apt-pos)/var(--apt-csize) no-repeat;
            }

            .apt-cover[style*="--apt-size"]:not([style*="--apt-pos"]) {
                background: var(--apt-cover) var(--apt-cpos)/var(--apt-size) no-repeat;
            }

            .apt-song {
                position: relative;
                flex: 1;
                display: flex;
                flex-direction: column;
                justify-content: end;
                
                background: url(https://iili.io/KS4Xmhb.png) center calc(100% - 0.5rem)/100% no-repeat;
                padding-inline: 0.15rem 1rem;
                padding-block-end: 2.5rem;

                font-family: 'Mitr', sans-serif;
                font-size: 10px;
                font-weight: 200;
                line-height: 1;

                b {
                    font-size: 13px;
                    font-weight: normal;
                }
            }
        }

        .apt-pic {
            position: relative;
            height: 125px;
            border-radius: 1rem;
            border: clamp(2px, 0.2vw, 3px) solid var(--apt-accent);
            background: var(--apt-pic) var(--apt-pos)/var(--apt-size) no-repeat;
            color: var(--apt-accent);

            i.fa-gear {
                position: absolute;
                top: 0.5rem;
                right: 0.5rem;
                font-size: 12px;
            }
        }

        .apt-quote {
            display: flex;
            justify-content: space-between;
            gap: 0.25rem;
            padding-inline: 1rem;
            
            font-family: 'Mitr', sans-serif;
            font-size: 10px;
            font-weight: 200;

            div:last-child { 
                user-select: none;
                pointer-events: none;
            }
        }

        &::after {
            content: "✩";
            display: flex;
            justify-content: end;
            padding-inline: 0.75rem;
            padding-block-start: 0.1rem;

            font-family: 'Rounded Elegance', sans-serif;
            font-size: 9px;
            color: gray !important;
            text-align: end;
        }
    }

    #klick-thread.klk-box {
        width: 500px;
        max-width: 100%;
        margin: auto;
        margin-block-end: 0.25rem;

        display: flex;
        flex-direction: column;
        gap: 1rem;
        
        font-family: 'Bai Jamjuree', sans-serif;
        user-select: none;

        .klk-app {
            width: 100%;
            aspect-ratio: 9/16;
            background: var(--apt-bg);
            border-radius: 1rem;
            padding: 100px;
            color: var(--apt-accent);
            
            display: flex;
            flex-direction: column;
            justify-content: center;
            gap: 1rem;

            .klk-name {
                font-family: 'Nahista', sans-serif;
                font-size: 4rem;
                font-style: italic;
                line-height: 1;
                text-align: center;
                margin-block-end: 2rem;
            }

            .klk-input {
                display: flex;
                align-items: center;
                gap: 1rem;
                
                border-radius: 2rem;
                border: 1px solid var(--apt-accent);
                padding: 0.25rem 1rem;
            }

            .klk-forget {
                font-size: 13px;
                color: #aaa;
                text-align: end;
                padding-inline: 1rem;
            }

            .klk-divide {
                display: flex;
                align-items: center;
                gap: 0.5rem;

                hr {
                    flex: 1;
                    background: #aaa;
                }
            }

            .klk-signup { text-align: center; }
        }

        .klk-desc {
            position: relative;
            width: 100%;
            background: rgba(255,255,255,0.25);
            border-radius: 1rem;
            padding: 2rem 2rem 1.5rem;
            font-size: 15px;

            i.fa-xmark {
                position: absolute;
                top: 1rem;
                right: 1rem;
                cursor: pointer;
            }

            k {
                font-family: 'Nahista', sans-serif;
                font-size-adjust: 0.75;
                font-style: italic;
                margin-inline-end: 0.25rem;
            }
        }
    }

    #klick-post.klk-box {
        min-height: calc(500px * 16 / 9);
        width: 500px;
        max-width: 100%;
        margin: auto;
        margin-block-end: 0.25rem;
        background: var(--apt-bg);
        border-radius: 1rem;
        overflow: hidden;
        
        font-family: 'Bai Jamjuree', sans-serif;
        color: var(--apt-accent);

        .klk-pic-set {
            position: relative;
            width: 100%;
            aspect-ratio: 4/5;

            .klk-pic-gallery {
                height: 100%;
                width: auto;
                overflow-x: auto;
                scroll-snap-type: x mandatory;
                
                display: flex;

                &::-webkit-scrollbar { height: 0; }

                .klk-pic {
                    width: 500px;
                    aspect-ratio: 4/5;
                    background: var(--apt-pic) var(--apt-pos)/var(--apt-size) no-repeat;
                    scroll-snap-align: start;
                    flex: 0 0 auto;
                    -webkit-flex: 0 0 auto;
                    flex-shrink: 0;
                }
            }

            .klk-btngroup {
                position: absolute;
                width: calc(100% - 2rem);
                left: 1rem;
                top: 1rem;

                display: flex;
                justify-content: space-between;

                .klk-btn {
                    position: relative;
                    cursor: pointer;
                    width: 36px;
                    height: 36px;
                    border-radius: 50%;
                    background: var(--apt-bg);
                    
                    display: flex;
                    justify-content: center;
                    align-items: center;
                }

                label.klk-btn {
                    input[type="checkbox"] { display: none; }

                    i.fa-solid, i.fa-regular { 
                        position: absolute;
                        top: 50%;
                        left: 50%;
                        transform: translate(-50%, -50%);
                        transition: .2s;
                    }

                    i.fa-solid { 
                        opacity: 0;
                        color: rgb(255, 48, 64);
                    }

                    input:checked + i.fa-regular { opacity: 0; }
                    input:checked + i.fa-regular + i.fa-solid { opacity: 1; }
                }
            }

            .klk-pfpic {
                position: absolute;
                bottom: 0;
                left: 2rem;
                transform: translateY(50%);
                
                width: 100px;
                aspect-ratio: 1;
                border: clamp(2px, 0.2vw, 3px) solid var(--apt-bg);
                border-radius: 50%;
                background: var(--apt-pic) var(--apt-pos)/var(--apt-size) no-repeat;
            }
        }

        .klk-pic-set::before {
            content: attr(pic-amount);
            position: absolute;
            bottom: 1rem;
            left: 50%;
            transform: translateX(-50%);
            
            width: max-content;
            padding: 0 0.3rem 0.5rem;
            border-radius: 1rem;
            opacity: 0;

            font-size: 48px;
            line-height: 0.2;
            letter-spacing: 0px;
            color: var(--apt-bg);
            
            display: flex;
            align-items: center;

            transition: .2s;
        }

        .klk-pic-set:hover::before { opacity: 0.6; }

        .klk-content {
            display: flex;
            flex-direction: column;
            gap: 1rem;
            padding: 4rem 2rem 2rem;

            .klk-userset {
                display: flex;
                justify-content: space-between;
                align-items: center;

                .klk-user {
                    display: flex;
                    align-items: baseline;
                    gap: 0.5rem;
                    
                    div:first-child {
                        font-weight: bold;
                        font-size: 24px;
                    }

                    div:last-child { color: #888; }
                }

                .klk-more { 
                    color: #888;
                    cursor: pointer;
                }
            }

            .klk-post h { 
                color: #2b78ff;
                cursor: pointer;
            }

            .klk-stat {
                display: flex;
                gap: 1rem;
                color: #888;
                user-select: none;
            }

            .klk-comment {
                margin-block-start: -1rem;

                details > summary {
                    list-style: none;
                    cursor: pointer;
                    color: #888;
                    user-select: none;
                }

                details > summary::marker,
                details > summary::-webkit-details-marker {
                    display: none;
                }

                i.fa-angle-down { transition: .2s; }
                details > summary i.fa-angle-down { rotate: 0deg; }
                details[open] > summary i.fa-angle-down { rotate: 180deg; }

                .klk-role { margin-block-start: 0.5rem; }
            }
        }
    }
}

#Apartment:has(#apt-banner) {
    width: 500px;
    margin: auto;
    
    a[href="https://discord.com/users/625292873914515456/"] {
        height: 10px !important;
        bottom: 0.25rem !important;
        left: unset !important;
        right: 4px !important;
        width: 120px;
    }

    &::after { content: "" !important; }
    &:hover::after { content: "" !important; }

    &:hover #apt-banner::after { content: "© Early Birds Co."; }
}

[data-group] input[data-npc="npc1"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc1-"],
[data-group] input[data-npc="npc2"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc2-"],
[data-group] input[data-npc="npc3"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc3-"],
[data-group] input[data-npc="npc4"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc4-"],
[data-group] input[data-npc="npc5"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc5-"],
[data-group] input[data-npc="npc6"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc6-"],
[data-group] input[data-npc="npc7"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc7-"],
[data-group] input[data-npc="npc8"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc8-"],
[data-group] input[data-npc="npc9"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc9-"],
[data-group] input[data-npc="npc10"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc10-"],
[data-group] input[data-npc="npc11"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc11-"],
[data-group] input[data-npc="npc12"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc12-"],
[data-group] input[data-npc="npc13"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc13-"],
[data-group] input[data-npc="npc14"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc14-"],
[data-group] input[data-npc="npc15"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc15-"],
[data-group] input[data-npc="npc16"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc16-"],
[data-group] input[data-npc="npc17"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc17-"],
[data-group] input[data-npc="npc18"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc18-"],
[data-group] input[data-npc="npc19"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc19-"],
[data-group] input[data-npc="npc20"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc20-"],
[data-group] input[data-npc="npc21"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc21-"],
[data-group] input[data-npc="npc22"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc22-"],
[data-group] input[data-npc="npc23"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc23-"],
[data-group] input[data-npc="npc24"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc24-"],
[data-group] input[data-npc="npc25"]:checked ~ .apt-npc-flex > .apt-npc-l > .apt-npc-list label.apt-npc[for^="npc25-"] { filter: grayscale(0) !important; }

[data-group] input[data-npc="npc1"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc1"],
[data-group] input[data-npc="npc2"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc2"],
[data-group] input[data-npc="npc3"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc3"],
[data-group] input[data-npc="npc4"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc4"],
[data-group] input[data-npc="npc5"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc5"],
[data-group] input[data-npc="npc6"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc6"],
[data-group] input[data-npc="npc7"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc7"],
[data-group] input[data-npc="npc8"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc8"],
[data-group] input[data-npc="npc9"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc9"],
[data-group] input[data-npc="npc10"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc10"],
[data-group] input[data-npc="npc11"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc11"],
[data-group] input[data-npc="npc12"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc12"],
[data-group] input[data-npc="npc13"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc13"],
[data-group] input[data-npc="npc14"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc14"],
[data-group] input[data-npc="npc15"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc15"],
[data-group] input[data-npc="npc16"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc16"],
[data-group] input[data-npc="npc17"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc17"],
[data-group] input[data-npc="npc18"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc18"],
[data-group] input[data-npc="npc19"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc19"],
[data-group] input[data-npc="npc20"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc20"],
[data-group] input[data-npc="npc21"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc21"],
[data-group] input[data-npc="npc22"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc22"],
[data-group] input[data-npc="npc23"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc23"],
[data-group] input[data-npc="npc24"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc24"],
[data-group] input[data-npc="npc25"]:checked ~ .apt-npc-flex > .apt-npc-r > .apt-npc-grid[npc="npc25"] { display: grid !important; }