station-announcer/static/styles.css

323 lines
5 KiB
CSS

:root {
color-scheme: light dark;
font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
background-color: #111;
color: #f8f9fa;
}
body {
margin: 0;
background-color: #111;
color: #f8f9fa;
}
.container {
width: min(1200px, 90vw);
margin: 0 auto;
padding: 1.5rem;
}
.site-header {
background: #202020;
border-bottom: 1px solid #2d2d2d;
}
.header-bar {
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 1rem;
}
.site-header a {
color: inherit;
text-decoration: none;
}
.nav-links {
display: flex;
gap: 1rem;
font-size: 0.95rem;
}
.nav-links a {
color: #9cc1ff;
}
.flash-messages {
margin-bottom: 1rem;
}
.flash {
background: #1f3b2f;
border: 1px solid #335843;
padding: 0.6rem 0.9rem;
border-radius: 4px;
}
.error {
background: #401f1f;
border: 1px solid #6b2727;
padding: 0.8rem;
border-radius: 4px;
margin-bottom: 1rem;
}
.warning {
background: #443510;
border: 1px solid #7a5c1c;
padding: 0.8rem;
border-radius: 4px;
margin-bottom: 1rem;
}
.button-link {
display: inline-block;
padding: 0.5rem 1.1rem;
border-radius: 999px;
background: #2b74ff;
color: #fff;
text-decoration: none;
font-weight: 600;
}
.button-link:hover {
background: #1f5fe0;
}
.grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
gap: 1rem;
}
.asset-card {
background: #1b1b1b;
border: 1px solid #2d2d2d;
border-radius: 6px;
padding: 0.75rem;
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.asset-card img {
width: 100%;
aspect-ratio: 1 / 1;
object-fit: cover;
border-radius: 4px;
border: 1px solid #2d2d2d;
background: #0b0b0b;
}
.meta {
font-size: 0.85rem;
color: #bfbfbf;
}
.alt-text {
font-size: 0.9rem;
color: #e1e1e1;
}
.asset-detail {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
gap: 2rem;
align-items: start;
}
.asset-detail img {
width: 100%;
border-radius: 8px;
border: 1px solid #2d2d2d;
}
.notes-form textarea {
width: 100%;
margin-top: 0.4rem;
border-radius: 6px;
border: 1px solid #3b3b3b;
padding: 0.6rem;
background: #121212;
color: inherit;
}
.notes-form button {
background: #2b74ff;
border: none;
color: #fff;
padding: 0.6rem 1.4rem;
border-radius: 4px;
font-weight: 600;
cursor: pointer;
}
.notes-form button:hover {
background: #1f5fe0;
}
.selection-form .select-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
gap: 1rem;
margin-bottom: 1rem;
}
.selection-form .actions {
display: flex;
justify-content: flex-end;
margin-bottom: 1rem;
}
.selection-form .actions.top-actions {
margin-top: 0;
}
.selection-form .actions button {
background: #2b74ff;
border: none;
color: #fff;
padding: 0.6rem 1.4rem;
border-radius: 4px;
font-weight: 600;
cursor: pointer;
}
.select-card {
border: 1px solid #2d2d2d;
border-radius: 6px;
padding: 0.75rem;
display: flex;
flex-direction: column;
gap: 0.5rem;
background: #1b1b1b;
cursor: pointer;
}
.select-card input[type=\"checkbox\"] {
width: 1rem;
height: 1rem;
}
.select-card img {
width: 100%;
border-radius: 4px;
border: 1px solid #2d2d2d;
object-fit: cover;
}
.alt-text-sample {
font-size: 0.8rem;
color: #bcbcbc;
margin-top: 0.3rem;
max-height: 4.5rem;
overflow: hidden;
}
.compose-form {
display: flex;
flex-direction: column;
gap: 1.5rem;
}
.asset-list {
display: flex;
flex-direction: column;
gap: 1rem;
}
.compose-asset {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
gap: 1rem;
border: 1px solid #2d2d2d;
border-radius: 8px;
padding: 1rem;
background: #151515;
}
.compose-asset img {
width: 100%;
border-radius: 8px;
border: 1px solid #2d2d2d;
}
.compose-asset textarea {
width: 100%;
border-radius: 6px;
border: 1px solid #3b3b3b;
padding: 0.6rem;
background: #121212;
color: inherit;
}
.order-controls {
display: flex;
justify-content: space-between;
align-items: center;
grid-column: 1 / -1;
}
.order-badge {
font-size: 0.9rem;
font-weight: 600;
padding: 0.2rem 0.6rem;
border-radius: 999px;
border: 1px solid #3b3b3b;
}
.move-buttons {
display: flex;
gap: 0.5rem;
}
.move-buttons button {
border: 1px solid #3b3b3b;
background: #1f1f1f;
color: #fff;
padding: 0.3rem 0.6rem;
border-radius: 4px;
cursor: pointer;
}
.move-buttons button:disabled {
opacity: 0.4;
cursor: not-allowed;
}
.compose-form textarea {
width: 100%;
border-radius: 6px;
border: 1px solid #3b3b3b;
padding: 0.6rem;
background: #121212;
color: inherit;
}
.compose-actions {
display: flex;
gap: 1rem;
flex-wrap: wrap;
}
.compose-actions button {
background: #2b74ff;
border: none;
color: #fff;
padding: 0.6rem 1.4rem;
border-radius: 4px;
font-weight: 600;
cursor: pointer;
}
.compose-actions button[name=\"action\"][value=\"post\"] {
background: #2ecc71;
}
.compose-actions button:disabled {
opacity: 0.5;
cursor: not-allowed;
}