/* misc */
.clear {
	clear: both;
}
a, a:visited, a:link {
	text-decoration: none;
}

/* general */
.content {
  width: 960px;
  margin: auto;
  margin-top: 20px;
  font-family: 'Helvetica Neue';
}
.navbar {
	width: 100%;
	height: 80px;
}

/*  */
.brand-logo {
	background-color: black;
	color: white;
	font-family: Times;
	font-style: italic;
	text-decoration: none;
	text-rendering: optimizelegibility;
	text-shadow: black 0 1px 3px, black 0 0 30px;
}
.brand-logo.big {
	cursor: default;
	width: 400px;
	padding: 10px 20px 20px 20px;
	font-size: 128px;
	font-weight: 600;
	margin: auto;
	margin-top: 25px;
	margin-bottom: 25px;
	text-align: center;
}
.brand-logo.small {
	font-size: 42px;
	padding: 8px 20px 10px 170px;
	margin-left: -160px;
	float: left;
    box-shadow: 3px 3px 0px rgba(50, 50, 50, 0.8);
}
.brand-logo.tagline {
	background-color: #fff;
	font-size: 42px;	
	text-align: center;
	margin-bottom: 25px;
	text-shadow: black 0 1px 3px, black 0 0 3px;
}
.user-div {
	text-align: right;
}
/** image page only **/
.image {
	display: table;
	margin: 0 auto;
}
.brand-button {
	color: white;
    text-shadow: 1px 1px 1px rgba(0,0,0,.5);
	text-decoration: none;
	cursor: pointer;
	display: block;
}
.brand-button.small {
	font-size: 26px;
	padding: 17px;
	float: right;
}
.brand-button.big {
	font-size: 32px;
	padding: 20px;
	width: 350px;
	margin: auto;
	text-align: center;
	margin-bottom: 15px;
}
.user {
	background-color: #b33;
    box-shadow: -3px 3px 0px rgba(50, 0, 0, 0.8);
}
.fb {
	background-color: rgb(55, 74, 147);
    box-shadow: 0px 6px 0 -3px rgba(0, 0, 50, 0.8);
}
.upload {
	background-color: #383;
}
.browse {
	background-color: #383;
    box-shadow: 0px 6px 0 -3px rgba(0, 50, 0, 0.8);
}

/** browse page specific **/
.fitmark-div {
	text-align: center;
	display: table;
	margin: 0 auto;
	margin-bottom: 12px;
}
.fitmark-main {
	background-color: #b00;
	font-size: 28px;
	padding: 8px 12px;
}
a.fitmark-name, a.fitmark-name:visited, a.fitmark-name:link {
	color: #eee;
}
a.fitmark-name {
	color: #eee;
	text-decoration: none;
	display: table;
	margin: 0 auto;
	padding:  3px 6px;
}
.fitmark-meta {
	background-color: #a00;
	color: #ddd;
	font-size: 14px;
	padding: 6px;
	display: table;
	margin: 0 auto;
}
.fitmark-user {
	padding-right: 6px;
}
.fitmark-title, h1.fitmark-author {
	background-color: #b00;
	font-size: 28px;
	color: #eee;
	display: table;
	padding: 10px 16px;
}
/* To avoid overriding rules form above. Seriuosly css, wtf? why can't i have real inheritance instead of this weird override stuff? */
.fitmark-author {
    direction: rtl;
	margin-top: -2px; /* hacky! */
}
h1.fitmark-author {
}
button {
	border: none;
}
#target {
    text-align: center;
	font-size: 32px;
	padding: 40px;
	width: 350px;
	margin: auto;
	margin-top: 25px;
    border: 1px solid black;
    text-shadow: 1px 1px 1px rgba(0,0,0,.5);
    box-shadow: inset 0 0 6px rgba(0,0,50,.8);
}
.drag {
    color: white;
	background-color: #b33;
    box-shadow: inset 0 0 6px rgba(50,0,0,.8);
}
.thumb {
    height: 64px;
    display: inline-block;
}
input.name {
	font-size: 26px;
	border: solid 1px black;
	padding: 4px 12px 4px 12px;
    display: inline-block;
    vertical-align: top;
    margin-left: 10px;
    margin-right: 10px;
    height: 54px;
    width: 350px;
}
input.name::-webkit-input-placeholder {
    font-style: italic;
}
.input[disabled] {
    cursor: default;
}
form {
	margin-top: 25px;
}
.upload-wrapper {
    text-align: center;
    margin-bottom: 25px;
}
.brand-button.small.upload {
    display: inline-block;
    vertical-align: top;
    float: none;
    margin: 0px;
}
.link {
    background-color: black;
    color: white;
    font-size: 20px;
    padding: 12px;
    opacity: 0.999; /* hackety: http://stackoverflow.com/q/2837057/24391 */
}
.fail {
	background-color: #b33;
}
.success {
	background-color: #383;
}

