/* ---------- COLOR SCHEMES ---------- */

body.dim {
    /* BODY COLORS */
    --bg: #15202c; /* background color */
    --bdr: #38444d; /* border color */
    --txt: #f7f9f9; /* text color */
    --gray: #8b98a5; /* gray text color */
    /* NAV COLORS */
    --navh: rgba(247,249,249,0.1); /* nav background hover */
    /* SIDEBAR COLORS */
    --sbg: #1e2a37; /* sidebar background */
    --sbgh: rgba(255,255,255,0.03); /* sidebar link background hover */
    --sbdr: #38444d; /* sidebar inner border color */
    --sgray: #8b98a5; /* sidebar gray text color */
    /* POST COLORS */
    --pbg: #15202c; /* post background color */
    --pbg2: #222e3b; /* off-white post background */
    --pbdr: #38444d; /* post inner border color */
    --ptxt: #f7f9f9; /* post text color */
    --pgray: #8b98a5; /* post gray text color */
}

body.lights {
    /* BODY COLORS */
    --bg: #000000; /* background color */
    --bdr: #2f3336; /* border color */
    --txt: #e7e9ea; /* text color */
    --gray: #71767b; /* gray text color */
    /* NAV COLORS */
    --navh: rgba(231,233,234,0.1); /* nav background hover */
    /* SIDEBAR COLORS */
    --sbg: #16181c; /* sidebar background */
    --sbgh: rgba(255,255,255,0.03); /* sidebar link background hover */
    --sbdr: #2f3336; /* sidebar inner border color */
    --sgray: #71767b; /* sidebar gray text color */
    /* POST COLORS */
    --pbg: #000000; /* post background color */
    --pbg2: #16181c; /* off-white post background */
    --pbdr: #2f3336; /* post inner border color */
    --ptxt: #e7e9ea; /* post text color */
    --pgray: #71767b; /* post gray text color */
}

body.tumblr {
    /* BODY COLORS */
    --bg: #061a34; /* background color */
    --bdr: rgba(255,255,255,0.13); /* border color */
    --txt: #ffffff; /* text color */
    --gray: #667586; /* gray text color */
    /* NAV COLORS */
    --navh: rgba(172, 180, 189, 0.1);/* nav hover */
    /* SIDEBAR COLORS */
    --sbg: #122944; /* sidebar background */
    --sbgh: #233851; /* sidebar link background hover */
    --sbdr: #31455d; /* sidebar inner border color */
    --sgray: rgba(255,255,255,0.65); /* sidebar gray text color */
    /* POST COLORS */
    --pbg: #ffffff; /* post background color */
    --pbg2: #eeeeee; /* off-white post background */
    --pbdr: rgba(0,0,0,0.13); /* post inner border color */
    --ptxt: #000000; /* post text color */
    --pgray: #667586; /* post gray text color */
}

body.dark {
    /* BODY COLORS */
    --bg: #000000; /* background color */
    --bdr: rgba(255,255,255,0.1); /* border color */
    --txt: #ffffff; /* text color */
    --gray: #888888; /* gray text color */
    /* NAV COLORS */
    --navh: rgba(255,255,255,0.1);/* nav hover */
    /* SIDEBAR COLORS */
    --sbg: #121212; /* sidebar background */
    --sbgh: #181818; /* sidebar link background hover */
    --sbdr: rgba(255,255,255,0.1); /* sidebar border color */
    --sgray: #666666; /* sidebar gray text color */
    /* POST COLORS */
    --pbg: #181818; /* post background color */
    --pbg2: #222222; /* off-white post background */
    --pbdr: rgba(255,255,255,0.1); /* darker border color */
    --ptxt: #ffffff; /* post text color */
    --pgray: #666666; /* post gray text color */
}

body.accent {
    /* BODY COLORS */
    --bg: var(--act); /* background color */
    --bdr: rgba(255,255,255,0.2); /* border color */
    --txt: #ffffff; /* text color */
    --gray: rgba(255,255,255,0.7); /* gray text color */
    /* NAV COLORS */
    --navh: rgba(0,0,0,0.1); /* nav background hover */
    /* SIDEBAR COLORS */
    --sbg: rgba(0,0,0,0.1); /* sidebar background */
    --sbgh: rgba(0,0,0,0.05); /* sidebar link background hover */
    --sbdr: rgba(255,255,255,0.2); /* sidebar inner border color */
    --sgray: rgba(255,255,255,0.7); /* sidebar gray text color */
    /* POST COLORS */
    --pbg: #ffffff; /* post background color */
    --pbg2: #f2f6f7; /* off-white post background */
    --pbdr: #e8eced; /* post inner border color */
    --ptxt: #0f1419; /* post text color */
    --pgray: #71767b; /* post gray text color */
}

