/* PORTAL TI - BASE / VARIABLES */

:root {
    --ti-primary: #0f172a;
    --ti-primary-soft: #1e293b;
    --ti-accent: #2563eb;
    --ti-accent-hover: #1d4ed8;
    --ti-success: #16a34a;
    --ti-warning: #f59e0b;
    --ti-danger: #dc2626;
    --ti-info: #0891b2;
    --ti-bg: #f3f6fb;
    --ti-card: #ffffff;
    --ti-border: #e5e7eb;
    --ti-border-soft: #eef2f7;
    --ti-text: #111827;
    --ti-muted: #64748b;
    --ti-radius: 16px;
    --ti-radius-sm: 10px;
    --ti-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
    --ti-shadow-soft: 0 6px 18px rgba(15, 23, 42, 0.06);
}

html,
body {
    background: var(--ti-bg);
    color: var(--ti-text);
    font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 14px;
    min-height: 100vh;
}

a {
    text-decoration: none;
}

h1,
h2,
h3,
h4,
h5 {
    font-weight: 800;
    color: var(--ti-primary);
}

* {
    scrollbar-width: thin;
    scrollbar-color: #cbd5e1 transparent;
}

::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 999px;
}

    ::-webkit-scrollbar-thumb:hover {
        background: #94a3b8;
    }

button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 3px solid rgba(37, 99, 235, 0.28) !important;
    outline-offset: 2px !important;
}

input:disabled,
select:disabled,
textarea:disabled,
button:disabled {
    cursor: not-allowed !important;
    opacity: .65 !important;
}
