/* * Browsers: >0.3%,last 4 version */ /* overall */ :root { --max-0: #000000; --max-1: #ffffff; --background: #181a1b; --accent-0: #c8beb5; --accent-1: #f18d74; --accent-2: #e3beb3; --subtitle: #aca4a0; --title-background: #00000075; --text-background: #000000cc; --text-highlight: #3c362e; --blog-box: #2b2f32; --blog-box-alt: #242627; --load-0: #abb5ba61; --load-1: #4a525761; } * { -webkit-box-sizing: border-box; box-sizing: border-box; } *::-moz-selection { background-color: var(--accent-0); color: var(--max-0); } *::selection { background-color: var(--accent-0); color: var(--max-0); } @font-face { font-family: "Redaction"; src: url("./res/asset-font-Redaction-Regular.woff2") format("woff2"); font-display: swap; } @font-face { font-family: "mono"; src: url("./res/asset-font-Inconsolata.woff2") format("woff2"); font-display: swap; } @font-face { font-family: "syne"; src: url("./res/asset-font-SyneMono-Regular.woff2") format("woff2"); font-display: swap; } body { margin: 0; margin-bottom: 45px; padding: 0; background-color: var(--background); color: var(--accent-0); font-family: "Redaction", serif; } a { color: var(--accent-1); text-decoration: none; } a:hover { color: var(--max-1); } .load-enable img { -webkit-animation: load 2s ease-in-out infinite alternate; animation: load 2s ease-in-out infinite alternate; } @keyframes load { 0% { background-color: var(--load-0); } 100% { background-color: var(--load-1); } } button { border: none; color: var(--accent-1); background-color: transparent; text-align: center; } button:hover { cursor: pointer; color: var(--max-1); } #content-warnings { margin: 15px 0; padding: 2px; background-color: var(--accent-2); color: var(--background); font-family: "mono", monospace; text-align: center; } #content-warnings h1 { margin: 10px 0; font-size: 2rem; } #content-warnings ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; max-width: 1200px; margin: 16px auto; padding: 0; -webkit-box-pack: space-evenly; -ms-flex-pack: space-evenly; justify-content: space-evenly; list-style-type: none; } #content-warnings ul li { min-width: 30%; padding: 5px 10px; font-size: 1.2rem; } .cw-spacer { height: 500px; } .back { width: min(700px, 90%); margin: auto; font-size: 1.2rem; text-align: right; } /* Header */ /* Banner */ header { position: relative; margin-top: 18px; } #header-img-group-banner img { width: 100%; height: 70px; -o-object-fit: cover; object-fit: cover; } #header-img-group-logo img { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; height: 130px; width: 150px; -o-object-fit: contain; object-fit: contain; background-color: var(--background); z-index: 0; } /* NavList */ #navigation { width: 100%; margin: -25px auto 25px auto; } #navigation ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: space-evenly; -ms-flex-pack: space-evenly; justify-content: space-evenly; margin: 0; padding: 0; font-size: 1.375rem; } #navigation ul li { position: relative; padding: 2px 0; -ms-flex-wrap: wrap; flex-wrap: wrap; width: calc(100% / 5); -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; text-align: center; list-style: none; } #navigation #whitespace { width: calc(100% / 5); } #navigation li#here a { cursor: not-allowed; background-color: var(--accent-2); color: var(--background); text-decoration: line-through; } #navigation li#parent a { background-color: var(--accent-2); color: var(--background); } #navigation li#parent a::after { content: "*"; } #navigation li#parent a:hover { background-color: var(--max-1) !important; } #navigation li a { padding: 2px 10px; color: var(--accent-2); background-color: var(--max-0); } #navigation li:not(#here) a:hover { color: var(--background); background-color: var(--accent-2); } #arrow img { position: absolute; margin: 35px 0 0 -100px; width: 250px; } /* Socials */ #socials { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-pack: space-evenly; -ms-flex-pack: space-evenly; justify-content: space-evenly; } #socials img { width: 40px; margin: auto 10px; } #socials a { -webkit-transition: ease-in-out 100ms; -o-transition: ease-in-out 100ms; transition: ease-in-out 100ms; } #socials a:hover { -webkit-filter: drop-shadow(var(--accent-2) 2px 2px 0); filter: drop-shadow(var(--accent-2) 2px 2px 0); } .no { cursor: not-allowed; } .no img { -webkit-filter: brightness(20%); filter: brightness(20%); } .no:hover img { -webkit-filter: brightness(20%) !important; filter: brightness(20%) !important; } .highlight { background-color: var(--text-highlight); } /* ------------------------------------------------------ */ @media only screen and (max-width: 790px) { header { margin-top: 18px; } #navigation { margin: 5px auto; } #navigation ul li { min-width: 91px; margin: 10px auto; -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; -ms-flex-wrap: wrap; flex-wrap: wrap; } #header-img-group-banner img { height: 50px; } #header-img-group-logo img { height: 60px; width: 100px; } #whitespace, #arrow { display: none; } li#music:not(#here) a { -webkit-animation: nav-flash 1s ease-in-out infinite alternate; animation: nav-flash 1s ease-in-out infinite alternate; } } /* ---------- ANIMATIONS ---------- */ @-webkit-keyframes nav-flash { from { background-color: var(--max-0); color: var(--accent-2); } to { background-color: var(--accent-1); color: var(--background); } } @keyframes nav-flash { from { background-color: var(--max-0); color: var(--accent-2); } to { background-color: var(--accent-1); color: var(--background); } } @-webkit-keyframes load { from { background-color: var(--load-0); } to { background-color: var(--load-1); } } @keyframes load { from { background-color: var(--load-0); } to { background-color: var(--load-1); } } /* --------------------------- */ footer#free { position: fixed; display: inline; max-width: min(90%, 180px); margin: auto; padding: 5px; bottom: 5px; left: 0; right: 0; text-align: center; background-color: var(--text-background); border-radius: 20px; z-index: 100; } /* index */ #hero { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: space-evenly; -ms-flex-pack: space-evenly; justify-content: space-evenly; text-align: center; font-family: "Syne", monospace; } #hero-headshot img { width: 100%; height: auto; aspect-ratio: 1/1; max-height: 700px; min-height: 360px; -o-object-fit: cover; object-fit: cover; } #hero-headshot p { margin: 0; color: var(--subtitle); font-size: 1.375rem; } #hero-headshot p span { text-wrap: nowrap; } #hero-headshot aside.quote { max-width: 700px; font-family: "mono", monospace; text-transform: none; } #hero-info { width: min(100%, 700px); margin: auto 0; } #hero-info p { margin: 30px 0; font-size: 1.375rem; } #hero-info h1 { color: var(--max-1); font-size: 2.188rem; } #hero-info b { color: var(--accent-2); } #hero-info p a { display: block; width: min(95%, 500px); margin: 20px auto; padding: 0 5px; -webkit-transition: 150ms ease-in-out; -o-transition: 150ms ease-in-out; transition: 150ms ease-in-out; } #hero-info p a:hover { background-color: var(--accent-0); color: var(--background); } #hero-info span { padding: 0 10px; background-color: var(--accent-0); color: var(--background); font-weight: bolder; text-wrap: nowrap; } #hero-info span:hover { background-color: var(--max-0); -webkit-transition: ease-in-out 100ms; -o-transition: ease-in-out 100ms; transition: ease-in-out 100ms; -webkit-animation: shake 2s linear alternate infinite; animation: shake 2s linear alternate infinite; } /* asset layouts */ .ly-sect { margin: 20px auto; } .ly-sect > h1 { position: relative; margin: 0 20%; padding: 3px 8px; font-size: 2rem; text-wrap: nowrap; } .ly-cont { display: -webkit-box; display: -ms-flexbox; display: flex; width: min(95%, 2000px); margin: auto; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: space-evenly; -ms-flex-pack: space-evenly; justify-content: space-evenly; } .ly-item { position: relative; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; margin: 10px; } .ly-item a h1 { color: var(--accent-2); } .ly-item a:hover h1 { background-color: var(--text-background); color: var(--max-1); } .ly-item h1 { padding: 2px; background-color: var(--title-background); -webkit-transition: ease-in-out 100ms; -o-transition: ease-in-out 100ms; transition: ease-in-out 100ms; } .ly-sect.ly-square > h1 { display: inline-block; margin: 20px 20% 0 20%; background-color: var(--max-0); color: var(--max-1); text-align: center; } .ly-sect.ly-square > h1:hover { background-color: var(--accent-2); color: var(--background); } .ly-sect.ly-square .h1-circle img { position: absolute; margin: auto; width: 200px; top: 0; bottom: 0; left: 0; right: 0; } .ly-item { margin-bottom: 30px; } .ly-item audio { width: 100%; } .ly-item.ly-square { width: min(95%, 350px); } .ly-item.ly-square h1 { position: absolute; margin: auto; top: 0; left: 0; right: 0; text-align: center; text-shadow: var(--background) 1px 1px 0; } .ly-item.ly-square img { width: 100%; aspect-ratio: 1/1; -o-object-fit: cover; object-fit: cover; } .ly-item.ly-rect { width: min(95%, 1000px); max-height: 160px; } .ly-item.ly-rect.ly-archive h1 { position: absolute; display: inline; margin: auto; padding: 2px 8px; bottom: 20px; left: 25px; font-size: 1.375rem; background-color: var(--text-background); -webkit-transition: ease-in-out 100ms; -o-transition: ease-in-out 100ms; transition: ease-in-out 100ms; z-index: 2; } .ly-item.ly-rect.ly-archive h2 { position: absolute; display: inline; margin: auto; padding: 5px 8px; top: 15px; right: 15px; font-size: 0.938rem; background-color: var(--text-background); color: var(--max-1); -webkit-transition: ease-in-out 100ms; -o-transition: ease-in-out 100ms; transition: ease-in-out 100ms; z-index: 2; } .ly-item.ly-rect.ly-dir h1 { margin-top: 2px; margin-bottom: 12px; background-color: transparent; text-shadow: 1px 1px 0 black; font-size: 1.625rem; -webkit-transition: ease-in-out 100ms; -o-transition: ease-in-out 100ms; transition: ease-in-out 100ms; z-index: 2; } .ly-item.ly-rect.ly-dir h2 { margin-top: 2px; margin-bottom: 12px; margin-left: 35px; background-color: transparent; text-shadow: 1px 1px 0 black; font-size: 1.313rem; -webkit-transition: ease-in-out 100ms; -o-transition: ease-in-out 100ms; transition: ease-in-out 100ms; z-index: 2; } .ly-item.ly-rect a:hover h1, .ly-item.ly-rect a:hover h2 { background-color: var(--accent-2); color: var(--background); } .ly-item.ly-rect a:hover img { -webkit-filter: drop-shadow(var(--max-0) 5px 5px 5px); filter: drop-shadow(var(--max-0) 5px 5px 5px); } .ly-item.ly-rect img { width: 100%; max-height: 160px; min-height: 160px; aspect-ratio: 5/1; -o-object-fit: cover; object-fit: cover; -webkit-transition: ease-in-out 200ms; -o-transition: ease-in-out 200ms; transition: ease-in-out 200ms; } /* Directory List Pages */ .list { width: min(95%, 850px); margin: auto; padding: 10px 2px; font-family: "mono"; } .list li { padding: 2px 0; font-size: 1.375rem; } .list ul, .list ol { margin-top: 2px; border-left: solid 2px var(--accent-2); } .list > h2 { margin: auto; margin-left: 2%; font-family: "mono", monospace; } .list h3 { margin-bottom: 5px; } .list-entity { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; } .list-entity picture img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; -o-object-position: center; object-position: center; } .list-entity picture { width: min(250px, 100%); min-width: 100px; } .list-entity .list-entity-info { width: 100%; min-width: 250px; padding: 0 25px; } .list-entity-info hgroup h2, .list-entity-info hgroup h3 { margin: 5px 15px; } /* animations */ @-webkit-keyframes shake { 0% { text-shadow: #7eddcda5 1px 1px 1px, #d6d6d6a5 1px -1px; color: #d6d6d645; } 13% { text-shadow: #7eddcda5 1px -1px 1px, #d6d6d6a5 -1px 1px; color: #d6d6d6a5; } 15% { text-shadow: #7eddcda5 -1px 1px 1px, #d6d6d6a5 1px -1px; color: #d6d6d675; } 38% { text-shadow: #7eddcda5 1px -1px 1px, #d6d6d6a5 -1px 1px; color: #d6d6d6f5; } 50% { text-shadow: #7eddcda5 -1px -1px 1px, #d6d6d6a5 -1px 1px; color: #d6d6d685; } 63% { text-shadow: #7eddcda5 1px 1px 1px, #d6d6d6a5 1px -1px; color: #d6d6d6a5; } 75% { text-shadow: #7eddcda5 -1px -1px 1px, #d6d6d6a5 1px 0px; color: #d6d6d6e5; } 88% { text-shadow: #7eddcda5 1px 1px 1px, #d6d6d6a5 -1px 1px; color: #d6d6d665; } 100% { text-shadow: #7eddcda5 -1px 1px 1px, #d6d6d6a5 0px 1px; color: #d6d6d6d5; } } @keyframes shake { 0% { text-shadow: #7eddcda5 1px 1px 1px, #d6d6d6a5 1px -1px; color: #d6d6d645; } 13% { text-shadow: #7eddcda5 1px -1px 1px, #d6d6d6a5 -1px 1px; color: #d6d6d6a5; } 15% { text-shadow: #7eddcda5 -1px 1px 1px, #d6d6d6a5 1px -1px; color: #d6d6d675; } 38% { text-shadow: #7eddcda5 1px -1px 1px, #d6d6d6a5 -1px 1px; color: #d6d6d6f5; } 50% { text-shadow: #7eddcda5 -1px -1px 1px, #d6d6d6a5 -1px 1px; color: #d6d6d685; } 63% { text-shadow: #7eddcda5 1px 1px 1px, #d6d6d6a5 1px -1px; color: #d6d6d6a5; } 75% { text-shadow: #7eddcda5 -1px -1px 1px, #d6d6d6a5 1px 0px; color: #d6d6d6e5; } 88% { text-shadow: #7eddcda5 1px 1px 1px, #d6d6d6a5 -1px 1px; color: #d6d6d665; } 100% { text-shadow: #7eddcda5 -1px 1px 1px, #d6d6d6a5 0px 1px; color: #d6d6d6d5; } } /* Accessibility */ .skip-to-content { position: absolute; padding: 8px; margin: 0; left: 40px; -webkit-transform: translateY(-70px); -ms-transform: translateY(-70px); transform: translateY(-70px); -webkit-transition: -webkit-transform 0.2s; transition: -webkit-transform 0.2s; -o-transition: transform 0.2s; transition: transform 0.2s; transition: transform 0.2s, -webkit-transform 0.2s; background-color: var(--max-0); z-index: 1; } .skip-to-content:focus { -webkit-transform: translateY(0%); -ms-transform: translateY(0%); transform: translateY(0%); }