body.accent2 {
    /* BODY COLORS */
    --bg: var(--act); /* background color */
    --bdr: rgba(0,0,0,0.1); /* border color */
    --txt: #000000; /* text color */
    --gray: rgba(0,0,0,0.4); /* gray text color */
    /* NAV COLORS */
    --navh: rgba(0,0,0,0.1); /* nav background hover */
    /* SIDEBAR COLORS */
    --sbg: rgba(0,0,0,0.05); /* sidebar background */
    --sbgh: rgba(0,0,0,0.03); /* sidebar link background hover */
    --sbdr: rgba(0,0,0,0.08); /* sidebar inner border color */
    --sgray: rgba(0,0,0,0.4); /* sidebar gray text color */
    /* POST COLORS */
    --pbg: #000000; /* post background color */
    --pbg2: #16181c; /* off-white post background */
    --pbdr: #2f3336; /* post inner border color */
    --ptxt: #e7e9ea; /* post text color */
    --pgray: #71767b; /* post gray text color */
}

body.tumblr header, body.tumblr article.post,
body.accent header, body.accent article.post,
body.accent2 header, body.accent2 article.post {
    border-color: var(--bg);
}

body.accent .nav-inner a.current-page span,
body.accent2 .nav-inner a.current-page span {
    color: inherit;
}

/* ---------- TWITTER CHIRP FONT ---------- */

