/* ========================= Base Palette ========================= */ :root { --c-verylow:#22c55e; --c-verylow-100:#dcfce7; --c-verylow-300:#86efac; --c-verylow-inv:#000; --c-low:#84cc16; --c-low-100:#ecfccb; --c-low-300:#bef264; --c-low-inv:#111; --c-mid:#eab308; --c-mid-100:#fef9c3; --c-mid-300:#fde047; --c-mid-inv:#111; --c-high:#f97316; --c-high-100:#ffedd5; --c-high-300:#fbbf24; --c-high-inv:#111; --c-veryhigh:#dc2626; --c-veryhigh-100:#fee2e2;--c-veryhigh-300:#fca5a5; --c-veryhigh-inv:#000; --prosoft-normal:#6f3165; --prosoft-inv:#fff; } /* ========================= Helpers (similar to Bulma) ========================= */ .has-text-prosoft { color: var(--prosoft-inv) !important; } .has-background-prosoft { background: var(--prosoft-normal) !important; color: var(--prosoft-inv) !important; } .has-background-prosoft a, .has-background-prosoft abbr { color: var(--prosoft-inv); } .table thead tr.has-background-prosoft th { color: var(--prosoft-inv) !important; } abbr { text-decoration: none; } /* ========================= Colorized Text / Background ========================= */ .has-text-control-verylow { color: var(--c-verylow) !important; } .has-text-control-low { color: var(--c-low) !important; } .has-text-control-mid { color: var(--c-mid) !important; } .has-text-control-high { color: var(--c-high) !important; } .has-text-control-veryhigh{ color: var(--c-veryhigh) !important; } .has-background-control-verylow { background: var(--c-verylow) !important; color: var(--c-verylow-inv) !important; } .has-background-control-low { background: var(--c-low) !important; color: var(--c-low-inv) !important; } .has-background-control-mid { background: var(--c-mid) !important; color: var(--c-mid-inv) !important; } .has-background-control-high { background: var(--c-high) !important; color: var(--c-high-inv) !important; } .has-background-control-veryhigh{ background: var(--c-veryhigh) !important; color: var(--c-veryhigh-inv) !important; } /* ========================= Buttons ========================= */ .button.is-prosoft { background: var(--prosoft-normal) !important; color: var(--prosoft-inv) !important; } .button.is-control-verylow, .button.is-control-low, .button.is-control-mid, .button.is-control-high, .button.is-control-veryhigh { border-color: transparent; } .button.is-control-verylow { background: var(--c-verylow); color: var(--c-verylow-inv); } .button.is-control-low { background: var(--c-low); color: var(--c-low-inv); } .button.is-control-mid { background: var(--c-mid); color: var(--c-mid-inv); } .button.is-control-high { background: var(--c-high); color: var(--c-high-inv); } .button.is-control-veryhigh{ background: var(--c-veryhigh);color: var(--c-veryhigh-inv); } .button.is-control-verylow:hover, .button.is-control-low:hover, .button.is-control-mid:hover, .button.is-control-high:hover, .button.is-control-veryhigh:hover { filter: brightness(.92); } .button.is-control-verylow.is-light { background: var(--c-verylow-100); color: var(--c-verylow); } .button.is-control-low.is-light { background: var(--c-low-100); color: var(--c-low); } .button.is-control-mid.is-light { background: var(--c-mid-100); color: var(--c-mid); } .button.is-control-high.is-light { background: var(--c-high-100); color: var(--c-high); } .button.is-control-veryhigh.is-light{ background: var(--c-veryhigh-100);color: var(--c-veryhigh); } /* ========================= Tags ========================= */ .tag.is-prosoft { background: var(--prosoft-normal) !important; color: var(--prosoft-inv) !important; } .tag.is-control-verylow { background: var(--c-verylow); color: var(--c-verylow-inv); } .tag.is-control-low { background: var(--c-low); color: var(--c-low-inv); } .tag.is-control-mid { background: var(--c-mid); color: var(--c-mid-inv); } .tag.is-control-high { background: var(--c-high); color: var(--c-high-inv); } .tag.is-control-veryhigh{ background: var(--c-veryhigh);color: var(--c-veryhigh-inv); } .tag.is-control-verylow.is-light { background: var(--c-verylow-100); color: var(--c-verylow); } .tag.is-control-low.is-light { background: var(--c-low-100); color: var(--c-low); } .tag.is-control-mid.is-light { background: var(--c-mid-100); color: var(--c-mid); } .tag.is-control-high.is-light { background: var(--c-high-100); color: var(--c-high); } .tag.is-control-veryhigh.is-light{ background: var(--c-veryhigh-100);color: var(--c-veryhigh); } /* ========================= Notifications ========================= */ .notification.is-control-verylow { background: var(--c-verylow-100); border-left: 4px solid var(--c-verylow); color:#111; } .notification.is-control-low { background: var(--c-low-100); border-left: 4px solid var(--c-low); color:#111; } .notification.is-control-mid { background: var(--c-mid-100); border-left: 4px solid var(--c-mid); color:#111; } .notification.is-control-high { background: var(--c-high-100); border-left: 4px solid var(--c-high); color:#111; } .notification.is-control-veryhigh{ background: var(--c-veryhigh-100);border-left: 4px solid var(--c-veryhigh);color:#111; } .notification.is-prosoft { background: var(--prosoft-normal) !important; border-left: var(--prosoft-inv) !important; } /* ========================= Messages ========================= */ .message.is-control-verylow .message-header { background: var(--c-verylow); color: var(--c-verylow-inv); } .message.is-control-low .message-header { background: var(--c-low); color: var(--c-low-inv); } .message.is-control-mid .message-header { background: var(--c-mid); color: var(--c-mid-inv); } .message.is-control-high .message-header { background: var(--c-high); color: var(--c-high-inv); } .message.is-control-veryhigh .message-header{ background: var(--c-veryhigh);color: var(--c-veryhigh-inv); } .message.is-control-verylow .message-body { border-color: var(--c-verylow-300); } .message.is-control-low .message-body { border-color: var(--c-low-300); } .message.is-control-mid .message-body { border-color: var(--c-mid-300); } .message.is-control-high .message-body { border-color: var(--c-high-300); } .message.is-control-veryhigh .message-body{ border-color: var(--c-veryhigh-300); } .message.is-prosoft { border-color: var(--prosoft-normal); } /* ========================= Progress bars ========================= */ .progress.is-control-verylow::-webkit-progress-value { background: var(--c-verylow); } .progress.is-control-low::-webkit-progress-value { background: var(--c-low); } .progress.is-control-mid::-webkit-progress-value { background: var(--c-mid); } .progress.is-control-high::-webkit-progress-value { background: var(--c-high); } .progress.is-control-veryhigh::-webkit-progress-value{ background: var(--c-veryhigh); } .progress.is-control-verylow::-moz-progress-bar { background: var(--c-verylow); } .progress.is-control-low::-moz-progress-bar { background: var(--c-low); } .progress.is-control-mid::-moz-progress-bar { background: var(--c-mid); } .progress.is-control-high::-moz-progress-bar { background: var(--c-high); } .progress.is-control-veryhigh::-moz-progress-bar{ background: var(--c-veryhigh); } .progress.is-prosoft { background: var(--prosoft-normal) !important; } /* ========================= Navbar / Topbar ========================= */ .navbar.topbar-nav { background-color: #d6801e !important; /* Orange as in screenshot */ box-shadow: none; } .navbar.topbar-nav .navbar-item, .navbar.topbar-nav .navbar-link { color: #111; } .navbar.topbar-nav .navbar-item:hover, .navbar.topbar-nav .navbar-link:hover { background-color: rgba(0,0,0,.04); color: #111; } .navbar.topbar-nav .navbar-link::after { border-color: #6b2bbd; } /* purple arrow */ /* Logo block */ .logo { background-color: var(--prosoft-normal) !important; color: #fff; } .logo .logo-text { color: #fff; font-weight: 700; } /* ========================= Layout Elements ========================= */ .actions { display: flex; align-items: center; gap: 10px; padding-right: 10px; } .search { border: 1px solid #c7c7c7; border-radius: 4px; padding: 4px 8px; font-size: 14px; } .profile { background: #3c7d74; color: #fff; width: 28px; height: 28px; border-radius: 9999px; display: flex; align-items: center; justify-content: center; font-weight: 700; } .content { background: #fafafa; min-height: calc(100vh - 3.25rem); } .home-icon { font-size: 20px; display: inline-block; margin: 10px; } .navbar-dropdown { border-top: none; box-shadow: 0 8px 16px rgba(0,0,0,.1); } /* ========================= Breadcrumbs ========================= */ .top-breadcrumb { padding: 10px 0; } .breadcrumb:not(:last-child) { margin-bottom: 0; border-bottom: 1px solid var(--prosoft-normal); } .breadcrumb { background-color: #f0ebeb; } .breadcrumb a { color: var(--prosoft-normal) !important; } /* ========================= Lists inside .content ========================= */ .content li { margin-top: 5px !important; } .content li+li { margin: 0 !important; } /* ========================= Dark Mode ========================= */ body.dark-mode { background-color: #121212; color: #f5f5f5; } body.dark-mode .box { background-color: #1e1e1e; color: #f5f5f5; } body.dark-mode a { color: #bb86fc; } /* ========================= Risk Chip (custom widget) ========================= */ .risk-chip { --chip-w: 260px; --chip-id-w: 40px; width: var(--chip-w); display: inline-flex; flex-direction: column; /* stacked style */ align-items: stretch; border: 0; border-radius: 8px; overflow: hidden; font-weight: 600; box-shadow: 0 4px 14px rgba(0,0,0,.08); background: var(--chip-bg, #eee); color: var(--chip-fg, #111); } .risk-chip .chip-head { padding:.35rem .6rem; font-size:.75rem; font-weight:700; text-transform:uppercase; letter-spacing:.02em; color:var(--chip-fg); background:rgba(0,0,0,.10); border-bottom:1px solid rgba(0,0,0,.12); } .risk-chip .chip-main { display:flex; align-items:stretch; } /* left ID column with texture */ .risk-chip .chip-id { flex: 0 0 var(--chip-id-w); display: grid; place-items: center; font-size: 1.25rem; position: relative; background: rgba(0,0,0,.06); } .risk-chip .chip-id::after { content:""; position: absolute; inset:0; background: linear-gradient(to right, rgba(255,255,255,.15), rgba(0,0,0,.08) 60%), repeating-linear-gradient(135deg, rgba(255,255,255,.12) 0 6px, transparent 6px 12px); mix-blend-mode: soft-light; opacity:.6; } /* right text column */ .risk-chip .chip-label { flex: 1 1 auto; padding: .5rem .75rem; line-height: 1.25; display: flex; align-items: center; border-left: 1px solid rgba(0,0,0,.08); min-height: 2.25rem; } /* Color assignments for chip */ .risk-chip.is-control-verylow { --chip-bg: var(--c-verylow); --chip-fg: var(--c-verylow-inv); } .risk-chip.is-control-low { --chip-bg: var(--c-low); --chip-fg: var(--c-low-inv); } .risk-chip.is-control-mid { --chip-bg: var(--c-mid); --chip-fg: var(--c-mid-inv); } .risk-chip.is-control-high { --chip-bg: var(--c-high); --chip-fg: var(--c-high-inv); } .risk-chip.is-control-veryhigh{ --chip-bg: var(--c-veryhigh); --chip-fg: var(--c-veryhigh-inv); } /* Responsive */ @media (max-width: 480px) { .risk-chip{ width: 100%; } } @media (max-width: 1215px){ .risk-chip{ --chip-w: 100%; width: var(--chip-w); } } /* ========================= Avatar with badge ========================= */ .avatar-wrap { position: relative; display: inline-block; } .avatar-wrap .badge { position: absolute; top: -0.35rem; right: -0.35rem; min-width: 1.25rem; height: 1.25rem; padding: 0 .25rem; font-size: 0.75rem; line-height: 1.25rem; display: flex; align-items: center; justify-content: center; box-shadow: 0 0 0 2px #fff; } .avatar-wrap .tag.is-medium + .badge { min-width: 1.15rem; height: 1.15rem; font-size: 0.70rem; line-height: 1.15rem; } /* Dark navbar badge shadow */ .navbar.is-dark .avatar-wrap .badge { box-shadow: 0 0 0 2px hsl(229, 53%, 18%); } /* ========================= Bulma Design Changes ========================= */ /* ERP-style horizontal tabs */ .erp-tabs { display: flex; border-bottom: 2px solid var(--prosoft-normal); } .erp-tabs a { padding: 0.5rem 1rem; color: #111; text-decoration: none; font-weight: 500; border-bottom: 3px solid transparent; } .erp-tabs a.is-active { color: var(--prosoft-normal); border-color: var(--prosoft-normal); } .erp-tabs a:hover { background: rgba(0,0,0,.03); }