/* global defaults */ * { margin: 0; padding: 0; box-sizing: border-box; } body { font: 12pt Helvetica, Arial; width: 100vw; height: 100vh; display: flex; flex-direction: column; overflow-x: hidden; overflow-y: auto; background-color: #111111; color: white; } .banner { max-width: 320px; height: auto; margin-left: auto; margin-right: auto; margin-top: .5em; margin-bottom: 2em; } @media screen and (max-width: 480px) { .banner { max-width: 80%; } } h1 { font-size: 24pt; color: pink; } h2 { font-size: 14pt; color: lightblue; } br { padding-bottom: .5rem; } ul { list-style-type: disc; list-style-position: inside; padding-bottom: .5rem; } a { color: lightblue; } .centered { text-align: center; } .right { text-align: right; } /* footer */ footer { flex: 0 1 auto; justify-self: flex-end; display: flex; flex-direction: row; justify-content: center; align-items: center; } /* central display */ .central { flex: 1; display: flex; flex-direction: column; padding: 0 10px; min-height: 100vh; margin: 0 10%; } @media screen and (max-width: 768px) { .central { margin: 0; } } .central p { padding-bottom: .5rem; } /* components */ .page { flex: 1 1 auto; display: flex; flex-direction: column; justify-content: flex-start; } .panel { flex: 0 1 auto; display: flex; flex-direction: column; justify-content: flex-start; } /* right-aligned panels */ .panel.right { align-items: center; } .panel.right form { flex: 1; display: flex; flex-direction: column; align-items: flex-end; align-self: stretch; } .panel.right form button { align-self: stretch; margin-top: .2em; margin-bottom: .2em; } @media screen and (max-width: 480px) { .panel.right h1 { font-size: 16px; } } /* constrained panels */ .constrained { align-self: center; max-width: 320px; } @media screen and (max-width: 480px) { .constrained { align-self: stretch; max-width: none; } } /* warning message */ .warning { flex: 0 1 auto; display: none; flex-direction: row; justify-content: center; align-content: flex-end; border-style: solid; border-width: 2px; border-color: #ff0000; background: #ff6666; } .panel.right .warning { align-self: stretch; } /* custom styling */ /* SidePanelPage structure */ .sidePanelPage { flex: 1; display: flex; flex-direction: row; justify-content: flex-start; align-items: flex-start; } @media screen and (max-width: 480px) { .sidePanelPage { flex-direction: column; } } /* left panel */ .sidePanel { flex: 0 1 auto; display: flex; flex-direction: column; justify-content: flex-start; min-width: 160px; width: 160px; } @media screen and (max-width: 480px) { .sidePanel { align-self: stretch; width: auto; } } /* main panel */ .mainPanel { margin-left: 30px; flex: 1; display: flex; flex-direction: column; justify-content: flex-start; } @media screen and (max-width: 768px) { .mainPanel { margin-left: 15px; } } @media screen and (max-width: 480px) { .mainPanel { margin-left: 0; align-self: stretch; width: auto; } } /* flexbox tables */ .table { flex: 1; display: flex; flex-direction: column; justify-content: flex-start; } .row { flex: 1; display: flex; flex-direction: row; justify-content: flex-start; } @media screen and (max-width: 480px) { .row { flex-direction: column; } } .col { flex: 1; } .table.noCollapse .row { flex-direction: row; } /* bits and pieces */ .logoutButton { align-self: stretch; } .newsLine { border: none; height: 1px; color: lightblue; background-color: lightblue; margin-top: 1em; margin-bottom: 2em; } .minWidth { /* hacky */ min-width: 80px; } pre { color: pink; background-color: #222222; margin-top: 1em; margin-bottom: 1em; }