@font-face {
    font-family: 'Chirp';
    src: url('../fonts/chirp-regular-web.woff') format('woff'), url('../fonts/chirp-regular-web.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Chirp';
    src: url('../fonts/chirp-medium-web.woff') format('woff'), url('../fonts/chirp-medium-web.woff2') format('woff2');;
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Chirp';
    src: url('../fonts/chirp-bold-web.woff') format('woff'), url('../fonts/chirp-bold-web.woff2') format('woff2');;
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Chirp';
    src: url('../fonts/chirp-heavy-web.woff') format('woff'), url('../fonts/chirp-heavy-web.woff2') format('woff2');;
    font-weight: 800;
    font-style: normal;
}

/* ---------- TWITTER CHIRP FONT - 2023 VERSION ---------- */

@font-face {
    font-family: 'Chirp2023';
    src: url('../fonts/chirp-regular-2023.woff') format('woff'), url('../fonts/chirp-regular-2023.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Chirp2023';
    src: url('../fonts/chirp-medium-2023.woff') format('woff'), url('../fonts/chirp-medium-2023.woff2') format('woff2');;
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Chirp2023';
    src: url('../fonts/chirp-bold-2023.woff') format('woff'), url('../fonts/chirp-bold-2023.woff2') format('woff2');;
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Chirp2023';
    src: url('../fonts/chirp-heavy-2023.woff') format('woff'), url('../fonts/chirp-heavy-2023.woff2') format('woff2');;
    font-weight: 800;
    font-style: normal;
}

/* ---------- TUMBLR FAVORIT FONT ---------- */

@font-face {
    font-family: 'Favorit';
    src: url('https://assets.tumblr.com/fonts/favorit/FavoritTumblr-85.eot');
    src: url('https://assets.tumblr.com/fonts/favorit/FavoritTumblr-85.eot?#iefix') format('embedded-opentype'),
         url('../fonts/FavoritTumblr-85.woff') format('woff'),
         url('../fonts/FavoritTumblr-85.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Favorit';
    src: url('https://assets.tumblr.com/fonts/favorit/FavoritTumblr-Medium.eot');
    src: url('https://assets.tumblr.com/fonts/favorit/FavoritTumblr-Medium.eot?#iefix') format('embedded-opentype'),
         url('../fonts/FavoritTumblr-Medium.woff') format('woff'),
         url('../fonts/FavoritTumblr-Medium.ttf') format('truetype');
    font-weight: bold;
    font-style: bold;
}

/* ---------- ICON PSEUDO ELEMENTS ---------- */

.point::before,
.post-footer a.like-button .like_button::before,
.reblog-list .post-reblog-header .post-avatar.sub-icon-reblog:after, 
.reblog:not(.original_post) .avatar_frame:after,
.like .avatar_frame:after,
.prev::before, .next::after {
    font-family: "Font Awesome Kit";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* ---------- BASICS ---------- */

body {
    margin: 0;
    background: var(--bg);
    font-family: var(--ft);
    font-size: var(--fsz);
    line-height: 1.4;
    color: var(--txt);
    background-attachment: fixed !important;
}

/* links */

a, 
a > * { 
    text-decoration: none; 
    color: inherit; 
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

a.deactivated { 
    cursor: default !important; 
}

.post-reblog-item a, .post-caption a { 
    color: var(--act);
}

/* ---------- MAIN CONTAINER ---------- */

main {
    margin: 55px auto 0 auto;
    width: calc(var(--psz) + var(--sbw) + var(--nw) + 32px);
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: stretch;
}

main img { 
    max-width: 100%; 
    margin: 0; 
    line-height: 0; 
}

/* ---------- LEFT NAVIGATION ---------- */

nav {
    width: var(--nw);
}

.nav-inner {
    display: flex;
    flex-flow: column nowrap;
    margin-top: 26px;
    padding-right: 10px;
    padding-bottom: 18px;
}

.nav-inner a {
    display: flex;
    align-items: flex-start;
}

.nav-inner a span {
    padding: 12px 28px 12px 12px;
    border-radius: 100px;
    font-size: 20px;
    line-height: 1.2;
    min-height: 1.75rem;
    max-width: calc(100% - 60px);
    margin: 4px 0;
    background: transparent;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
}

.nav-inner a:hover span {
    background: var(--navh);
}

.nav-inner a .link-icon {
    width: 1.75rem !important;
    line-height: 0;
    margin-right: 20px;
}

.nav-inner a i {
    font-size: 1.75rem;
    font-weight: 400 !important;
}

.nav-inner a.current-page span {
    font-weight: 700;
    color: var(--act);
}

.nav-inner .nav-link-title {
    max-width: calc(100% - 1.75rem - 20px);
}

.page-links i:not(.pl-6),
.page-links a:not(:nth-child(1n+6)) i.pl-6 {
    display: none;
}

.page-links a:nth-child(1) i.pl-1, 
.page-links a:nth-child(2) i.pl-2, 
.page-links a:nth-child(3) i.pl-3, 
.page-links a:nth-child(4) i.pl-4, 
.page-links a:nth-child(5) i.pl-5 {
    display: initial;
}

nav.n-90px .nav-inner a span {
    max-width: none;
    padding: 12px;
}

nav.n-90px .nav-inner a .link-icon {
    margin-right: 0;
}

nav.n-90px .nav-inner .nav-link-title {
    display: none;
}

/* ---------- HEADER ---------- */

section#posts {
    width: var(--psz);
    min-height: calc(100vh - 55px);
    margin-top: 30px;
    padding-bottom: 40px;
}

header {
    background: var(--pbg);
    color: var(--ptxt);
    border: 1px var(--bdr) solid;
    border-radius: var(--brds);
    overflow: hidden;
    margin-bottom: 30px;
}

.header-image {
    width: 100%;
    height: 200px;
    background: var(--act);
    background-size: cover;
    background-position: center center;
}

.header-avatar {
    width: 133.5px;
    height: 133.5px;
    margin: -73px 20px 0 20px;
    border-radius: 100%;
    border: 4px var(--pbg) solid;
    background: var(--act);
    background-size: cover;
    background-position: center center;
}

.header-avatar img {
    width: 133.5px;
    height: 133.5px;
    border-radius: 100%;
}

.header-right {
    float: right;
    margin: 16px 20px;
    display: flex;
}

.header-right a {
    display: inline-block;
}

.header-right a:not(.f-link) {
    line-height: 0;
    padding: 7px;
    border-radius: 100%;
    border: 1px var(--pbdr) solid;
    height: 20px;
    width: 20px;
    margin-right: 8px;
    background: transparent;
    text-align: center;
}

.header-right a:not(.f-link):hover {
    background: var(--pbg2);
}

.header-right a:not(.f-link) i {
    font-size: 20px;
}

i.fak.fa-chirp-external {
    margin-left: 1px;
}

.header-right a.f-link {
    padding: 8px 17px;
    border-radius: 50px;
    background: var(--act);
    color: #ffffff;
    font-weight: 700;
    line-height: 20px;
}

.header-right a.f-link:hover {
    opacity: 0.9;
}

.bio {
    padding: 16px 20px;
}

.bio-name {
    font-size: 20px;
    line-height: 1.4;
    font-weight: 800;
}

.bio-name i {
    margin-left: 3px;
    color: #1d9bf0;
}

.bio-url {
    color: var(--pgray);
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
}

.bio-post-number {
    font-size: 0.866667em;
    opacity: 0.6;
}

.dot {
    margin: 0 5px;
}

.bio-description {
    margin-top: 16px;
}

.bio-points {
    margin-top: 16px;
    color: var(--pgray);
}

.bio-points.no-points {
    display: none;
}

.point {
    margin-right: 12px;
    display: inline;
    padding-left: calc(1.25em + 4px);
}

.point a {
    color: var(--act);
    word-break: break-all;
}

.point a:hover {
    text-decoration: underline;
}

.point i {
    float: left;
    margin: 0.125em 4px 0 0;
    font-size: 1.25em !important;
}

.point::before {
    position: absolute;
    font-size: 1.25em;
    margin: -0.0625em 0 0 -1.25em;
}

.point.p1::before {
    content: "\e01a";
}

.point.p2::before {
    content: "\e015";
}

.point.p3::before {
    content: "\e01b";
}

.point.p4::before {
    content: "\e006";
}

/* ---------- MOBILE NAV ---------- */

.mobile-nav {
    background: var(--pbg2);
    border-bottom: 1px var(--bdr) solid;
    padding: 12px 16px;
    text-align: center;
    display: none;
}

.mobile-nav a {
    display: inline-block;
    margin: 4px 8px;
    color: var(--pgray);
    font-size: 0.8125em;
    line-height: 1.23077;
}

body.tumblr .mobile-nav, 
body.accent .mobile-nav, 
body.accent2 .mobile-nav {
    border-bottom: 1px var(--pbdr) solid;
}

/* ---------- SIDEBAR ---------- */

aside {
    width: var(--sbw);
    margin-left: 30px;
}

.side-inner {
    margin-top: 30px;
}

.sidebar-box {
    width: 100%;
    min-height: 50px;
    background: var(--sbg);
    margin-bottom: 30px;
    border-radius: var(--brds);
    overflow: hidden;
}

.s-title {
    padding: 16px 20px;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 800;
    border-bottom: 1px var(--sbdr) solid;
}

.s-text {
    padding: 16px 20px;
}

.s-text a {
	color: var(--act);
}

.s-image {
    line-height: 0;
}

.s-image img {
    width: 100%;
}

a.account, a.trend {
    padding: 16px 20px;
    background: transparent;
}

a.account {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    min-height: 48px;
}

.account-info {
    max-width: calc(100% - 60px);
}

a.trend {
    display: block;
    min-height: calc((1em * 1.25) + (0.866667em * 1.23077) + 4px);
}

a.account:hover, a.trend:hover {
    background: var(--sbgh);
}

a.account:not(:last-child), a.trend:not(:last-child) {
    border-bottom: 1px var(--sbdr) solid;
}

a.account img {
    height: 48px;
    width: 48px;
    border-radius: 100%;
    margin-right: 12px;
}

a.account h3, a.account h4, a.trend h3, a.trend h4 {
    margin: 0;
    font-size: var(--fsz);
    line-height: 1.25;
    overflow: hidden;
    word-break: break-all;
    white-space: nowrap;
    text-overflow: ellipsis;
}

a.account h3, a.trend h3 {
    font-weight: 700;
}

a.account h4 {
    font-weight: 400;
    color: var(--sgray);
}

a.trend h3 {
    margin-bottom: 4px;
}

a.trend h4 {
    font-weight: 400;
    color: var(--sgray);
    font-size: 0.866667em;
    line-height: 1.23077;
}

.sidebar-footer {
    padding: 0 16px 70px 16px;
    color: var(--gray);
    font-size: 0.866667em;
    line-height: 1.23077;
}

.sidebar-footer a { 
    margin: 0px 10px 5px 0; 
    display: inline-block;
}

.sidebar-footer a:not(.dead-link):hover {
    text-decoration: underline;
}

/* ---------- POSTS ---------- */

article.post { 
    background: var(--pbg);
    color: var(--ptxt);
    border: 1px var(--bdr) solid;
    overflow: hidden;
    word-wrap: break-word;
    margin-bottom: 30px;
    border-radius: var(--brds);
}

/* ---------- POST HEADER ---------- */

.post-header {
    padding: 16px 20px;
    font-size: 0.875em;
    font-weight: 700;
    color: var(--pgray);
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    border-bottom: 1px var(--pbdr) solid;
}

.post-header-left {
    display: inline-block;
    margin-right: 12px;
}

.pinned-post .post-header.ph {
    display: none;
}

/* ---------- REBLOG CHAINS ---------- */

article.post-photo .post-reblog-list:not(:empty),
article.post-photoset .post-reblog-list:not(:empty),
article.post-video .post-reblog-list:not(:empty),
article.post-audio .post-reblog-list:not(:empty) {
    margin-top: -20px;
}

.post-reblog-item {
    padding: 20px 20px 0;
    border-top: 1px var(--pbdr) solid;
}

.post-reblog-item:first-child {
    border-top: none;
}

.reblog-item-avatar img {
    height: 25px;
    width: 25px;
    border-radius: 100%;
    float: left;
    margin-right: 10px;
}

.reblog-item-username { 
    height: 25px;
    font-weight: 700; 
    line-height: 24px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.reblog-item-username a { 
    text-decoration: none; 
    color: var(--ptxt);
}

.reblog-item-username .deactivated { 
    cursor: default; 
}

.post-reblog-item figure,
.post-caption figure {
    margin: 4px 0;
}

.post-caption > *:last-child,
.post-reblog-item > *:last-child {
    margin-block-end: 20px;
}

.post-caption > *:first-child {
	margin-block-start: 20px !important;
}

/* ---------- TEXT POSTS ---------- */

.post-reblog-item, .post-caption { 
    line-height: 1.6em; 
}

.post-caption { 
    padding: 0 20px; 
}

p.tmblr-attribution { 
    display: none !important; 
}

/* post headings */

article h1, 
article h2 {
    font-weight: 400;
    margin: .75em 0;
    line-height: 1.3;
}

h2.post-title { 
    font-size: 2em; 
    font-weight: 400; 
    padding: 20px 20px 0;
    margin: 0 0 -0.5rem 0;
    line-height: 140%;
}

.post-reblog-item h1, 
.post-reblog-item h2,
.post-caption h1, 
.post-caption h2 {
    line-height: 140%;
    margin: .75em 0;
}

.post-reblog-item h1, 
.post-caption h1 {
	font-size: 1.625rem;
}

.post-reblog-item h2, 
.post-caption h2 {
    font-size: 1.25rem;
}

article.post.alert h2.post-title {
    padding: 20px;
	font-size: 1.625rem;
}

/* blockquotes */

.post-reblog-list blockquote, 
.post-caption blockquote {
    border-left: 1px var(--pbdr) solid;
    margin: 1em 0 1em 0.5em;
    padding-left: 20px;
}

/* ask and submit box */

iframe#ask_form, iframe#submit_form {
    margin-bottom: 1em;
}

/* read more */

a.read_more {
    font-weight: 700;
}

/* npf styled text */

@font-face {
	font-family: Fairwater;
	src: url('../fonts/fairwater_script_regular-webfont.woff2') format("woff2"), url('../fonts/fairwater_script_regular-webfont.woff') format("woff");
	 font-weight: 400;
	 font-style: normal
}

p.npf_quirky {
	font-family: Fairwater, Georgia, Times, Times New Roman, serif;
	font-size: 1.6rem;
	line-height: 1.25em
}

p.npf_chat {
	font-family: Courier, monospace;
	font-size: 1rem;
}

/* npf color text */

.npf_color_joey { 
	color:#ff492f; 
}

.npf_color_monica { 
	color:#ff8a00; 
}

.npf_color_ross { 
	color:#00cf35; 
}

.npf_color_rachel { 
	color:#00b8ff; 
}

.npf_color_chandler { 
	color:#7c5cff; 
}

.npf_color_niles { 
	color:#ff62ce; 
}

/* polls */

.poll-post a.poll-row {
    background: transparent;
    color: var(--ptxt);
    text-align: left;
    justify-content: left;
    border: 1px solid var(--pbdr);
    max-width: calc(100% - 2px);
    border-radius: calc((var(--brds) / 2) + 2px);
    font-weight: inherit;
}

.poll-post a.poll-row:hover {
    background: var(--pbg2);
}

.poll-post .poll-question {
    font-size: 1.25rem;
    font-weight: 400;
    margin: .75em 0;
    line-height: 1.3;
}

/* ---------- MEDIA POSTS ---------- */

article.post img { 
    max-width: 100%;  
    height: auto; 
}

article.post [photoset-layout] img { 
    height: 100%; 
}

.image-container img,
figure.tmblr-full img {
    width: 100%;
    max-width: calc(100% - 40px);
}

figure.tmblr-full {
    line-height: 0;
    cursor: pointer;
}

.image-container, 
.photoset-container, 
.photoset-grid,
.video { 
    line-height: 0; 
    margin: 20px;
    border: 1px solid var(--pbdr);
	max-width: calc(100% - 2px);
    border-radius: calc((var(--brds) / 2) + 2px);
    overflow: hidden;
}

figure.tmblr-full video, 
img.high-res { 
    width: 100%; 
}

.post div.npf_row, body div.npf_row {
    overflow: visible;
}

.post div.npf_row figure.tmblr-full, 
body div.npf_row figure.tmblr-full {
    overflow-y: visible;
}

.post_media_photo_anchor {
    line-height: 0;
    width: inherit;
}

.post-reblog-item > figure, 
.post-caption > figure {
    margin: 20px 0;
}

.tmblr-full .tmblr-alt-text-helper {
    font-size: 0.866667em;
    line-height: 1.2em;
    padding: 1px 3px !important;
}

/* add borders and corners to videos and npf photosets */

figure.tmblr-full video,
figure img {
    border: 1px solid var(--pbdr);
	max-width: calc(100% - 2px);
    border-radius: calc((var(--brds) / 2) + 2px);
}

.npf_row figure img {
	border: none;
	max-width: 100%;
	border-radius: 0;
}

.npf_row {
	max-width: calc(100% - 2px);
    border: 1px solid var(--pbdr);
    border-bottom: none;
    border-top-left-radius: calc((var(--brds) / 2) + 2px);
    border-top-right-radius: calc((var(--brds) / 2) + 2px);
    overflow: hidden !important;
}

.npf_row:not(:has(+ .npf_row)) {
    border-bottom: 1px solid var(--pbdr);
    border-bottom-left-radius: calc((var(--brds) / 2) + 2px);
    border-bottom-right-radius: calc((var(--brds) / 2) + 2px);
}

.npf_row:has(+ .npf_row) {
    padding-bottom: 4px;
}

.npf_row + .npf_row {
    border-top: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.post-content div.npf_row+div.npf_row, .post-content div.npf_row+figure.tmblr-full, .post div.npf_row+div.npf_row, .post div.npf_row+figure.tmblr-full, body div.npf_row+div.npf_row, body div.npf_row+figure.tmblr-full {
    margin-top: 0;
}

@supports (-moz-appearance:none) { 
    .npf_row {
		max-width: 100% !important;
        border: none !important;
        border-radius: 0 !important;
    }
    .post-content div.npf_row+div.npf_row, .post-content div.npf_row+figure.tmblr-full, .post div.npf_row+div.npf_row, .post div.npf_row+figure.tmblr-full, body div.npf_row+div.npf_row, body div.npf_row+figure.tmblr-full {
        margin-top: 4px;
    }
}

/* ---------- QUOTE POSTS ---------- */

.quote {
    margin: 20px;
	font-family: var(--ft);
    line-height: 1.4;
    word-break: break-word;
}

.quote.short {
    font-size: 2.125rem;
}

.quote.medium {
    font-size: 1.5rem;
}

.quote.long {
    font-size: 1.4375rem;
}

p.npf_quote {
    margin: 1rem 0;
	font-family: var(--ft);
    font-size: 1.5rem !important;
	line-height: 1.4 !important;
}

.quote:before,
.npf_quote:before { 
    content: open-quote; 
    letter-spacing: 0.05em; 
}

.quote:after,
.npf_quote:after { 
    content: close-quote; 
}

.quote-source { 
    margin: 0 20px 20px;
}

.quote-source a {
    color: var(--act);
}

/* ---------- LINK POSTS ---------- */

a.link {
    background: var(--pbg2); 
    display: block;
    position: relative;
    border-bottom: 1px var(--pbdr) solid;
    margin-bottom: -1px;
}

.link-thumbnail { 
    position: relative; 
}

.link-thumbnail img { 
    width: 100% !important;
}

.link-thumbnail::after {
    background-image: -webkit-linear-gradient(rgba(0,0,0,0.4),transparent 50%);
    background-image: linear-gradient(rgba(0,0,0,0.4),transparent 50%);
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.link-text-wrapper { 
    padding: 20px; 
}

.link-host {
    font-weight: 700;
    font-size: 0.866667em;
    line-height: 1.2;
    margin-bottom: 15px;
}

.link-container.thumb .link-host {
    margin: 20px;
    color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

.link-title { 
    margin: 0; 
    font-weight: 700; 
    line-height: 1.16; 
}

.link-excerpt { 
    margin: 15px 0 0 0;  
    font-size: 0.866667em;
    line-height: 1.5; 
}

/* npf links */

div.npf-link-block {
	margin: 1em 0;
    border: 1px solid var(--pbdr);
    border-radius: calc((var(--brds) / 2) + 2px);
}

div.npf-link-block a {
    text-decoration: none;
}

div.npf-link-block .title {
    font-size: 1.75em;
	line-height: 140%;
    max-height: 5.8em;
}

div.npf-link-block.has-poster .title {
    text-align: center;
}

div.npf-link-block.no-poster .title {
    padding: 20px 20px 0;
}

div.npf-link-block .bottom {
    padding: 16px 20px;
	line-height: 1em;
}

div.npf-link-block .bottom .site-name {
    margin-top: 0;
    font-size: 0.866667em;
	color: var(--pgray);
	line-height: 140%;
}

div.npf-link-block .bottom .description {
    margin-bottom: 15px;
	font-size: 1em;
	line-height: 140%;
    max-height: 2.8em;
}

/* ---------- CHAT POSTS ---------- */

.chat { 
    margin: calc(20px - 0.5em) 20px;
    font-family: Courier, monospace;
}

.chat-line { 
    padding: 0.5em 0; 
}

.chat-label { 
    font-weight: 700; 
    margin-right: 5px; 
}

/* ---------- AUDIO POSTS ---------- */

.audio_player {
	width: 100%;
	cursor: pointer;
	margin-bottom: 20px;
}

.seek-art {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
    overflow: hidden;
    margin: 20px 20px 0;
}

.audio_player .seekbar {
    flex-grow: 1;
    background: var(--pbg2);
    height: 100px;
    border-radius: calc((var(--brds) / 2) + 2px);
    overflow: hidden;
}

.audio_player.album_art .seekbar {
    margin-right: 20px;
}

.audio_player .seekbar_progress {
	background: rgba(0,0,0,0.05);
	height: 100%;
	width: 0;
}

body.dim .audio_player .seekbar_progress,
body.lights .audio_player .seekbar_progress,
body.dark .audio_player .seekbar_progress,
body.accent2 .audio_player .seekbar_progress {
	background: rgba(255,255,255,0.1);
}

.seek-art img {     
    height: 100px;
    width: 100px;
    cursor: default;
    float: left;
    border-radius: calc((var(--brds) / 2) + 2px);
}

.audio_buttons {
    position: absolute;
    display: block;
    font-size: 32px;
    text-align: center;
    width: 30px;
    height: 30px;
    margin-top: -65px;
    margin-left: 40px;
}

.play_button .playbtn:before,
.pause_button .pausebtn:before { 
    display: block; 
    line-height: 30px !important; 
    font: var(--fa-font-regular);
}

.play_button .playbtn:before { 
    content: "\f04b"; 
}

.pause_button .pausebtn:before { 
    content: "\f04c"; 
}

.audio_info {
    position: absolute;
    height: 42px;
    font-size: var(--fsz);
    line-height: 21px;
    margin-top: -71px;
    margin-left: 90px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    pointer-events: none;
    user-select: none;
    max-width: calc(var(--psz) - 112px);
}

.audio_player.album_art .audio_info {
    max-width: calc(var(--psz) - 232px);
}

.audio_info > div {
    max-height: 21px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
}

.tmblr-full audio {
    width: 100%;
}

iframe.spotify_audio_player {
    height: 152px;
    max-width: 100%;
}

/* ---------- ANSWER POSTS ---------- */

#answer { 
    margin-top: 20px; 
}

.ask-content {
    position: relative;
    background: var(--pbg2);
    margin: 20px 20px 20px 88px;
    padding: 20px;
    border-radius: calc((var(--brds) / 2) + 2px);
}

div.ask-body > *,
div.ask-content > *:not(div.ask-body) {
    margin-bottom: 0;
}

div.ask-body > figure {
    margin-top: 1em;
}

div.post-reblog-item > p:empty,
div.ask-content > p:empty {
    display: none;
}

p.asker { 
    color: var(--pgray); 
    margin-bottom: 1em !important;
    font-size: 0.866667em;
    margin-top: 0; 
}

.ask-content:before {
    content: '';
    position: absolute;
    top: 15px;
    height: 0;
    width: 0;
    border: 10px solid transparent;
}

img.ask-avatar {
    float: left;
    top: 0;
    margin: 0 0 0 20px;
    border-radius: 100%;
    width: 48px;
    height: 48px;
}

.post-answer .post-reblog-list > .post-reblog-item:first-child {
    border-top: 1px var(--pbdr) solid;
    margin-top: 20px;
    padding-top: 20px;
}

/* questions */

#question .ask-content:before {
    left: -20px;
    border-right-color: var(--pbg2);
}

/* answers */

#answer .ask-content {
    margin: 20px 88px 20px 20px;
}

#answer .ask-content:before {
    right: -20px;
    border-left-color: var(--pbg2);
}

#answer img.ask-avatar {
    float: right;
    margin: 0 20px 0 0;
}

/* ---------- POST FOOTER ---------- */

.post-tags {
    margin: 20px 20px 10px;
}

a.post-tag {
    display: inline-block;
    color: var(--pgray);
    border: 1px var(--pbdr) solid;
    font-size: 0.866667em;
    line-height: 1.23077;
    padding: 4px 6px;
    border-radius: calc((var(--brds) / 2) + 2px);
    margin: 0 6px 10px 0;
    background: var(--pbg);
}

a.post-tag:hover {
    background: var(--pbg2);
}

.post-footer {
    margin: 0;
    padding: 12px;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    border-top: 1px var(--pbdr) solid;
}

.post-footer a {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    font-size: 0.866667em;
    cursor: pointer;
    line-height: 0;
    margin-left: 10px;
}

.post-footer a, .post-footer a span, .post-footer a i {
    color: var(--pgray);
}

.post-footer .footer-left a {
    margin-left: 0;
}

.post-footer .footer-right {
    display: flex;
    flex-flow: row nowrap;
}

.post-footer a i,
.post-footer a.like-button .like_button::before {
    line-height: 1em;
    font-size: 1.25rem;
    padding: 8px;
    border-radius: 100%;
    background: transparent;
    margin-right: 4px;
}

.post-footer a:hover, .post-footer a:hover span {
    color: rgb(28,155,240);
}

.post-footer a:hover i {
    color: rgb(28,155,240);
    background: rgba(28,155,240,0.1);
}

.post-footer a.reblog-button:hover i {
    color: rgb(0,186,124);
    background: rgba(0,186,124,0.1);
}

.post-footer a.like-button {
    margin-top: 8px;
}

.post-footer a.like-button .like_button iframe {
    display: block;
    height: calc(1.25rem + 16px);
    width: calc(1.25rem + 16px);
    margin-top: calc((1.25rem + 8px) * -1);
    opacity: 0;
}

.post-footer a.like-button .like_button::before {
    content: "\e012";
    color: var(--pgray);
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.post-footer a.like-button:hover .like_button::before {
    color: rgb(254,24,129);
    background: rgba(254,24,129,0.1);
}

.post-footer a.like-button .like_button.liked::before { 
    content: "\e013";
    color: rgb(254,24,129);
}

/* ---------- PERMALINK NOTES CONTAINER ---------- */

article.notes-container {
    overflow: hidden;
    background: var(--pbg2);
}

article.notes-container ol.notes {
    list-style-type: none;
    padding-inline-start: 0;
    margin-block-start: 0;
    margin-block-end: 0;
    padding: 7px 0;
    font-size: 0.866667em;
    color: var(--pgray);
}

article.notes-container ol.notes img.avatar {
    height: 25px;
    width: 25px;
    border-radius: 100%;
}

ol.notes a.avatar_frame {
    display: block;
    float: left;
    margin: -2px 12px 0 0;
}

ol.notes li {
    margin: 0;
    padding: 16px 20px;
}

ol.notes .note a {
    font-weight: 700;
}

.reblog-list .post-reblog-header .post-avatar.sub-icon-reblog:after, 
.reblog:not(.original_post) .avatar_frame:after,
.like .avatar_frame:after {
    float: right;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    color: #fff;
    position: absolute;
    margin-top: 17px;
    margin-left: -8px;
    text-align: center;
    font-size: 7px;
    line-height: 13px;
}

.reblog-list .post-reblog-header .post-avatar.sub-icon-reblog:after, 
.reblog:not(.original_post) .avatar_frame:after {
    content: "\e033";
    background-color: rgb(0,186,124);
}

.like .avatar_frame:after {
    content: "\e013";
    background-color: rgb(254,24,129);
}

ol.notes blockquote {
    border-left: 2px solid var(--pbdr);
    font-size: inherit;
    line-height: 1.4;
    margin: 5px 15px 0 40px;
    quotes: none;
    padding: 0 0 0 10px;
}

ol.notes .note blockquote a {
    font-weight: 400;
    color: var(--med);
}

/* ---------- PAGINATION ---------- */

.pagination {
    margin: 0 0 30px 0;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
}

.pagination a {
    display: inline-block;
    padding: 8px 17px;
    border-radius: 50px;
    background: var(--act);
    color: #ffffff;
    font-weight: 700;
    line-height: 20px;
}

.prev:not(:link), 
.next:not(:link) {
    visibility: hidden;
}

.prev::before,
.next::after {
    display: inline-block;
    content: "\e01d";
    font-size: 0.866667em;
}

.prev::before {
    margin-right: 5px;
}

.next::after {
    transform: rotate(180deg);
    margin-left: 5px;
}

/* endless scroll */

section#posts[aria-busy="true"]::after {
    display: inline-block;
    width: 100%;
    text-align: center;
    margin-bottom: 30px;
    color: var(--gray);
    font-weight: 700;
}

body.endless-scroll .pagination {
    display: none;
}

/* ---------- TUMBLR TOP BAR / IFRAME ---------- */

.tmblr-iframe-compact .tmblr-iframe--unified-controls {
    width: 100% !important;
}

.iframe-controls--phone-mobile,
.tmblr-iframe--app-cta-button,
.tmblr-iframe:not(#new-tumblr-controls) {
    visibility: hidden !important;
    display: none !important;
}

.iframe-container {
    z-index: 10;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 54px;
    background: var(--bg);
    border-bottom: 1px var(--bdr) solid;
}

iframe#new-tumblr-controls {
    left: calc(50% - ((var(--psz) + var(--sbw) + var(--nw) + 32px) / 2));;
    width: calc(var(--psz) + var(--sbw) + var(--nw) + 42px) !important;
    position: fixed;
    top: 0;
    height: 54px;
    z-index: 10;
    opacity: 1;
    pointer-events: initial;
}

.tmblr-iframe-pushdown {
    padding-top: 0 !important;
}