@import "./marx.css"; :root { --blue-link: rgb(18, 113, 219); --link-shadow: 1px 1px 1px #000; --white-link-shadow: 1px 1px 1px #fff; --shadow: 2px 2px 2px #000; --title-overlay: rgba(0, 0, 0, 0.45); --title-overlay-fallback: #000; --text-color: #ffffff; --normal-padding: 0.25em 0.125em; --link-hover-color: #7d12db; --edit-link-hover-color: #db7d12; --edit-link-color: #12db18; --radius: 5px; } template, [hidden="hidden"], .media[hidden] { display: none } body { margin: 0.5em; } button { background: rgba(255, 255, 255, 0.65); margin: 0; } table { /* min-width: 85%; */ margin: 0 auto; } td { padding: 1em; padding: 1rem; } thead td, thead th { padding: 0.5em; padding: 0.5rem; } input[type=number] { width: 4em; } tbody > tr:nth-child(odd) { background: #ddd; } a:hover, a:active { color: var(--link-hover-color) } /* ----------------------------------------------------------------------------- Utility classes ------------------------------------------------------------------------------*/ .bracketed { color: var(--edit-link-color); } .bracketed, #main-nav a { text-shadow: var(--link-shadow); } .bracketed:before { content: '[\00a0' } .bracketed:after { content: '\00a0]' } .bracketed:hover, .bracketed:active { color: var(--edit-link-hover-color) } .grow-1 { flex-grow: 1 } .flex-wrap { flex-wrap: wrap } .flex-no-wrap { flex-wrap: nowrap } .flex-align-end { align-items: flex-end } .flex-align-space-around { align-content: space-around } .flex-justify-space-around { justify-content: space-around } .flex-self-center { align-self: center } .flex { display: flex } .small-font { font-size: 1.6rem; } .justify { text-align: justify } .align_center { text-align: center !important } .align_left { text-align: left !important } .align_right { text-align: right !important } .valign_top { vertical-align: top } .no_border { border: none } .media-wrap { text-align: center; margin: 0 auto; position: relative; } .danger { background-color: #ff4136; border-color: #924949; color: #fff; } .danger:hover, .danger:active { background-color: #924949; border-color: #ff4136; color: #fff; } .user-btn { border-color: var(--edit-link-color); color: var(--edit-link-color); text-shadow: var(--link-shadow); padding: 0 0.5em; padding: 0 0.5rem; } .user-btn:hover, .user-btn:active { border-color: var(--edit-link-hover-color); background-color: var(--edit-link-hover-color); } .full_width { width: 100%; } /* ----------------------------------------------------------------------------- Main Nav ------------------------------------------------------------------------------*/ #main-nav { font-family: var(--default-font-list); margin: 2em 0 1.6em; margin: 2rem 0 1.6rem; border-bottom: .1rem solid rgba(0, 0, 0, 0.2); font-size: 3.6em; font-size: 3.6rem; font-style: normal; font-weight: 500; } /* ----------------------------------------------------------------------------- CSS loading icon ------------------------------------------------------------------------------*/ .cssload-loader { position: relative; left: calc(50% - 31px); width: 62px; height: 62px; border-radius: 50%; perspective: 780px; } .cssload-inner { position: absolute; width: 100%; height: 100%; box-sizing: border-box; border-radius: 50%; } .cssload-inner.cssload-one { left: 0%; top: 0%; animation: cssload-rotate-one 1.15s linear infinite; border-bottom: 3px solid rgb(0, 0, 0); } .cssload-inner.cssload-two { right: 0%; top: 0%; animation: cssload-rotate-two 1.15s linear infinite; border-right: 3px solid rgb(0, 0, 0); } .cssload-inner.cssload-three { right: 0%; bottom: 0%; animation: cssload-rotate-three 1.15s linear infinite; border-top: 3px solid rgb(0, 0, 0); } @keyframes cssload-rotate-one { 0% { transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg); } 100% { transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg); } } @keyframes cssload-rotate-two { 0% { transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg); } 100% { transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg); } } @keyframes cssload-rotate-three { 0% { transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg); } 100% { transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg); } } /* ----------------------------------------------------------------------------- Table sorting and form styles ------------------------------------------------------------------------------*/ .sorting, .sorting_asc, .sorting_desc { vertical-align: text-bottom; } .sorting::before { content: " ↕\00a0"; } .sorting_asc::before { content: " ↑\00a0"; } .sorting_desc::before { content: " ↓\00a0"; } .form { /* width: 100%; */ } .form thead th, .form thead tr { background: inherit; border: 0; } .form tr > td:nth-child(odd) { text-align: right; min-width: 25px; max-width: 30%; } .form tr > td:nth-child(even) { text-align: left; /* width: 70%; */ } .invisible tbody > tr:nth-child(odd) { background: inherit; } .invisible tr, .invisible td, .invisible th { border: 0; } /* ----------------------------------------------------------------------------- Message boxes ------------------------------------------------------------------------------*/ .message { position: relative; margin: 0.5em auto; padding: 0.5em; width: 95%; } .message .close { width: 1em; height: 1em; position: absolute; right: 0.5em; top: 0.5em; text-align: center; vertical-align: middle; line-height: 1em; } .message:hover .close:after { content: '☒'; } .message:hover { cursor: pointer; } .message .icon { left: 0.5em; top: 0.5em; margin-right: 1em; } .message.error { border: 1px solid #924949; background: #f3e6e6; } .message.error .icon::after { content: '✘'; } .message.success { border: 1px solid #1f8454; background: #70dda9; } .message.success .icon::after { content: '✔' } .message.info { border: 1px solid #bfbe3a; background: #FFFFCC; } .message.info .icon::after { content: '⚠'; } /* ----------------------------------------------------------------------------- Base list styles ------------------------------------------------------------------------------*/ .media, .character, .small_character { position: relative; vertical-align: top; display: inline-block; text-align: center; width: 220px; height: 311px; margin: var(--normal-padding); z-index: 0; } .media > img, .character > img, .small_character > img { width: 100%; } .media .edit_buttons > button { margin: 0.5em auto; } .name, .media_metadata > div, .medium_metadata > div, .row { text-shadow: var(--shadow); color: var(--text-color); padding: var(--normal-padding); text-align: right; z-index: 2; } .media_type, .age_rating { text-align: left; } .media > .media_metadata { position: absolute; bottom: 0; right: 0; } .media > .medium_metadata { position: absolute; bottom: 0; left: 0; } .media > .name { position: absolute; top: 0; } .media > .name a { transition: none; } .media .name a::before { /* background: var(--title-overlay-fallback); background: var(--title-overlay); */ content: ''; display: block; height: 311px; left: 0; position: absolute; top: 0; width: 220px; z-index: -1; /* Put the pseudo-element behind its parent */ } .media-list .media:hover .name a::before { /* transition: .25s ease; */ background: rgba(0, 0, 0, 0.75); } .media > .name span.canonical { font-weight: bold; } .media > .name small { font-weight: normal; } .media:hover .name { background: rgba(0, 0, 0, 0.75); } .media-list .media > .name a:hover, .media-list .media > .name a:hover small { color: var(--blue-link); } .media:hover > button[hidden], .media:hover > .edit_buttons[hidden] { transition: .25s ease; display: block; } .media:hover { transition: .25s ease; } .small_character > .name a, .small_character > .name a small, .character > .name a, .character > .name a small, .media > .name a, .media > .name a small { background: none; color: #fff; text-shadow: var(--shadow); } /* ----------------------------------------------------------------------------- Anime-list-specific styles ------------------------------------------------------------------------------*/ .anime .name, .manga .name { background: var(--title-overlay-fallback); background: var(--title-overlay); text-align: center; width: 100%; padding: 0.5em 0.25em; } .anime .media_type, .anime .airing_status, .anime .user_rating, .anime .completion, .anime .age_rating, .anime .edit, .anime .delete { background: none; text-align: center; } .anime .table, .manga .table { position: absolute; bottom: 0; left: 0; width: 100%; } .anime .row, .manga .row { width: 100%; display: flex; align-content: space-around; justify-content: space-around; text-align: center; padding: 0 inherit; } .anime .row > span, .manga .row > span { text-align: left; z-index: 2; } .anime .row > div, .manga .row > div { font-size: 0.8em; display: flex-item; align-self: center; text-align: center; vertical-align: middle; z-index: 2; } .anime .media > button.plus_one { border-color: hsla(0, 0%, 100%, .65); position: absolute; top: 138px; top: calc(50% - 21.5px); left: 44px; left: calc(50% - 66.5px); z-index: 50; } .anime .media > button.plus_one:hover { color: hsla(0, 0%, 100%, .65); background: #888; } .anime .media > button.plus_one:active { background: #444; } /* ----------------------------------------------------------------------------- Manga-list-specific styles ------------------------------------------------------------------------------*/ .manga .row { padding: 1px; } .manga .media { /* border: 1px solid #ddd; */ height: 310px; margin: 0.25em; } .manga .media > .edit_buttons { position: absolute; top: 86px; /* top: calc(50% - 58.5px); */ top: calc(50% - 22.4px); left: 43.5px; left: calc(50% - 66.5px); z-index: 40; } .manga .media > .edit_buttons button { border-color: hsla(0, 0%, 100%, .65); } .manga .media > .edit_buttons:hover button { color: hsla(0, 0%, 100%, .65); background: #888; } .manga .media > .edit_buttons button:active { background: #444; } /* ----------------------------------------------------------------------------- Search page styles ------------------------------------------------------------------------------*/ .media.search > .name { background-color: #555; background-color: rgba(000, 000, 000, 0.35); background-size: cover; background-size: contain; background-repeat: no-repeat; } .big-check { display: none; } .big-check:checked + label { transition: .25s ease; background: rgba(0, 0, 0, 0.75); } .big-check:checked + label:after { content: '✓'; font-size: 15em; font-size: 15rem; text-align: center; color: greenyellow; position: absolute; top: 147px; left: 0; height: 100%; width: 100%; z-index: 5; } #series_list article.media { position: relative; } #series_list .name, #series_list .name label { position: absolute; display: block; top: 0; left: 0; height: 100%; width: 100%; vertical-align: middle; line-height: 1.25em; } #series_list .name small { color: #fff; } /* ---------------------------------------------------------------------------- Details page styles -----------------------------------------------------------------------------*/ .details { margin: 1.5rem auto 0 auto; padding: 1rem; font-size: inherit; } .description { max-width: 80rem; } .fixed { max-width: 93rem; } .details .cover { display: block; width: 284px; /* height: 402px; */ } .details h2 { margin-top: 0; } .details .flex > div { margin: 1rem; } .details .media_details { max-width: 300px; } .details .media_details td { padding: 0 1.5rem; } .details p { text-align: justify; } .details .media_details td:nth-child(odd) { width: 1%; white-space: nowrap; text-align: right; } .details .media_details td:nth-child(even) { text-align: left; } .character, .small_character { /* background: rgba(0,0,0,0.5); */ width: 225px; height: 350px; vertical-align: middle; white-space: nowrap; } .character:hover .name, .small_character:hover .name { background: rgba(0, 0, 0, 0.8); } .small_character a { display: inline-block; width: 100%; height: 100%; } .small_character .name, .character .name { position: absolute; bottom: 0; left: 0; z-index: 10; } .small_character img, .character img { position: relative; top: 50%; transform: translateY(-50%); z-index: 5; width: 100%; } .min-table { min-width: 0; margin-left: 0; } /* ---------------------------------------------------------------------------- User page styles -----------------------------------------------------------------------------*/ .small_character { width: 160px; height: 250px; } .user-page .media-wrap { text-align: left; } .media a { display: inline-block; width: 100%; height: 100%; } /* ---------------------------------------------------------------------------- Viewport-based styles -----------------------------------------------------------------------------*/ @media screen and (max-width: 40em) { nav a { line-height: 4em; line-height: 4rem; } .media { margin: 2px 0; } main { padding: 0 0, 5em 0.5em; padding: 0 0.5rem 0.5rem; } } /* ---------------------------------------------------------------------------- Images / Logos -----------------------------------------------------------------------------*/ .streaming-logo { width: 50px; height: 50px; vertical-align: middle; } .cover_streaming_link { display:none; } .media:hover .cover_streaming_link { display: block; } .cover_streaming_link .streaming-logo { width: 20px; height: 20px; -webkit-filter: drop-shadow(0 -1px 4px #fff); filter: drop-shadow(0 -1px 4px #fff); } /* ---------------------------------------------------------------------------- Loading overlay -----------------------------------------------------------------------------*/ #loading-shadow { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.8); z-index: 500; } #loading-shadow .loading-wrapper { position: fixed; z-index: 501; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; } #loading-shadow .loading-content { position: relative; color: #fff } .loading-content .cssload-inner.cssload-one, .loading-content .cssload-inner.cssload-two, .loading-content .cssload-inner.cssload-three { border-color: #fff } /* ---------------------------------------------------------------------------- CSS Tabs -----------------------------------------------------------------------------*/ .tabs { display: flex; flex-wrap: wrap; background: #efefef; box-shadow: 0 48px 80px -32px rgba(0, 0, 0, 0.3); margin-top: 1.5em; } .tabs label { border: 1px solid #e5e5e5; width: 100%; padding: 20px 30px; background: #e5e5e5; cursor: pointer; font-weight: bold; font-size: 18px; color: #7f7f7f; transition: background 0.1s, color 0.1s; /* margin-left: 4em; */ } .tabs label:hover { background: #d8d8d8; } .tabs label:active { background: #ccc; } .tabs [type=radio]:focus + label { box-shadow: inset 0px 0px 0px 3px #2aa1c0; z-index: 1; } .tabs [type=radio] { position: absolute; opacity: 0; } .tabs [type=radio]:checked + label { border-bottom: 1px solid #fff; background: #fff; color: #000; } .tabs [type=radio]:checked + label + .content { border: 1px solid #e5e5e5; border-top: 0; display: block; padding: 20px 30px 30px; background: #fff; width: 100%; } .tabs .content { display: none; } @media (min-width: 600px) { .tabs label { width: auto; } .tabs .content { order: 99; } }