/*TODO text color dropdowns, button icons and text*/ :root { --font-features: "calt" 1, "case" 0, "ccmp" 1, "ss03" 1, "cv01" 1, "cv05" 1, "cv06" 1, "cv08" 0, "cv11" 1, "cv12" 0, "cv13" 0; --large-text: 16px; --small-text: 14px; /* Grayscale */ --color-l-gray-10: hsla(36, 38%, 98%, 1); --color-l-gray-20: hsla(35, 36%, 96%, 1); --color-l-gray-30: hsla(35, 37%, 92%, 1); --color-l-gray-40: hsla(34, 34%, 90%, 1); --color-l-gray-50: hsla(36, 35%, 88%, 1); --color-l-gray-60: hsla(37, 38%, 83%, 1); --color-l-gray-70: hsla(34, 37%, 70%, 1); --color-l-gray-80: hsla(34, 29%, 60%, 1); --color-l-gray-90: hsla(31, 23%, 50%, 1); --color-l-gray-100: hsla(35, 28%, 40%, 1); --color-l-gray-110: hsla(34, 30%, 37%, 1); --color-l-gray-120: hsla(36, 32%, 30%, 1); --color-l-gray-130: hsla(31, 45%, 24%, 1); --color-l-gray-140: hsla(33, 54%, 17%, 1); --color-l-alpha-gray: hsla(34, 37%, 70%, 0.15); /* Green */ --color-l-green-10: hsla(148, 30%, 65%, 1); --color-l-green-20: hsla(148, 48%, 47%, 1); --color-l-green-30: hsla(149, 50%, 39%, 1); --color-l-green-40: hsla(153, 65%, 29%, 1); --color-l-alpha-green: hsla(74, 69%, 44%, 0.2); /* Red */ --color-l-red-10: hsla(4, 59%, 64%, 1); --color-l-red-20: hsla(4, 72%, 55%, 1); --color-l-red-30: hsla(4, 56%, 48%, 1); --color-l-red-40: hsla(4, 72%, 35%, 1); --color-l-alpha-red: hsla(350, 84%, 63%, 0.2); --text-color: var(--color-l-gray-120); --desc-color: var(--color-l-gray-100); --placeholder-color: var(--color-l-gray-70); --link-color: var(--color-l-gray-90); --icon-color: var(--color-l-gray-80); --icon-color-hover: var(--color-l-gray-90); --border-color: var(--color-l-gray-50); --border-color-hover: var(--color-l-gray-60); --scrollbar-color: var(--color-l-gray-70); --button-inset-shadow-size: 2px; --shadow: inset 0px 1px 0px 0px rgba(255, 255, 255, 0.2), inset 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px calc(-1 * var(--button-inset-shadow-size)) 0px 2px rgba(0, 0, 0, 0.09), inset 0px -2px 4px 0px rgba(0, 0, 0, 0.1), 0px 4px 4px -5.6px rgba(0, 0, 0, 0.4), 0px 2px 4px -2.7px rgba(0, 0, 0, 0.1), 0px 2px 4px -1px rgba(0, 0, 0, 0.05); --shadow-hover: inset 0px 1px 0px 0px rgba(255, 255, 255, 0.4), inset 0px 0px 0px 1px rgba(0, 0, 0, 0.15), inset 0px calc(-1 * var(--button-inset-shadow-size)) 0px 2px rgba(0, 0, 0, 0.09), inset 0px -2px 4px 0px rgba(0, 0, 0, 0.1), 0px 4px 4px -5.6px rgba(0, 0, 0, 0.4), 0px 2px 4px -2.7px rgba(0, 0, 0, 0.15), 0px 2px 6px -1px rgba(0, 0, 0, 0.1); --shadow-active: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.15), inset 0px 0px 0px calc(1px + var(--button-inset-shadow-size)) rgba(0, 0, 0, 0.09), inset 0px 2px 8px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 1px rgba(255, 255, 255, 0.6); --shadow-focus: inset 0px 1px 0px 0px rgba(255, 255, 255, 0.2), inset 0px 0px 0px 1px rgba(0, 0, 0, 0.1), inset 0px calc(-1 * var(--button-inset-shadow-size)) 0px 2px rgba(0, 0, 0, 0.09), inset 0px -2px 4px 0px rgba(0, 0, 0, 0.1), 0px 4px 4px -5.6px rgba(0, 0, 0, 0.4), 0px 2px 4px -2.7px rgba(0, 0, 0, 0.1), 0px 2px 4px -1px rgba(0, 0, 0, 0.05), 0px 0px 0px 3px var(--color-l-alpha-gray); --text-input-shadow-active: inset 0px 1px 0px 0px rgba(255, 255, 255, 1), inset 0px -1px 0px 0px rgba(0, 0, 0, 0.04), 0px 1px 6px 0px rgba(0, 0, 0, 0.07); --hide-speed: .2s; } input, select { background-color: var(--color-l-gray-20); border: 1px solid var(--border-color); border-radius: .5em; font-size: var(--large-text); color: var(--text-color); padding: 2px 8px 2px 8px; gap: 8px; } input { box-sizing: border-box; width: 100%; } input::placeholder { color: var(--placeholder-color); } input:hover { border: 1px solid var(--border-color-hover); transition: 0.3s; } input:focus { transition: 0.1s; border: 1px solid var(--border-color-hover); background-color: var(--color-l-gray-10); box-shadow: var(--text-input-shadow-active); outline: none; } select { padding: 6px; padding-right: 26px; box-shadow: var(--shadow); appearance: none; background: url("data:image/svg+xml,") no-repeat; background-position-x: calc(100% - 2px); background-position-y: calc(50% - 2px); } select:active, select:focus { outline: none; box-shadow: var(--shadow-focus); } label { font-size: var(--large-text); } .primary-prompt { display: flex; align-items: center; text-wrap: nowrap; gap: 6px; align-content: center; } #header-name { margin-bottom: 17.25px; } #header-pov { margin-top: 8px; margin-bottom: 21.25px; transition: .5s; } #other { display: grid; overflow: hidden; margin-top: 8px; margin-left: 18px; gap: 6px; height: 297px; } #other li { display: grid; grid-template-columns: 1fr 2fr; align-items: center; gap: 6px; } #other > li > label { font-size: var(--small-text); text-align: right; text-wrap: nowrap; } #other > li > input { font-size: var(--small-text); } #other > li > select { font-size: var(--small-text); width: min-content; } #also > li { display: flex; align-items: center; gap: 6px; margin-top: 6px; height: 26px; } .lhs { text-align: right; } .delete { color: var(--icon-color); background-color: transparent; width: fit-content; margin: 0; padding: 0; border: 0; box-shadow: 0; visibility: block; scale: 1; transition: all .1s allow-discrete; } .delete:hover, .delete:focus { color: var(--icon-color-hover); outline: none; } .hide-button > button { visibility: hidden; scale: 0; } body { background-color: var(--color-l-gray-30); color: var(--text-color); width: 350px; /* Same as width of add-on viewer on my system */ height: 500px; /* Max height allowed TODO verify on wi-fi */ padding-left: 10px; padding-right: 15px; font-family: 'Inter', sans-serif; font-feature-settings: var(--font-features); font-size: var(--small-text); margin: auto; } html { scrollbar-color: var(--scrollbar-color) transparent; } h1 { font-size: var(--large-text); font-weight: 600; overflow: hidden; text-overflow: ellipsis; } ul { list-style: none; padding-left: 0; margin: 0; } /* Button grid */ #button-grid { display: grid; grid-template-columns: 7fr 5fr; gap: 8px; margin-top: 34px; } button:not(.delete) { display: flex; justify-content: center; align-items: center; font-weight: 600; border: 1px solid var(--border-color); font-size: var(--large-text); padding: 6px; cursor: pointer; box-shadow: var(--shadow); background-color: var(--color-l-gray-20); color: var(--text-color); } #button-grid > button { border-radius: .5em; width: 100%; gap: 8px; text-align: center; } button:not(.delete) > svg { transform: translateY(-.15em); } #button-grid > button > p { margin: 0; font-family: 'Inter', sans-serif; font-feature-settings: var(--font-features); transform: translateY(-.15em); } button:not(.delete):hover { transition-duration: 0.3s; box-shadow: var(--shadow-hover); background-color: var(--color-l-gray-10); } button:not(.delete):active { transition: 0.3s; box-shadow: var(--shadow-active); } #button-grid > button:active > p { transition: 0.3s; transform: translateY(0); } button:not(.delete):active > svg { transition: 0.3s; transform: translateY(0); } /* Save button */ #save { background-color: var(--color-l-gray-90); color: var(--color-l-gray-10); } #save:hover { background-color: var(--color-l-gray-80); } #save:active { background-color: var(--color-l-gray-90); } .visually-hidden { clip: rect(0 0 0 0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; } /* Site enabled section */ #site-enabled { display: flex; justify-content: space-between; background-color: var(--color-l-gray-10); padding: 10px; border: 1px solid var(--border-color); border-radius: .5em; margin-top: var(--small-text); } #site-details { min-width: 0; } #state { color: var(--color-l-red-20); transition: .3s; } #state.is-on { color: var(--color-l-green-20); transition: .3s; } #toggle { border-radius: 3em; padding: 12px; align-self: center; margin-left: 15px; margin-right: 5px; background-color: var(--color-l-red-20); color: var(--color-l-gray-10); } #toggle:hover { background-color: var(--color-l-red-10); } #toggle:active { background-color: var(--color-l-red-20); } #toggle.is-on { background-color: var(--color-l-green-20); color: var(--color-l-gray-10); } #toggle.is-on:hover { background-color: var(--color-l-green-10); } #toggle.is-on:active { background-color: var(--color-l-green-20); } /* Configuration section */ #configuration { background-color: var(--color-l-gray-10); padding: 16px 10px; border: 1px solid var(--border-color); border-radius: .5em; margin-top: var(--small-text); } label { font-size: var(--large-text); } .primary-promt input { font-size: 50px; } .lhs { text-align: right; } /* Links section */ #links { text-align: right; padding: var(--small-text) 0; } #links > li { margin-bottom: 6px; } a { color: var(--link-color); text-decoration: underline; text-decoration-color: color-mix(in srgb, currentColor 22%, transparent); transition-duration: 0.1s; } a:hover{ color: var(--text-color); } .hide { height: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; margin-top: 0 !important; margin-bottom: 0 !important; overflow: hidden !important; opacity: 0 !important; } .unhide { transition: height var(--hide-speed) ease-out, padding-top var(--hide-speed) ease-out, padding-bottom var(--hide-speed) ease-out, margin-top var(--hide-speed) ease-out, margin-bottom var(--hide-speed) ease-out, opacity var(--hide-speed) linear !important; }