/* ARISE platform: calm hierarchy, readable data, native Filament interactions. */
:root { --arise-canvas:#f7f9f7; --arise-surface:#fff; --arise-ink:#1f2a24; --arise-muted:#6b7280; --arise-line:#e5e5e5; --arise-accent:#2e5e3e; --arise-tint:#eef5f0; --arise-brand-primary:#2e5e3e; --arise-brand-light:#a7e3b1; --arise-brand-dark:#1f4029; --arise-radius:14px; }
.dark { --arise-canvas:#0a0a0a; --arise-surface:#171717; --arise-ink:#fafafa; --arise-muted:#a1a1a1; --arise-line:#333; --arise-accent:#a7e3b1; --arise-tint:#1f4029; }
.fi-body { background:var(--arise-canvas); color:var(--arise-ink); }
.fi-main { max-width:96rem; }
.fi-sidebar { background:var(--arise-surface); border-inline-end:1px solid var(--arise-line); }
.fi-topbar { border-bottom:1px solid var(--arise-line); box-shadow:none; }
.fi-topbar nav { box-shadow:none; background:var(--arise-surface); }
.fi-sidebar-header { min-height:5.5rem; box-shadow:none; }
.fi-sidebar-nav { padding-top:1.4rem; }
.fi-sidebar-group-label { color:var(--arise-muted); font-size:.69rem; font-weight:650; letter-spacing:.09em; text-transform:uppercase; }
.fi-sidebar-item-btn { min-height:44px; border-radius:9px; transition:background-color 150ms ease,color 150ms ease; }
.fi-sidebar-item.fi-active>.fi-sidebar-item-btn { background:var(--arise-tint); box-shadow:inset 3px 0 0 var(--arise-accent); }
.fi-sidebar-item-label { font-size:.875rem; }
.fi-header-heading { letter-spacing:-.035em; color:var(--arise-ink); }
.fi-header-subheading { color:var(--arise-muted); max-width:58rem; font-size:.925rem; line-height:1.65; }
.fi-section,.fi-ta,.fi-wi-stats-overview-stat { border-radius:var(--arise-radius); box-shadow:0 1px 2px rgb(16 42 52 / 3%); }
.fi-wi-stats-overview-stat { border:1px solid var(--arise-line); padding:1.35rem; }
.fi-wi-stats-overview-stat-label { color:var(--arise-muted); font-size:.82rem; font-weight:550; }
.fi-wi-stats-overview-stat-value { font-size:2rem; font-weight:650; letter-spacing:-.04em; font-variant-numeric:tabular-nums; }
.fi-wi-stats-overview-stat-description { color:var(--arise-muted); font-size:.78rem; line-height:1.5; }
.fi-ta-header-cell { background:var(--arise-canvas); color:var(--arise-muted); font-size:.75rem; }
.fi-ta-cell { padding-block:.9rem; }
.fi-ta-text-item { font-size:.875rem; }
.fi-btn { min-height:40px; border-radius:9px; font-weight:600; box-shadow:none; }
.fi-input-wrp { border-radius:9px; }
.fi-modal-window { border-radius:18px; }
.fi-modal-heading { letter-spacing:-.025em; }
.fi-fo-checkbox-list { gap:.8rem 1.5rem; }
/* Keep the supplied logo intact; a white plate preserves its original colors in dark mode. */
.arise-brand { display:inline-flex; align-items:center; gap:.8rem; color:var(--arise-ink); }
.arise-brand-logo-frame { display:grid; place-items:center; flex-shrink:0; width:3.1rem; height:3.5rem; padding:3px; border-radius:8px; background:#fff; }
.arise-brand-logo { display:block; width:auto; height:100%; max-width:100%; object-fit:contain; }
.arise-brand-caption { max-width:8.5rem; font-size:.65rem; font-weight:650; line-height:1.55; letter-spacing:.13em; text-transform:uppercase; }
.fi-body .fi-btn.fi-color-primary:not(.fi-outlined) { background:var(--arise-brand-primary); color:#fafafa; }
.fi-body .fi-btn.fi-color-primary:not(.fi-outlined):hover { background:var(--arise-brand-dark); }
.dark .fi-body .fi-btn.fi-color-primary:not(.fi-outlined) { background:var(--arise-brand-light); color:var(--arise-brand-dark); }
.dark .fi-body .fi-btn.fi-color-primary:not(.fi-outlined):hover { background:#d5e9da; }
.arise-workspace-intro { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:1.75rem 2rem; border:1px solid var(--arise-line); border-inline-start:4px solid var(--arise-accent); border-radius:var(--arise-radius); background:var(--arise-surface); }
.arise-eyebrow { margin:0 0 .65rem; color:var(--arise-accent); font-size:.68rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.arise-workspace-intro h2 { margin:0; color:var(--arise-ink); font-size:clamp(1.25rem,2vw,1.6rem); font-weight:650; letter-spacing:-.035em; line-height:1.3; }
.arise-intro-copy { max-width:38rem; margin:.6rem 0 0; color:var(--arise-muted); font-size:.875rem; line-height:1.65; }
.arise-workspace-links { display:flex; flex-shrink:0; flex-direction:column; gap:.3rem; }
.arise-workspace-links a { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; min-height:40px; border-radius:6px; padding:.4rem .6rem; color:var(--arise-accent); font-size:.82rem; font-weight:600; }
.arise-workspace-links a:hover { background:var(--arise-tint); }
.arise-workspace-links a:focus-visible { outline:2px solid var(--arise-accent); outline-offset:3px; }
.fi-simple-main { border:1px solid var(--arise-line); border-radius:20px; background:var(--arise-surface); box-shadow:0 14px 50px rgb(16 42 52 / 6%); }
@media(max-width:767px) {
 .arise-workspace-intro { flex-direction:column; align-items:stretch; gap:1rem; padding:1.3rem; }
 .arise-workspace-links { gap:.25rem; }
 .arise-workspace-links a,.fi-btn { min-height:44px; }
 .fi-header-heading { font-size:1.65rem; }
 .fi-wi-stats-overview-stat { padding:1.15rem; }
 .fi-input { font-size:1rem; }
 .fi-icon-btn { min-width:44px; min-height:44px; }
 .fi-simple-main { padding:1.5rem; }
}
@media(prefers-reduced-motion:reduce) { .fi-sidebar-item-btn,.arise-workspace-links a { transition:none; } }

.arise-link-icon { width:1rem; height:1rem; flex-shrink:0; }

.fi-body .fi-section,.fi-body .fi-ta,.fi-body .fi-wi-stats-overview-stat,.fi-body .fi-topbar { background:var(--arise-surface); }
.fi-body .fi-wi-stats-overview { background:transparent; box-shadow:none; }
