Files
sla-shift-ledger/styles/sla-shift-ledger.css
T

371 lines
8.7 KiB
CSS

.sla-shift-ledger-banner {
position: fixed;
top: 6px;
left: 50%;
transform: translateX(-50%);
z-index: 75;
width: min(1100px, calc(100vw - 120px));
pointer-events: auto;
font-family: "Josefin Sans", "Signika", sans-serif;
}
.sla-shift-ledger-banner-inner {
display: grid;
grid-template-columns: minmax(240px, 0.85fr) minmax(0, 1.75fr);
gap: 16px;
align-items: center;
padding: 14px 18px;
border-radius: 16px;
border: 1px solid rgba(124, 196, 255, 0.24);
background:
linear-gradient(180deg, rgba(17, 22, 31, 0.96), rgba(12, 16, 23, 0.94));
box-shadow: 0 12px 30px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.04);
color: #d9e7f7;
}
.sla-shift-ledger-banner-meta {
min-width: 0;
}
.sla-shift-ledger-banner-main {
display: grid;
grid-template-columns: 1fr;
gap: 10px;
align-items: stretch;
}
.sla-shift-ledger-banner-kicker,
.sla-shift-ledger-kicker {
font-size: 0.72rem;
letter-spacing: 0.18em;
text-transform: uppercase;
color: #7cc4ff;
margin-bottom: 4px;
}
.sla-shift-ledger-banner-title,
.sla-shift-ledger-state-line {
font-size: 1.1rem;
font-weight: 700;
color: #f4f8fd;
}
.sla-shift-ledger-banner-subtitle {
font-size: 0.78rem;
color: #9eb5cf;
}
.sla-shift-ledger-banner-controls {
display: inline-flex;
flex-wrap: wrap;
gap: 8px;
align-items: center;
justify-content: flex-start;
}
.sla-shift-ledger-button {
border: 1px solid rgba(124, 196, 255, 0.4);
border-radius: 999px;
background: rgba(31, 93, 156, 0.24);
color: #e9f4ff;
min-width: 72px;
padding: 8px 12px;
font-size: 0.75rem;
font-weight: 700;
cursor: pointer;
white-space: nowrap;
}
.sla-shift-ledger-button:hover {
background: rgba(46, 114, 184, 0.34);
}
.sla-shift-ledger-shifts {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 8px;
min-width: 0;
width: 100%;
}
.sla-shift-ledger-shift,
.sla-shift-ledger-shift-chip {
border-radius: 12px;
border: 1px solid rgba(255, 255, 255, 0.1);
background: rgba(255, 255, 255, 0.04);
min-height: 56px;
padding: 10px 12px;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
font-size: 0.72rem;
letter-spacing: 0.06em;
text-transform: uppercase;
color: #90a8c2;
line-height: 1.15;
white-space: nowrap;
overflow: hidden;
}
.sla-shift-ledger-shift.is-active,
.sla-shift-ledger-shift-chip.is-active {
background: linear-gradient(180deg, rgba(77, 149, 221, 0.38), rgba(31, 93, 156, 0.42));
color: #ffffff;
border-color: rgba(146, 207, 255, 0.7);
box-shadow: 0 0 0 1px rgba(146, 207, 255, 0.12), 0 0 20px rgba(62, 145, 218, 0.22);
}
.sla-shift-ledger-open {
margin-left: 6px;
}
.sla-shift-ledger-form,
.sla-shift-ledger-actor-panel {
color: #d9e7f7;
}
.sla-shift-ledger-form input,
.sla-shift-ledger-form select,
.sla-shift-ledger-form textarea,
.sla-shift-ledger-actor-panel input,
.sla-shift-ledger-actor-panel select,
.sla-shift-ledger-actor-panel textarea {
background: linear-gradient(180deg, rgba(242, 247, 252, 0.98), rgba(229, 236, 245, 0.98)) !important;
color: #112030 !important;
border: 1px solid rgba(89, 118, 152, 0.48) !important;
box-shadow: inset 0 1px 0 rgba(255,255,255,0.78) !important;
}
.sla-shift-ledger-form input::placeholder,
.sla-shift-ledger-form textarea::placeholder,
.sla-shift-ledger-actor-panel input::placeholder,
.sla-shift-ledger-actor-panel textarea::placeholder {
color: #61758c !important;
}
.sla-shift-ledger-form option,
.sla-shift-ledger-actor-panel option {
color: #112030;
background: #e7edf5;
}
.sla-shift-ledger-grid,
.sla-shift-ledger-actor-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 12px;
}
.sla-shift-ledger-field {
display: flex;
flex-direction: column;
gap: 6px;
}
.sla-shift-ledger-field label {
font-size: 0.8rem;
text-transform: uppercase;
letter-spacing: 0.08em;
color: #8eb4da;
}
.sla-shift-ledger-field .notes {
margin: 0;
font-size: 0.74rem;
color: #98aac0;
}
.sla-shift-ledger-banner-card,
.sla-shift-ledger-cost-panel,
.sla-shift-ledger-actor-card {
margin: 12px 0;
padding: 12px;
border-radius: 16px;
border: 1px solid rgba(124, 196, 255, 0.15);
background: linear-gradient(180deg, rgba(17, 22, 31, 0.82), rgba(10, 14, 20, 0.9));
}
.sla-shift-ledger-shift-row {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 8px;
margin-top: 10px;
}
.sla-shift-ledger-cost-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
margin-top: 8px;
}
.sla-shift-ledger-actions,
.sla-shift-ledger-inline-actions {
margin-top: 14px;
display: flex;
flex-wrap: wrap;
gap: 10px;
}
.sla-shift-ledger-form .sla-shift-ledger-actions button,
.sla-shift-ledger-form .sla-shift-ledger-inline-actions button,
.sla-shift-ledger-actor-panel .sla-shift-ledger-inline-actions button,
.sla-shift-ledger-actor-panel .sla-shift-ledger-day-nav button {
background: linear-gradient(180deg, rgba(68, 138, 212, 0.96), rgba(29, 95, 162, 0.98)) !important;
color: #f5fbff !important;
border: 1px solid rgba(145, 210, 255, 0.56) !important;
box-shadow: 0 6px 16px rgba(16, 50, 89, 0.22), inset 0 1px 0 rgba(255,255,255,0.18) !important;
}
.sla-shift-ledger-form .sla-shift-ledger-actions button:hover,
.sla-shift-ledger-form .sla-shift-ledger-inline-actions button:hover,
.sla-shift-ledger-actor-panel .sla-shift-ledger-inline-actions button:hover,
.sla-shift-ledger-actor-panel .sla-shift-ledger-day-nav button:hover {
background: linear-gradient(180deg, rgba(87, 157, 230, 0.98), rgba(42, 111, 181, 0.99)) !important;
}
.sla-shift-ledger-actor-panel {
margin-bottom: 12px;
}
.sla-shift-ledger-actor-grid {
grid-template-columns: repeat(4, minmax(0, 1fr));
}
.sla-shift-ledger-actor-summary {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-bottom: 8px;
}
.sla-shift-ledger-day-nav {
display: flex;
flex-wrap: wrap;
gap: 8px;
align-items: center;
margin: 8px 0 10px;
}
.sla-shift-ledger-day-readout {
font-size: 0.8rem;
color: #dcecff;
font-weight: 700;
}
.sla-shift-ledger-tag {
border-radius: 999px;
padding: 4px 10px;
font-size: 0.72rem;
background: rgba(124, 196, 255, 0.12);
border: 1px solid rgba(124, 196, 255, 0.18);
color: #d7ecff;
}
.sla-shift-ledger-front-panel {
margin-top: 10px;
}
.sla-shift-ledger-front-summary {
display: flex;
flex-wrap: wrap;
gap: 8px;
align-items: center;
}
.sla-shift-ledger-front-summary .sla-shift-ledger-tag {
background: rgba(90, 168, 255, 0.14);
}
.sla-shift-ledger-ledger {
margin-top: 10px;
max-height: 180px;
overflow: auto;
display: flex;
flex-direction: column;
gap: 8px;
}
.sla-shift-ledger-ledger-entry {
padding: 8px 10px;
border-radius: 12px;
background: rgba(255, 255, 255, 0.04);
border: 1px solid rgba(255, 255, 255, 0.06);
font-size: 0.78rem;
}
.sla-shift-ledger-ledger-entry strong {
color: #ffffff;
}
@media (max-width: 1100px) {
.sla-shift-ledger-banner {
width: min(900px, calc(100vw - 80px));
}
.sla-shift-ledger-banner-inner {
grid-template-columns: 1fr;
}
}
@media (max-width: 900px) {
.sla-shift-ledger-banner {
position: static;
transform: none;
width: auto;
margin: 8px 8px 0;
}
.sla-shift-ledger-banner-inner {
grid-template-columns: 1fr;
align-items: stretch;
}
.sla-shift-ledger-shifts {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.sla-shift-ledger-cost-grid,
.sla-shift-ledger-actor-grid,
.sla-shift-ledger-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
/* Premium SLA Campaign Clock Window styling */
.sla-campaign-clock-window.window-app {
background: linear-gradient(180deg, rgba(17, 22, 31, 0.98), rgba(12, 16, 23, 0.96)) !important;
border: 1px solid rgba(124, 196, 255, 0.25) !important;
box-shadow: 0 16px 40px rgba(0, 0, 0, 0.5) !important;
border-radius: 16px !important;
overflow: hidden !important;
}
.sla-campaign-clock-window .window-header {
border-bottom: 1px solid rgba(124, 196, 255, 0.15) !important;
background: rgba(17, 22, 31, 0.5) !important;
color: #7cc4ff !important;
font-family: "Josefin Sans", sans-serif !important;
letter-spacing: 0.05em !important;
padding: 6px 12px !important;
}
.sla-campaign-clock-window .window-content {
background: transparent !important;
padding: 18px !important;
color: #d9e7f7 !important;
}
.sla-campaign-clock-window .sla-shift-ledger-window-inner {
display: flex;
flex-direction: column;
}
.sla-campaign-clock-window .sla-shift-ledger-shift.is-active {
background: linear-gradient(180deg, rgba(77, 149, 221, 0.38), rgba(31, 93, 156, 0.42)) !important;
color: #ffffff !important;
border-color: rgba(146, 207, 255, 0.7) !important;
box-shadow: 0 0 10px rgba(124, 196, 255, 0.3) !important;
}