mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-07-24 18:09:13 -04:00
387 lines
6.8 KiB
SCSS
387 lines
6.8 KiB
SCSS
@use "uswds-core" as *;
|
|
|
|
// SMS Box Style
|
|
|
|
.sms-message-wrapper {
|
|
|
|
position: relative;
|
|
width: 100%;
|
|
max-width: 464px;
|
|
box-sizing: border-box;
|
|
padding: units(2);
|
|
background: color('gray-cool-10');
|
|
border: 1px solid color('gray-cool-10');
|
|
border-radius: 5px;
|
|
white-space: normal;
|
|
margin: 0 0 units(1) 0;
|
|
clear: both;
|
|
word-wrap: break-word;
|
|
|
|
&:after {
|
|
content: "";
|
|
display: block;
|
|
position: absolute;
|
|
bottom: -5px;
|
|
right: -20px;
|
|
border: 10px solid transparent;
|
|
border-left-width: 13px;
|
|
border-right-width: 13px;
|
|
border-bottom-color: color('gray-cool-10');
|
|
border-left-color: color('gray-cool-10');
|
|
transform: rotate(17deg);
|
|
}
|
|
|
|
}
|
|
|
|
.sms-message-inbound {
|
|
|
|
.sms-message-wrapper {
|
|
|
|
&:after {
|
|
border-left-color: transparent;
|
|
border-bottom-color: color('gray-cool-10');
|
|
border-right-color: color('gray-cool-10');
|
|
right: auto;
|
|
left: -20px;
|
|
transform: rotate(17deg);
|
|
}
|
|
}
|
|
}
|
|
|
|
.sms-message-sender, .sms-message-file-name, .sms-message-scheduler, .sms-message-template, .sms-message-sender {
|
|
margin: units(0.5) 0 0;
|
|
}
|
|
|
|
.sms-message-recipient {
|
|
color: color('gray-cool-90');
|
|
margin: units(0.5) 0 units(2);
|
|
}
|
|
|
|
.sms-message-status {
|
|
color: color('gray-cool-90');
|
|
margin: -20px units(1) 20px units(1);
|
|
}
|
|
|
|
h2.sms-message-header {
|
|
margin-bottom: 0.5rem;
|
|
}
|
|
|
|
.usa-prose >*+ h2.message-header {
|
|
margin-top: 1em;
|
|
}
|
|
|
|
h2.recipient-list {
|
|
margin-bottom: 0.5rem;
|
|
}
|
|
|
|
.sms-message-status-outbound {
|
|
text-align: right;
|
|
}
|
|
|
|
.sms-message-row {
|
|
&:focus {
|
|
outline: none;
|
|
padding-top: 120px;
|
|
margin-top: -120px;
|
|
}
|
|
}
|
|
|
|
.sms-message-reply-link {
|
|
text-align: right;
|
|
}
|
|
|
|
// File upload area
|
|
|
|
.page-footer {
|
|
position: relative;
|
|
margin-bottom: 30px;
|
|
&-link {
|
|
line-height: 40px;
|
|
padding: 1px 0 0 15px;
|
|
font-weight: normal;
|
|
&:first-of-type {
|
|
padding-left: 0px;
|
|
}
|
|
}
|
|
|
|
&-delete-link-without-button {
|
|
padding: 0;
|
|
display: inline-block;
|
|
}
|
|
|
|
&-secondary-link {
|
|
display: block;
|
|
margin-top: units(1);
|
|
}
|
|
|
|
&-right-aligned-link {
|
|
position: absolute;
|
|
right: 0;
|
|
top: 9px; // align baseline with buttons
|
|
&-without-button {
|
|
position: absolute;
|
|
right: 0;
|
|
top: 0;
|
|
}
|
|
}
|
|
|
|
&__button {
|
|
margin-right: 10px;
|
|
}
|
|
|
|
.js-cancel {
|
|
margin: 0;
|
|
}
|
|
|
|
&__button--centred {
|
|
display: block;
|
|
margin: 0 auto;
|
|
}
|
|
}
|
|
|
|
.file-upload {
|
|
&-label,
|
|
&-button-label {
|
|
font-weight: bold;
|
|
font-size: 19px;
|
|
display: block;
|
|
margin: 0 0 10px 0;
|
|
}
|
|
|
|
&-label .error-message,
|
|
&-button-label.error-message {
|
|
padding: 0;
|
|
}
|
|
|
|
&-field {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
// Hide normal upload form if we're adding a custom version with JS
|
|
.js-enabled &-label,
|
|
.js-enabled &-field,
|
|
.js-enabled &-submit {
|
|
display: none;
|
|
}
|
|
|
|
&-alternate-link {
|
|
display: inline-block;
|
|
line-height: 35px;
|
|
a {
|
|
font-weight: bold;
|
|
}
|
|
}
|
|
}
|
|
|
|
.spreadsheet {
|
|
|
|
margin-bottom: units (1);
|
|
|
|
.table {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.usa-table--borderless thead th {
|
|
border-top: 1px solid color('gray-cool-10');
|
|
}
|
|
|
|
th,
|
|
.table-field-index {
|
|
background: color('gray-cool-10');
|
|
border: 1px solid color('gray-cool-10');
|
|
font-weight: bold;
|
|
text-align: center;
|
|
}
|
|
|
|
th, td {
|
|
padding-left: 10px;
|
|
padding-right: 10px;
|
|
border: 1px solid color('gray-cool-10');
|
|
}
|
|
|
|
td {
|
|
border-top: 0;
|
|
// 194 is the width of the table * 1/3.5, so the overflow cuts off
|
|
// at 3.5 columns wide.
|
|
// 11 accounts for the padding of the table cell
|
|
min-width: 194px - 11px;
|
|
&:first-child {
|
|
min-width: auto;
|
|
}
|
|
}
|
|
|
|
.fullscreen-fixed-table {
|
|
z-index: 1000;
|
|
.table-field-heading-first {
|
|
background: color('gray-cool-10');
|
|
}
|
|
}
|
|
}
|
|
|
|
.fullscreen {
|
|
&-content {
|
|
background: #FFFFFF;
|
|
z-index: 10;
|
|
overflow-y: hidden;
|
|
box-sizing: border-box;
|
|
margin: 0 0 units(1) 0;
|
|
padding: 0 0 0 0;
|
|
overflow: hidden;
|
|
border-bottom: 1px solid color('gray-cool-10');
|
|
.table {
|
|
margin-bottom: 0;
|
|
tr:last-child {
|
|
td {
|
|
border-bottom: 1px solid #FFFFFF;
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
th,
|
|
.table-field-error-label,
|
|
.table-field-left-aligned {
|
|
white-space: nowrap;
|
|
}
|
|
}
|
|
|
|
&-right-shadow {
|
|
position: absolute;
|
|
top: 0;
|
|
right: 0;
|
|
width: 4px;
|
|
height: 100%;
|
|
z-index: 200;
|
|
&.visible {
|
|
&.with-transition {
|
|
transition: box-shadow 0.6s ease-out;
|
|
}
|
|
box-shadow: inset -1px 0 0 0 color('gray-cool-10'), inset -3px 0 0 0 rgba(color('gray-cool-10'), 0.2);
|
|
}
|
|
}
|
|
|
|
&-scrollable-table {
|
|
|
|
overflow-x: auto;
|
|
overflow-y: hidden;
|
|
|
|
.table-field-heading-first,
|
|
.table-field-index {
|
|
display: none;
|
|
}
|
|
|
|
.table-field-left-aligned {
|
|
position: relative;
|
|
z-index: 150;
|
|
background: #FFFFFF;
|
|
}
|
|
|
|
&::-webkit-scrollbar {
|
|
-webkit-appearance: none;
|
|
}
|
|
|
|
&::-webkit-scrollbar:horizontal {
|
|
height: 11px;
|
|
background-color: #FFFFFF;
|
|
}
|
|
|
|
&::-webkit-scrollbar-thumb {
|
|
border-radius: 8px;
|
|
border: 2px solid #FFFFFF;
|
|
background-color: rgba(0, 0, 0, .5);
|
|
}
|
|
|
|
&::-webkit-scrollbar-track {
|
|
background-color: #FFFFFF;
|
|
border-radius: 8px;
|
|
}
|
|
|
|
}
|
|
|
|
&-fixed-table {
|
|
|
|
position: absolute;
|
|
top: 0;
|
|
overflow: hidden;
|
|
|
|
.table-field-heading {
|
|
visibility: hidden;
|
|
}
|
|
|
|
.table-field-left-aligned {
|
|
width: 0;
|
|
position: relative;
|
|
z-index: 100;
|
|
visibility: hidden;
|
|
}
|
|
|
|
.table-field-heading-first,
|
|
.table-field-index {
|
|
transition: none;
|
|
position: relative;
|
|
z-index: 200;
|
|
background: #FFFFFF;
|
|
}
|
|
}
|
|
|
|
&-scrolled-table {
|
|
padding-bottom: 20px;
|
|
.table-field-heading-first,
|
|
.table-field-index {
|
|
transition: box-shadow 0.3s ease-in-out;
|
|
box-shadow: 1px 0 0 0 color('gray-cool-10'), 3px 0 0 0 rgba(color('gray-cool-10'), 0.2);
|
|
}
|
|
}
|
|
|
|
&-shim {
|
|
width: 100%;
|
|
position: relative;
|
|
z-index: 9;
|
|
margin-bottom: 30px;
|
|
pointer-events: none;
|
|
& + .table-show-more-link {
|
|
margin-top: -20px;
|
|
}
|
|
}
|
|
}
|
|
|
|
.usa-search__input, [type=search] {
|
|
border-right: 1px solid;
|
|
height: 40px;
|
|
margin-top: units(1);
|
|
}
|
|
|
|
.usa-search .search-form__button {
|
|
height: 40px;
|
|
}
|
|
|
|
// Button ellipses loading
|
|
.dot-anim {
|
|
display: inline-block;
|
|
margin-left: 0; /* remove left margin if it exists */
|
|
padding-left: 0;
|
|
font-size: 1em;
|
|
animation: dots 1s steps(3, end) infinite;
|
|
}
|
|
|
|
/* Optional: reduce spacing by removing whitespace node */
|
|
button span.dot-anim {
|
|
margin-left: 0; /* forces no space even if white-space exists */
|
|
}
|
|
|
|
.dot-anim::after {
|
|
content: '.';
|
|
animation: dotPulse 1.5s steps(3, end) infinite;
|
|
}
|
|
|
|
@keyframes dotPulse {
|
|
0% { content: ''; }
|
|
33% { content: '.'; }
|
|
66% { content: '..'; }
|
|
100% { content: '...'; }
|
|
}
|
|
|
|
.modal-open {
|
|
overflow: hidden;
|
|
}
|