BookGenreApp / static /style.css
Adawqrcvb's picture
Upload 25 files
ae44122 verified
Raw
History Blame Contribute Delete
4.46 kB
:root {
--background: #f4f6fb;
--card: #ffffff;
--text: #1f2937;
--muted: #6b7280;
--primary: #1d4ed8;
--primary-dark: #1e40af;
--border: #d9e1ef;
--warning-bg: #fff7ed;
--warning-border: #fed7aa;
--error-bg: #fef2f2;
--error-border: #fecaca;
}
* {
box-sizing: border-box;
}
body {
margin: 0;
font-family: Arial, sans-serif;
color: var(--text);
background: var(--background);
line-height: 1.6;
}
.container {
width: min(1120px, calc(100% - 32px));
margin: 0 auto;
}
.page-header {
background: linear-gradient(135deg, #1d4ed8, #0f172a);
color: #ffffff;
padding: 36px 0;
}
.header-content {
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
}
.page-header h1 {
margin: 0;
font-size: 34px;
line-height: 1.2;
}
.eyebrow {
margin: 0 0 8px;
color: var(--muted);
font-size: 13px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
}
.page-header .eyebrow {
color: #bfdbfe;
}
.header-badge {
padding: 10px 16px;
border: 1px solid rgba(255, 255, 255, 0.35);
border-radius: 999px;
white-space: nowrap;
}
.main-content {
padding: 32px 0;
}
.card {
background: var(--card);
border: 1px solid var(--border);
border-radius: 18px;
box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
padding: 24px;
}
.card h2 {
margin: 0 0 14px;
font-size: 22px;
}
.intro-card {
margin-bottom: 24px;
}
.grid-layout {
display: grid;
grid-template-columns: minmax(0, 1fr) 340px;
gap: 24px;
align-items: start;
}
.side-column {
display: grid;
gap: 24px;
}
label {
display: block;
margin-bottom: 8px;
font-weight: 700;
}
textarea {
width: 100%;
resize: vertical;
border: 1px solid var(--border);
border-radius: 14px;
padding: 14px;
font: inherit;
color: var(--text);
background: #fbfdff;
outline: none;
}
textarea:focus {
border-color: var(--primary);
box-shadow: 0 0 0 4px rgba(29, 78, 216, 0.12);
}
button {
margin-top: 16px;
border: none;
border-radius: 12px;
padding: 12px 18px;
background: var(--primary);
color: #ffffff;
font: inherit;
font-weight: 700;
cursor: pointer;
}
button:hover {
background: var(--primary-dark);
}
.genre-list {
margin: 0;
padding-left: 20px;
}
.genre-list li {
margin: 6px 0;
}
.warning-box {
margin-top: 18px;
padding: 14px 16px;
border: 1px solid var(--warning-border);
border-radius: 14px;
background: var(--warning-bg);
}
.file-name {
font-family: Consolas, monospace;
background: #eef2ff;
border-radius: 6px;
padding: 1px 5px;
}
.metrics-list {
display: grid;
gap: 12px;
}
.metric-item {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
border-bottom: 1px solid var(--border);
padding-bottom: 10px;
}
.metric-item:last-child {
border-bottom: none;
padding-bottom: 0;
}
.result-card {
margin-bottom: 24px;
border-color: #bfdbfe;
}
.result-card h2 {
color: var(--primary-dark);
font-size: 36px;
}
.confidence {
font-size: 18px;
}
.annotation-text {
white-space: pre-wrap;
background: #f8fafc;
border: 1px solid var(--border);
border-radius: 14px;
padding: 16px;
}
.secondary-link {
display: inline-block;
margin-top: 14px;
color: var(--primary);
font-weight: 700;
text-decoration: none;
}
.secondary-link:hover {
text-decoration: underline;
}
.probability-list {
display: grid;
gap: 14px;
}
.probability-heading {
display: flex;
justify-content: space-between;
gap: 16px;
margin-bottom: 6px;
}
.probability-bar {
height: 10px;
border-radius: 999px;
background: #e5e7eb;
overflow: hidden;
}
.probability-fill {
height: 100%;
border-radius: inherit;
background: var(--primary);
}
.error-card {
border-color: var(--error-border);
background: var(--error-bg);
margin-bottom: 24px;
}
.page-footer {
padding: 24px 0 36px;
color: var(--muted);
font-size: 14px;
}
@media (max-width: 860px) {
.header-content,
.grid-layout {
grid-template-columns: 1fr;
display: grid;
}
.header-badge {
justify-self: start;
}
.page-header h1 {
font-size: 28px;
}
}