/* Homepage image browser */
.home-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 18px 0 26px;
}
.home-logo {
    font-family: Times, serif;
    font-size: 42px;
    font-style: italic;
    font-weight: 700;
}
.wordmark {
    align-items: stretch;
    display: inline-flex;
    line-height: 1;
    overflow: hidden;
}
.wordmark-fit,
.wordmark-mark {
    display: inline-block;
    padding: .18em .25em .22em;
}
.wordmark-fit {
    background: #fff;
    color: #111;
}
.wordmark-mark {
    background: #111;
    color: #fff;
}
.brand-logo.wordmark {
    background: transparent;
    box-shadow: none;
    color: inherit;
    margin-left: 0;
    padding: 0;
    text-shadow: none;
}
.account-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}
.account-actions form { margin: 0; }
.account-name {
    color: #666;
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.account-link, a.account-link {
    appearance: none;
    background: transparent;
    border: 1px solid #d7d7d7;
    border-radius: 999px;
    color: #171717;
    cursor: pointer;
    display: inline-block;
    font: inherit;
    padding: 10px 16px;
}
.account-link.primary, a.account-link.primary {
    background: #111;
    border-color: #111;
    color: white;
}
.image-browser { padding-bottom: 60px; }
.browser-heading {
    align-items: end;
    display: flex;
    justify-content: space-between;
    margin: 28px 0 22px;
}
.browser-heading h1 {
    font-size: clamp(36px, 6vw, 66px);
    letter-spacing: -0.045em;
    line-height: .95;
    margin: 6px 0 0;
}
.eyebrow {
    color: #777;
    font-size: 13px;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.upload-shortcut { color: #111; text-decoration: underline; }
.image-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.image-card {
    background: #f3f2ef;
    border-radius: 14px;
    color: #111;
    display: block;
    overflow: hidden;
}
.image-card img {
    aspect-ratio: 4 / 5;
    display: block;
    object-fit: cover;
    width: 100%;
}
.image-card-copy { padding: 13px 14px 15px; }
.image-card-copy h2 { font-size: 18px; margin: 0 0 5px; }
.image-card-copy p { color: #777; margin: 0; }
.empty-browser {
    background: #f3f2ef;
    border-radius: 14px;
    padding: 70px 24px;
    text-align: center;
}
.empty-browser h2 { font-size: 28px; margin: 0 0 8px; }
.empty-browser p { color: #777; margin: 0; }
.upload-panel {
    border-top: 1px solid #ddd;
    margin-top: 48px;
    padding-top: 30px;
}
.upload-panel h2 { font-size: 30px; margin: 0 0 8px; }
.upload-panel p { color: #666; }
@media (max-width: 760px) {
    .content { box-sizing: border-box; margin-top: 0; padding: 0 16px; width: 100%; }
    .home-header { align-items: flex-start; }
    .account-actions { flex-wrap: wrap; gap: 7px; }
    .account-name { display: none; }
    .image-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .browser-heading { align-items: flex-start; flex-direction: column; gap: 16px; }
}
@media (max-width: 460px) {
    .home-logo { font-size: 34px; }
    .account-link, a.account-link { padding: 8px 12px; }
    .image-grid { grid-template-columns: 1fr; }
}
