@font-face{font-family:'Open Sans';font-style:normal;font-weight:300;src:local('Open Sans Light'),local('OpenSans-Light'),url(../fonts/open-sans-v16-latin-300.woff2) format('woff2'),url(../fonts/open-sans-v16-latin-300.woff) format('woff')}@font-face{font-family:'Open Sans';font-style:italic;font-weight:300;src:local('Open Sans Light Italic'),local('OpenSans-LightItalic'),url(../fonts/open-sans-v16-latin-300italic.woff2) format('woff2'),url(../fonts/open-sans-v16-latin-300italic.woff) format('woff')}@font-face{font-family:'Open Sans';font-style:normal;font-weight:700;src:local('Open Sans Bold'),local('OpenSans-Bold'),url(../fonts/open-sans-v16-latin-700.woff2) format('woff2'),url(../fonts/open-sans-v16-latin-700.woff) format('woff')}@font-face{font-family:'Open Sans';font-style:italic;font-weight:700;src:local('Open Sans Bold Italic'),local('OpenSans-BoldItalic'),url(../fonts/open-sans-v16-latin-700italic.woff2) format('woff2'),url(../fonts/open-sans-v16-latin-700italic.woff) format('woff')} * { box-sizing:border-box; font-family: 'Open Sans', sans-serif; } :root { scroll-behavior: smooth; } html { background: #AAA no-repeat center center fixed; background-size: cover; background-image: url('/img/bg.jpg'); overflow-y:scroll; transition: background 0.5s; height:100%; overscroll-behavior: none; } body { margin: 0; backdrop-filter: blur(8px); min-height: 100%; } body, section { background: rgba(255,255,255,.5); } header, footer, section { padding: .5em 50px; width: 50vw; min-width:700px; margin: 0 auto; } header { padding: 0.5em 0; display: flex; flex-wrap: wrap; } footer { background: rgba(255,255,255,.8); font-size: .8em; } section { padding-bottom:50px; } h1 { font-weight: 400; font-size: 2em; line-height: .95; letter-spacing: 0.0625em; } h2 { border-top: 2px solid rgba(255,128,0,.2); border-image: linear-gradient(90deg, transparent, rgba(255,128,0,.4), transparent) 30; padding-top: 1.5em; font-weight: bold; font-size: 1.2em; margin: 1.5em 0 .5em; } h3 { font-weight: bold; font-size: 1em; margin: 1.2em 0 .5em; } h1 + h2 { border-top: none; padding-top: 0; } p { margin-top: .5em; } a { color: #F50; transition: color 0.3s; } a:hover, footer a:hover { color: #F20; } footer a { color: inherit; } section { filter: grayscale(100%); transition: filter 0.5s; } section:hover { filter:none; } img { max-width: 100%; } img.ico { height: 1em; width: auto; } img.small { height: 10em; width: auto; } ul { margin:0; padding-left: 1em; } /* Definition List */ dt { font-weight:bold; } dd + dt { margin-top: .5em; } /* hackcal */ #dbkcalendar {border: 1px solid #CCC} #dbkcalendar div {display: flex; padding: 8px 14px} #dbkcalendar [data-date] {background: #CCC; font-weight: bold} #dbkcalendar [data-uid] {font-size: .9em; gap: .5em; line-height: 1.5em} #dbkcalendar [data-uid] span:first-child {flex: 0 0 3em; font-weight: bold} #dbkcalendar i {background: #FC0; border-radius: 0.25em; padding: 0 0.25em; font-style: normal; font-weight: bold; color:#000} /* spaceapi */ aside#spaceapi { display: flex; justify-content:right; align-items: center; flex-grow: 1; } aside#spaceapi img { float:left; height:5em; margin: 1em } /* Mobile devices */ @media (max-width: 700px) { html {background-image: none} body {margin:0} header, footer, section {padding: 1em 25px; width:auto; min-width: 300px} section {transition: all 0.5s} p {text-align: justify; hyphens: auto} /* spaceapi */ aside#spaceapi {justify-content:left} /*pointer-events:none*/ } /* Dark mode */ @media (prefers-color-scheme: dark) { :root { color-scheme: dark} html {background-color: #444} body, section {background: rgba(0,0,0,.5); color: #BBB} footer {background: rgba(0,0,0,.8)} a {color: #FC0; transition: color 0.3s} a:hover, footer a:hover {color: #FA0} /* hackcal */ #dbkcalendar {border-color: #444} #dbkcalendar div[data-date] {background: #444} }