:root { --background-color: #2b2b2e; --foreground-color: #edede7; --highlight-border-color: #cecec9; --dark-green: #526962; --dark-purple: #9084ae; --dark-cherry: #ae6773; --blue: #add8e6; --cherry: #c26979; --card-expand-with: 6em; } /* Global */ * { box-sizing: border-box; } body { background: var(--background-color); color: var(--foreground-color); width: 100vw; max-width: 100%; height: 100vh; margin: 0; font-family: sans-serif; font-size: 18px; } a { color: var(--blue); } strong { color: var(--cherry); } h1 { text-align: center; } input, button, textarea, select { color: inherit; background-image: url(/img/paper.jpg); background-repeat: repeat; padding: 0.5em; font-size: 0.95em; border: none; border-radius: 0.25em; min-width: 1em; box-shadow: 0 0 0.4em var(--dark-purple); } textarea { resize: vertical; min-height: 4em; } input[type=text]:focus { outline: 2px solid var(--highlight-border-color); } input[type=submit]:hover, button:hover, select:hover { cursor: pointer; } [hidden] { display: none !important; } /* Generic */ .float-right { float: right; } .width-80 { width: 80%; } .width-100 { width: 100%; } .font-115 { font-size: 1.15em; } .font-125 { font-size: 1.25em; } .font-150 { font-size: 1.5em; } .max-width-20 { max-width: 20em; } .center-margin { margin-left: auto; margin-right: auto; } .separate-margin { margin-top: 5em; margin-bottom: 8em; } .flex-row { display: flex; flex-direction: row; gap: 0.75em; } .flex-col-centered { display: flex; flex-direction: column; gap: 1em; } .flex-expand { flex: 1; } iframe { border: 2px solid var(--foreground-color); height: 20em; pointer-events: none; } /* Main containers */ header, article { max-width: 60rem; margin: 0 auto; padding: 1em; } #global-nav { display: flex; flex-direction: row; gap: 0.2em; font-size: 1.15em; background-color: var(--dark-green); box-shadow: 0 } #global-nav > :not(div) { display: block; width: fit-content; color: white; text-decoration: none; border: 3px solid var(--dark-green); border-bottom: none; border-top: none; padding: 0.6em 0.5em; } #global-nav > :not(div):hover { border: 3px solid var(--highlight-border-color); border-bottom: none; border-top: none; } #global-nav > :not(div):first-child, #global-nav > div:first-child + * { margin-right: 1em; } #global-nav > .fadeout-left { width: 1em; background-color: var(--background-color); mask-image: linear-gradient( to left, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 1) 90% ); } #global-nav > .fadeout-right { width: 1em; background-color: var(--background-color); mask-image: linear-gradient( to right, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 1) 90% ); } article { max-width: calc(60rem - 2em); } article > * { width: 100%; } /* Page elements */ hr.new-section { height: 0.25em; background-color: var(--dark-green); mask-image: linear-gradient( to right, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 90% ); border-width: 0; margin-bottom: 5em; } /* Preview card */ .card { display: flex; flex-direction: column; gap: 0.5em; /* color: #404040 */ background-image: url(/img/paper.jpg); background-repeat: repeat; height: 8.5em; overflow: hidden; mask-image: linear-gradient( to top, rgba(0, 0, 0, 0) 0.5em, rgba(0, 0, 0, 1) 2em ); padding: 0.75em; margin-top: 1em; border-radius: 0.25em 0.25em 0; transition-duration: 300ms; transition-property: height; } .card * { pointer-events: none; } .card:hover { cursor: pointer; height: calc(8.5em + var(--card-expand-with)); } .card > .quickinfo { font-size: 0.9em; padding-bottom: 0.5em; border-bottom: 3px dotted #909090; } .card > .title img { vertical-align: middle; height: 2em; } .card-blank-afterspace { height: var(--card-expand-with); } /* Webpage item */ .item, .list { background-image: url(/img/paper.jpg); background-repeat: repeat; display: flex; flex-direction: row; border-radius: 0.25em; padding: 0.5em; margin-bottom: 1em; font-size: 1.08em; border: 4px solid var(--dark-purple); border-top: none; border-bottom: none; } .item > :first-child, .list > :first-child { flex: 1; } .item img { vertical-align: middle; } .item .favicon { height: 2em; } .item .details { font-size: 0.9em; color: gray; margin: 0.25em; } .item.error { border-color: var(--cherry); } .item.success { border-color: var(--dark-green); } .item [name=itemButton], .item .global-buttons { border-left: 3px solid var(--dark-purple); margin: -0.5em 0 -0.5em 0.5em; padding: 0.5em 0 0.5em 0.5em; display: flex; flex-direction: column; gap: 0.3em; } .item [name=itemButton] > *, .item .global-buttons > * { display: flex; align-items: end; flex: 1; } .item [name=itemButton] input, .item [name=itemButton] button, .item .global-buttons input, .item .global-buttons button { box-shadow: none; padding: 0; } .other-icon, .list-icon { height: 1.3em; } .list-icon { color: var(--cherry); } /* List item */ .list { border-color: var(--dark-cherry); } .list:hover { cursor: pointer; } .list > :first-child > * { padding-left: 0.25em; padding-right: 0.25em; } .list .heading { border-bottom: 3px dotted #909090; padding-bottom: 0.5em; } .list h2 { margin: 0; font-size: 1.7em; display: inline-block; } .list h2 + .float-right { line-height: 1.7em; text-align: center; } /* List */ .list-container { display: flex; flex-direction: row; gap: 1em; } .list-container > :first-child { flex: 1; font-size: 1.2em; } .list-container > :nth-child(2) { flex: 4; margin-top: 1em; } .list-container .user-info { font-size: 1em; } .list-container .user-info svg { max-height: 1em; vertical-align: middle; } .list-container #list-buttons { display: flex; flex-direction: column; gap: 0.9em; font-size: 0.8em; margin-top: 4em; } /* User */ .user-icon { height: 7em; color: inherit; display: inline-flex; vertical-align: middle; } .user-admin { color: var(--cherry); } .username { display: inline-block; font-size: 2.5em; vertical-align: middle; } .user-blank-afterspace { height: 4em; } #user-buttons { margin: 0 1em 2em 1em; display: flex; flex-direction: row; gap: 1em; } #user-nav { display: flex; flex-direction: row; gap: 1em; margin-bottom: 2em; } #user-nav button { font-size: 1.3em; background-color: var(--dark-green); background-image: none; border: none; color: inherit; padding: 0.3em; flex: 1; mask-image: linear-gradient( to left, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 1) 1em, rgba(0, 0, 0, 1) calc(100% - 1em), rgba(0, 0, 0, 0) ); } #user-nav button.not-selected { filter: saturate(80%) brightness(80%); } #user-nav button:hover { filter: none; }