github-actions
Deploy e9638c4ddc3ed29a18779b38f43922aa3139b311
611bfd9
@tailwind base;
@tailwind components;
@tailwind utilities;
:root {
font-family: "IBM Plex Sans", "Segoe UI", sans-serif;
color: #1A2B62;
background: #FFFFFF;
}
body {
margin: 0;
min-height: 100vh;
background: #FFFFFF;
color: #1A2B62;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
}
a {
color: inherit;
text-decoration: none;
}
button,
input,
textarea,
select {
font: inherit;
}
::selection {
background: rgba(160, 198, 219, 0.42);
}
@layer components {
.app-shell {
@apply min-h-screen text-slate-800;
}
.shell-width {
@apply mx-auto max-w-[1440px] px-6 md:px-10;
}
.page-kicker {
@apply text-[11px] font-semibold uppercase tracking-[0.28em] text-slate-500;
}
.page-title {
@apply text-2xl font-semibold tracking-[-0.04em] text-ink md:text-3xl;
}
.page-intro {
@apply max-w-3xl text-sm leading-6 text-slate-600 md:text-[15px];
}
.app-nav-link {
@apply border-b-2 border-transparent pb-2 text-sm font-medium text-brand-grey transition-colors hover:text-brand-navy focus-visible:outline-none focus-visible:text-brand-navy;
}
.app-nav-link-active {
@apply border-brand-adriatic text-brand-navy;
}
.action-link {
@apply rounded-sm text-sm font-semibold text-brand-adriatic underline decoration-brand-adriatic/30 underline-offset-4 transition hover:text-brand-navy hover:decoration-brand-navy/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand-adriatic/20;
}
.surface-card {
@apply rounded-xl border border-slate-300/80 bg-white;
}
.surface-subtle {
@apply rounded-xl border border-slate-300/70 bg-[#fbfaf7];
}
.surface-open {
@apply border-y border-slate-300/70 bg-transparent;
}
.section-heading {
@apply flex flex-wrap items-end justify-between gap-3 border-b border-slate-300/70 pb-3;
}
.section-heading-title {
@apply text-lg font-semibold tracking-[-0.03em] text-ink;
}
.section-heading-copy {
@apply text-sm leading-6 text-slate-600;
}
.briefing-strip {
@apply surface-card grid gap-4 overflow-hidden md:grid-cols-4;
}
.briefing-metric {
@apply px-5 py-4;
}
.briefing-metric + .briefing-metric {
@apply border-t border-slate-200/80 md:border-l md:border-t-0;
}
.briefing-label {
@apply text-[11px] font-semibold uppercase tracking-[0.24em] text-slate-500;
}
.briefing-value {
@apply mt-3 text-xl font-semibold tracking-[-0.03em] text-ink;
}
.briefing-meta {
@apply mt-2 text-xs leading-5 text-slate-500;
}
.ledger-shell {
@apply surface-card overflow-x-auto;
}
.ledger-table {
@apply min-w-full border-collapse text-sm;
}
.ledger-table thead th {
@apply border-b border-slate-300/80 bg-transparent px-5 py-3 text-left text-[11px] font-semibold uppercase tracking-[0.24em] text-slate-500;
}
.ledger-table tbody td {
@apply px-5 py-4 align-top text-sm text-slate-700;
}
.ledger-table tbody tr {
@apply border-b border-slate-200/80;
}
.ledger-table tbody tr:last-child {
@apply border-b-0;
}
.rail-list {
@apply divide-y divide-slate-200/80;
}
.rail-row {
@apply flex items-start justify-between gap-4 py-4 first:pt-0 last:pb-0;
}
.advisory-note {
@apply rounded-xl border-l-4 border-amber-700 bg-amber-50/70 px-4 py-3;
}
.dossier-list {
@apply surface-card divide-y divide-slate-200/80 overflow-hidden;
}
.dossier-row {
@apply grid gap-5 px-5 py-5 md:grid-cols-[minmax(0,1fr)_220px];
}
.dossier-meta {
@apply text-xs font-medium uppercase tracking-[0.16em] text-slate-500;
}
.dossier-title {
@apply mt-2 text-lg font-semibold tracking-[-0.03em] text-ink;
}
.dossier-copy {
@apply text-sm leading-6 text-slate-700;
}
.field-input {
@apply rounded-xl border border-brand-grey/40 bg-white px-4 py-3 text-sm text-ink outline-none transition placeholder:text-slate-400 focus:border-brand-adriatic focus:ring-2 focus:ring-brand-adriatic/15;
}
.primary-button {
@apply rounded-xl bg-brand-navy px-5 py-3 text-sm font-semibold text-white transition hover:bg-brand-adriatic focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand-adriatic/25 disabled:cursor-not-allowed disabled:bg-slate-300;
}
.secondary-button {
@apply rounded-xl border border-brand-grey/40 bg-white px-5 py-3 text-sm font-semibold text-brand-navy transition hover:border-brand-adriatic hover:bg-brand-light-blue/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand-adriatic/20;
}
}