/* Portal shell, matched to the public site: graphite, amber. */
:root {
    --bg: #070b10;
    --panel: #0d141c;
    --ink: #e9eff6;
    --soft: #b4c0ce;
    --muted: #7f8c9c;
    --line: rgba(255, 255, 255, 0.1);
    --accent: #ffb44a;
    --accent-2: #ff7a59;
    --on-accent: #2a1400;
}

body {
    background: var(--bg) !important;
    color: var(--ink) !important;
    font-family: Inter, "Segoe UI", sans-serif !important;
}

.min-h-screen {
    background: var(--bg) !important;
    background-image: none !important;
}

h1, h2, h3, .sys-mark {
    font-family: "Space Grotesk", Inter, sans-serif;
}

.bg-slate-950 { background-color: var(--bg) !important; }
.bg-slate-900,
.bg-slate-800,
.bg-slate-800\/60,
.bg-slate-800\/50,
.hover\:bg-slate-800\/50:hover { background-color: var(--panel) !important; }

.bg-slate-700,
.hover\:bg-slate-600:hover,
.hover\:bg-slate-800:hover,
.focus\:bg-slate-800:focus {
    background-color: #121a24 !important;
    color: var(--ink) !important;
}

.text-slate-100,
.text-slate-200,
.text-slate-300,
.hover\:text-slate-100:hover,
.hover\:text-slate-200:hover { color: var(--ink) !important; }

.text-slate-400,
.text-slate-500,
.hover\:text-slate-400:hover { color: var(--muted) !important; }

.border-slate-800,
.border-slate-700,
.border-slate-600 { border-color: var(--line) !important; }

.border-blue-600,
.border-blue-700,
.focus\:border-blue-600:focus,
.focus\:border-blue-800:focus,
.border-l-4.border-blue-700 { border-color: var(--accent) !important; }

a.bg-blue-700,
button.bg-blue-700,
.bg-blue-700,
.bg-blue-600,
.hover\:bg-blue-800:hover,
.hover\:bg-blue-600:hover,
.focus\:bg-blue-800:focus {
    background: linear-gradient(100deg, var(--accent), var(--accent-2)) !important;
    color: var(--on-accent) !important;
    border-color: transparent !important;
}

input,
select,
textarea {
    background-color: #0a1017 !important;
    color: var(--ink) !important;
    border-color: var(--line) !important;
}

input:focus,
select:focus,
textarea:focus {
    border-color: var(--accent) !important;
    --tw-ring-color: var(--accent);
}

input[type="checkbox"] { accent-color: var(--accent); }

a { color: inherit; }

.sys-mark {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    letter-spacing: 0.18em;
    font-size: 15px;
    color: var(--ink);
    text-decoration: none;
}

.sys-mark svg { width: 28px; height: 28px; flex: none; }

.sys-mark span {
    display: block;
    margin-top: 2px;
    font-family: Inter, sans-serif;
    font-weight: 400;
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--muted);
}

#invoice-doc,
#invoice-doc * {
    font-family: Inter, "Segoe UI", sans-serif;
}

@media print {
    body, .min-h-screen { background: #fff !important; color: #111 !important; }
    nav, header, .no-print { display: none !important; }
}
