@import"https://fonts.googleapis.com/css2?family=Domine:wght@400;500;600;700&family=Geist:wght@400;500;600;700;800;900&display=swap";:root{color-scheme:light;--portal-font-heading: "Domine", Georgia, "Times New Roman", serif;--portal-font-body: "Geist", "Segoe UI", "Trebuchet MS", system-ui, sans-serif;--font-heading: var(--portal-font-heading);--font-body: var(--portal-font-body);font-family:var(--portal-font-body);line-height:1.5;font-weight:400;color:#1a2437;background:#e9edf3;--font-heading: "Domine", Georgia, "Times New Roman", serif;--font-body: "Geist", "Segoe UI", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-height:100vh;background:#e9edf3;color:inherit}h1,h2,h3,h4,h5,h6{font-family:var(--portal-font-heading)}a{color:inherit}button,input,textarea,select{font:inherit}.login-shell{height:100dvh;overflow:hidden;background:linear-gradient(135deg,#1e293b,#0f172a 46%,#020617)}.login-layout{width:100%;height:100dvh;display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.login-brand-panel{display:flex}.login-brand-surface{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding:2.5rem 2.8rem;background:radial-gradient(ellipse at 20% 20%,rgba(255,255,255,.07) 0%,transparent 55%),linear-gradient(160deg,#243550,#1a2a44,#0f1e35);color:#fff}.login-brand-top{display:flex;align-items:flex-start}.login-logo-image{display:block;width:auto;height:2.4rem;object-fit:contain;filter:brightness(0) invert(1)}.login-brand-bottom{display:flex;flex-direction:column;gap:1rem}.login-brand-copy{display:grid;gap:.5rem}.login-brand-title{margin:0;font-size:clamp(1.9rem,3vw,2.6rem);font-weight:800;line-height:1.1;color:#fff}.login-brand-tagline{margin:0;font-size:.95rem;color:#fff9;font-weight:400}.login-input-wrap .login-input{padding-right:2.8rem}.login-eye-btn{position:absolute;right:.75rem;display:flex;align-items:center;justify-content:center;border:none;background:none;color:#999;cursor:pointer;padding:.25rem;line-height:0}.login-eye-btn svg{width:1.1rem;height:1.1rem}.login-form-panel{display:flex;align-items:center;justify-content:center;padding:2rem 1.5rem;background:#fff;overflow-y:auto}.login-form-card{width:min(100%,26rem);display:grid;gap:1.1rem}.login-form-head{display:grid;gap:.4rem}.login-form-head h2{margin:0;font-size:clamp(1.5rem,2vw,1.85rem);font-weight:800;line-height:1.1;color:#1a1a1a}.login-form-subcopy{margin:0;color:#888;font-size:.88rem}.login-error-banner{margin:0;padding:.75rem 1rem;border-radius:.75rem;border:1px solid #f3c6cc;background:#fff2f4;color:#b12646;font-size:.88rem;font-weight:600}.login-form{display:grid;gap:.9rem}.login-field{display:grid;gap:.35rem}.login-field>span{font-size:.85rem;font-weight:600;color:#333}.login-input{width:100%;min-height:2.8rem;padding:.7rem .9rem;border-radius:.6rem;border:1px solid #d8d8d8;background:#fafafa;color:#1a1a1a;font-size:.95rem;transition:border-color .13s,box-shadow .13s}.login-input:focus{outline:none;border-color:#1e293b;box-shadow:0 0 0 3px #1e293b1f;background:#fff}.login-forgot{display:block;text-align:right;font-size:.82rem;color:#1e293b;text-decoration:none;font-weight:500}.login-forgot:hover{text-decoration:underline}.login-submit{min-height:2.9rem;border:none;border-radius:.6rem;padding:.8rem 1rem;background:#1a1a1a;color:#fff;font-size:.95rem;font-weight:700;cursor:pointer;transition:background .13s,opacity .13s}.login-submit:hover:not(:disabled){background:#2d2d2d}.login-submit:disabled{opacity:.55;cursor:not-allowed}.login-shell{height:100dvh;overflow:hidden;background:#fff}.login-layout{width:100%;height:100dvh;display:grid;grid-template-columns:60.2% 39.8%;overflow:hidden}.login-brand-surface{position:relative;flex:1;display:flex;flex-direction:column;justify-content:space-between;padding:30px 30px 82px;background:linear-gradient(180deg,#638cd7 8.64%,#3338c3 71.63%,#131a90);color:#fff;overflow:hidden}.login-brand-surface:before{content:"";position:absolute;left:40px;top:34%;width:520px;height:260px;background:#ffffff47;border-radius:50%;filter:blur(78px);transform:translateY(-50%);pointer-events:none}.login-brand-surface>*{position:relative;z-index:1}.login-logo-lockup{display:inline-flex;align-items:center;height:32px;flex-shrink:0;gap:.85rem;color:#fff;line-height:1;white-space:nowrap}.login-logo-image{display:block;width:auto;height:1.9rem;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}.login-logo-lockup span{padding-left:.85rem;border-left:1px solid rgba(255,255,255,.45);font-family:Geist,Inter,system-ui,sans-serif;font-size:.9rem;font-weight:500;font-style:normal;letter-spacing:.18em;text-transform:uppercase;color:#ffffffeb;line-height:1;margin:0}.login-brand-bottom{display:flex;flex-direction:column;gap:1.05rem;transform:translateY(18px)}.login-brand-title{margin:0;font-family:var(--font-heading);font-size:clamp(2rem,3.3vw,2.65rem);font-weight:700;line-height:1.1;color:#fff}.login-brand-tagline{margin:0;font-size:.88rem;color:#ffffffed;font-weight:400}.login-form-panel{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;background:#fff;overflow:hidden}.login-lang-row{position:absolute;top:1.25rem;right:1.25rem;z-index:5}.login-lang-btn{display:inline-flex;align-items:center;justify-content:center;gap:.18rem;border:none;border-radius:0;background:#fff;color:#101010;font-size:.68rem;font-weight:500;padding:0;cursor:pointer}.login-lang-btn img{width:1rem;height:1rem;transition:transform .14s ease}.login-lang-btn.is-open img{transform:rotate(180deg)}.login-lang-menu{position:absolute;top:calc(100% + .45rem);right:0;min-width:8.4rem;padding:.3rem;border:1px solid #e1e4ea;border-radius:.45rem;background:#fff;box-shadow:0 10px 24px #0f172a1f}.login-lang-option{width:100%;display:grid;gap:.08rem;border:none;border-radius:.32rem;background:transparent;color:#1a1a1a;padding:.45rem .5rem;text-align:left;cursor:pointer}.login-lang-option:hover,.login-lang-option.is-active{background:#f3f4f6}.login-lang-option span{font-size:.72rem;font-weight:700}.login-lang-option small{color:#646a73;font-size:.66rem;font-weight:500}.login-form-card{width:min(100%,20rem);display:grid;gap:1rem}.login-form-head{display:grid;gap:.15rem}.login-form-head h2{margin:0;font-family:var(--font-heading);font-size:clamp(1.65rem,2.4vw,2rem);font-weight:700;line-height:1.1;color:#111}.login-form-subcopy{margin:0;color:#5f6368;font-size:.68rem}.login-form{display:grid;gap:.65rem}.login-field{display:grid;gap:.26rem}.login-field>span{font-size:.69rem;font-weight:500;color:#5f6368}.login-input{width:100%;min-height:2.15rem;padding:.45rem .65rem;border-radius:.42rem;border:1px solid #c8ccd2;background:#fff;color:#111;font-size:.76rem;transition:border-color .13s,box-shadow .13s}.login-input:focus{outline:none;border-color:#111;box-shadow:0 0 0 2px #11111114;background:#fff}.login-input-wrap{position:relative;display:flex;align-items:center}.login-input-wrap .login-input{padding-right:2.45rem}.login-eye-btn{position:absolute;right:.66rem;display:flex;align-items:center;justify-content:center;border:none;background:none;color:#6b6f76;cursor:pointer;padding:.25rem;line-height:0}.login-eye-btn:hover{color:#555}.login-eye-btn svg{width:.95rem;height:.95rem}.login-forgot{display:block;text-align:right;font-size:.66rem;color:#333;text-decoration:none;font-weight:500;white-space:nowrap}.login-submit{min-height:2.2rem;border:none;border-radius:.36rem;padding:.58rem 1rem;background:#2b2e34;color:#fff;font-size:.72rem;font-weight:700;cursor:pointer;transition:background .13s,opacity .13s}.login-submit:hover:not(:disabled){background:#1f2227}.portal-shell{height:100vh;overflow:hidden;display:flex;background:radial-gradient(circle at top left,rgba(255,231,236,.22),transparent 22%),linear-gradient(180deg,#f2f4fa,#eceff6)}.portal-sidebar{position:sticky;top:12px;display:flex;flex-direction:column;width:248px;min-width:248px;height:calc(100vh - 24px);margin:12px 0 12px 12px;background:#fff;color:#1a2437;border:1px solid #e8ecf2;border-radius:18px;box-shadow:0 2px 12px #0000000f;z-index:10;overflow:visible;transition:width .2s cubic-bezier(.4,0,.2,1),min-width .2s cubic-bezier(.4,0,.2,1)}.portal-shell.is-collapsed .portal-sidebar{width:58px;min-width:58px}.portal-brand{padding:1rem .9rem .75rem;border-bottom:none;transition:padding .2s ease}.portal-brand-lockup{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.portal-sidebar-collapse-toggle{display:inline-flex;align-items:center;justify-content:center;width:1.9rem;min-width:1.9rem;height:1.9rem;margin-left:auto;border-radius:.6rem;border:1px solid #e2e8f0;background:#f8f9fb;color:#64748b;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.portal-sidebar-collapse-toggle:hover{background:#edf0f7;border-color:#c0cad8;color:#1a2437}.portal-sidebar-collapse-toggle svg{width:1.2rem;height:1.2rem}.portal-shell.is-collapsed .portal-brand{padding:1rem .75rem}.portal-shell.is-collapsed .portal-brand-lockup{justify-content:center;gap:0}.portal-shell.is-collapsed .portal-sidebar-collapse-toggle{margin-left:0}.portal-brand-logo{display:block;width:2.4rem;height:2.4rem;object-fit:contain;border-radius:.75rem}.portal-shell.is-collapsed .portal-brand-logo,.portal-brand-copy{display:none}.portal-brand-title{font-size:.88rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#1a2437}.portal-shell.is-collapsed .portal-brand-copy,.portal-sidebar-contract{display:none}.portal-sidebar-contract-wrap{position:relative}.portal-sidebar-contract-label{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8}.portal-sidebar-contract-trigger{width:100%;min-height:2.7rem;display:flex;align-items:center;justify-content:space-between;gap:.65rem;padding:.65rem .8rem;border-radius:.9rem;border:1px solid rgba(148,163,184,.18);background:#f1f5f91f;color:#f1f5f9;box-shadow:inset 0 1px #ffffff14;text-align:left;cursor:pointer;transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease,transform .14s ease}.portal-sidebar-contract-trigger:hover:not(:disabled),.portal-sidebar-contract-trigger.is-open{border-color:#94a3b8c7;background:#f1f5f929;box-shadow:0 8px 20px #0206172e}.portal-sidebar-contract-trigger:disabled{cursor:not-allowed;opacity:.7}.portal-sidebar-contract-trigger:focus{outline:none;border-color:#94a3b8c7;box-shadow:0 0 0 3px #94a3b82e}.portal-sidebar-contract-trigger-copy{display:grid;min-width:0}.portal-sidebar-contract-trigger-copy strong{font-size:.92rem;font-weight:700;color:#f1f5f9}.portal-sidebar-contract-trigger-caret{display:inline-flex;align-items:center;justify-content:center;width:1rem;min-width:1rem;height:1rem;color:#cbd5e1;transform:rotate(-90deg);transition:transform .14s ease}.portal-sidebar-contract-trigger.is-open .portal-sidebar-contract-trigger-caret{transform:rotate(0)}.portal-sidebar-contract-menu{position:absolute;left:0;right:0;top:calc(100% + .45rem);padding:.4rem;border:1px solid rgba(148,163,184,.2);border-radius:.95rem;background:#151d2e;box-shadow:0 16px 30px #0206173d;z-index:30}.portal-sidebar-contract-group{display:grid;gap:.28rem}.portal-sidebar-contract-group+.portal-sidebar-contract-group{margin-top:.45rem;padding-top:.45rem;border-top:1px solid rgba(148,163,184,.1)}.portal-sidebar-contract-group-label{padding:0 .45rem;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8}.portal-sidebar-contract-group-items{display:grid;gap:.18rem}.portal-sidebar-contract-menu-item{width:100%;border:none;border-radius:.75rem;background:transparent;color:#f1f5f9;text-align:left;padding:.78rem .85rem;font-size:.9rem;font-weight:600;cursor:pointer}.portal-sidebar-contract-menu-item-title{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.portal-sidebar-contract-menu-item:hover,.portal-sidebar-contract-menu-item.is-active{background:#f1f5f91f}.portal-sidebar-contract-menu-item.is-active{color:#94a3b8}.portal-sidebar-contract-note{font-size:.76rem;color:#94a3b8;line-height:1.35}.portal-shell.is-collapsed .portal-sidebar-contract{display:none}.portal-nav{display:flex;flex-direction:column;gap:.25rem;padding:.75rem .9rem;flex:1;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.portal-nav::-webkit-scrollbar{width:0;height:0}.portal-nav-loading{padding:.9rem .75rem;font-size:.86rem;color:#cbd5e1}.portal-nav-section{display:grid;gap:.25rem}.portal-nav-section-title{display:none}.portal-shell.is-collapsed .portal-nav{padding-left:.75rem;padding-right:.75rem;align-items:center}.portal-nav-item{display:flex;align-items:center;gap:.75rem;min-height:2.75rem;padding:.65rem .85rem;border-radius:.85rem;color:#5a6680;text-decoration:none;transition:background-color .14s ease,color .14s ease}.portal-shell.is-collapsed .portal-nav-item{justify-content:center;width:2.1rem;height:2.1rem;min-height:2.1rem;padding:0;border-radius:.75rem;border:1px solid #e8ecf2;background:#f8f9fb}.portal-nav-item:hover{color:#1a2437;background:#f3f5fa}.portal-shell.is-collapsed .portal-nav-item:hover{background:#edf0f7;border-color:#c0cad8;color:#1a2437}.portal-nav-item.is-active{color:#fff;border-radius:8px;background:linear-gradient(90deg,#131a90,#3338c3 28.37%,#638cd7);box-shadow:0 2px 8px #638cd759}.portal-shell.is-collapsed .portal-nav-item.is-active{border-color:transparent;border-radius:8px;background:linear-gradient(90deg,#131a90,#3338c3 28.37%,#638cd7);box-shadow:0 2px 8px #638cd759}.portal-nav-item-icon{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;min-width:1.25rem;height:1.25rem}.portal-nav-item-icon svg{width:100%;height:100%}.portal-nav-item-img{width:100%;height:100%;object-fit:contain}.portal-nav-item.is-active .portal-nav-item-img,.portal-nav-item.is-active .portal-sidebar-link-icon .portal-nav-item-img{filter:brightness(0) invert(1)}.portal-nav-item-label{font-size:.9rem;font-weight:500;line-height:1.2}.portal-shell.is-collapsed .portal-nav-item-label{display:none}.portal-sidebar-footer{margin-top:auto;padding:.75rem .9rem 1rem;border-top:none;transition:padding .2s ease}.portal-shell.is-collapsed .portal-sidebar-footer{padding-left:.75rem;padding-right:.75rem;display:flex;justify-content:center}.portal-sidebar-link{display:flex;align-items:center;gap:.65rem;width:100%;padding:.75rem .85rem;border:1px solid #e8ecf2;border-radius:.85rem;background:#f8f9fb;color:#5a6680;cursor:pointer;text-align:left;font-size:.9rem;font-weight:600;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.portal-shell.is-collapsed .portal-sidebar-link{justify-content:center;width:2.6rem;height:2.6rem;padding:0;border-radius:.75rem}.portal-sidebar-link:hover{color:#1a2437;background:#edf0f7;border-color:#c0cad8}.portal-sidebar-link-icon{display:inline-flex;align-items:center;justify-content:center;width:1.15rem;min-width:1.15rem;height:1.15rem}.portal-sidebar-link-icon svg,.portal-sidebar-link-icon img{width:100%;height:100%;object-fit:contain}.portal-shell.is-collapsed .portal-sidebar-link-label{display:none}.portal-panel{min-width:0;min-height:0;display:flex;flex-direction:column;flex:1;overflow:hidden;overflow-x:hidden}.portal-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4.35rem;padding:.95rem 2.35rem .8rem;flex-shrink:0}.portal-topbar-context{display:flex;align-items:center;gap:.9rem;min-width:0}.portal-topbar-identity{display:flex;align-items:center;gap:.8rem;min-width:0}.portal-topbar-context-copy{display:grid;gap:.08rem}.portal-topbar-context-copy strong{font-size:.92rem;color:#1e2a42}.portal-topbar-context-copy span{font-size:.79rem;color:#6d7d97}.portal-mobile-toggle{display:none;padding:.6rem .95rem;border-radius:.8rem;border:1px solid #d8e0ec;background:#fff;color:#223048;font-weight:600;cursor:pointer}.portal-topbar-profile{display:flex;align-items:center;gap:.8rem;margin-left:auto}.portal-topbar-contract-wrap{position:relative}.portal-topbar-contract{display:inline-flex;align-items:center;gap:.75rem;padding:.65rem .8rem .65rem .95rem;border:1px solid #d8e0ec;border-radius:1rem;background:linear-gradient(180deg,#fff,#f8fbff);color:#223048;cursor:pointer;box-shadow:0 10px 24px #1b273a0f;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.portal-topbar-contract:hover,.portal-topbar-contract.is-open{border-color:#4f7dff59;box-shadow:0 14px 28px #1b273a1a;transform:translateY(-1px)}.portal-topbar-contract-copy{display:grid;gap:.08rem;text-align:left}.portal-topbar-contract-copy strong{font-size:.82rem;color:#173047;text-transform:capitalize}.portal-topbar-contract-copy span{font-size:.76rem;color:#6d7d97;max-width:13rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-topbar-contract-caret{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;color:#60708a}.portal-topbar-contract-caret svg{width:100%;height:100%}.portal-topbar-contract-menu{position:absolute;right:0;top:calc(100% + .5rem);min-width:13rem;padding:.45rem;border:1px solid rgba(216,224,236,.95);border-radius:1rem;background:#fff;box-shadow:0 18px 40px #0f172a24;z-index:60}.portal-topbar-contract-menu-item{width:100%;border:none;border-radius:.75rem;background:transparent;color:#173047;text-align:left;padding:.8rem .9rem;font-size:.92rem;font-weight:600;cursor:pointer}.portal-topbar-contract-menu-item:hover{background:#f3f7fd}.icon-action-button-wrap{position:relative;display:inline-flex}.icon-action-tooltip{position:absolute;left:50%;bottom:calc(100% + .45rem);transform:translate(-50%) translateY(4px);padding:.38rem .55rem;border-radius:.55rem;background:#111827f5;color:#fff;font-size:.9rem;font-weight:600;line-height:1;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .14s ease,transform .14s ease,visibility .14s ease;z-index:80}.icon-action-tooltip:after{content:"";position:absolute;left:50%;top:100%;transform:translate(-50%);border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid rgba(17,24,39,.96)}.icon-action-button-wrap:hover .icon-action-tooltip,.icon-action-button-wrap:focus-within .icon-action-tooltip{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.portal-topbar-avatar{display:grid;place-items:center;width:2.2rem;min-width:2.2rem;height:2.2rem;border-radius:999px;background:#3d4b63;color:#fff;font-size:.9rem;font-weight:700;border:none;cursor:pointer;padding:0;flex-shrink:0}.portal-topbar-meta{display:grid;gap:.05rem}.portal-topbar-meta strong{font-family:var(--portal-font-body);font-size:.9rem;color:#1a2437}.portal-topbar-meta span{font-size:.77rem;color:#6d7d97}.portal-language-switch{display:inline-flex;align-items:center;gap:.4rem;min-height:2.4rem;padding:.4rem .85rem .4rem .7rem;border:1px solid #d8e0ec;border-radius:999px;background:#fff;color:#223048;font-size:.88rem;font-weight:600;cursor:pointer;transition:border-color .14s ease,background-color .14s ease}.portal-language-switch:hover{border-color:#b0bdd0;background:#f5f7fb}.portal-language-switch-icon{display:inline-flex;align-items:center;justify-content:center;color:#5a6680}.portal-language-switch-icon svg,.portal-language-switch-icon-img{width:1.05rem;height:1.05rem;object-fit:contain}.portal-language-switch-label{font-size:.88rem;font-weight:600;color:#1a2437}.portal-language-switch-caret{display:inline-flex;align-items:center;justify-content:center;color:#64748b;transition:transform .14s ease}.portal-language-switch.is-open .portal-language-switch-caret{transform:rotate(180deg)}.portal-language-switch-caret svg{width:.85rem;height:.85rem}.portal-language-wrap{position:relative}.portal-language-menu{position:absolute;right:0;top:calc(100% + .4rem);min-width:11rem;padding:.4rem;border:1px solid #e2e8f0;border-radius:.95rem;background:#fff;box-shadow:0 8px 24px #0000001a;z-index:60}.portal-language-menu-item{display:grid;gap:.06rem;width:100%;padding:.55rem .85rem;border:none;border-radius:.45rem;background:transparent;color:#1a2437;text-align:left;cursor:pointer;transition:background-color .12s ease}.portal-language-menu-item:hover{background:#f3f5fa}.portal-language-menu-item.is-active{background:#f3f5fa;color:#8b1437}.portal-language-menu-item-label{font-size:.82rem;font-weight:700;color:#1a2437}.portal-language-menu-item.is-active .portal-language-menu-item-label{color:#8b1437}.portal-language-menu-item-full{font-size:.7rem;font-weight:500;color:#6b7a96}.portal-language-menu-item.is-active .portal-language-menu-item-full{color:#a8324f}.portal-main{flex:1;overflow-y:auto;padding:1.7rem 2.35rem 2.4rem}.portal-page-frame{width:100%;max-width:none;margin:0 auto;display:grid;gap:1.15rem;min-width:0}.portal-page-frame--dashboard{max-width:none}.portal-page-hero h2{margin:0;font-family:var(--font-heading);font-size:1.9rem;line-height:1.05;color:#202020}.portal-page-hero p{margin:.35rem 0 0;font-size:.92rem;color:#6d7d97}.portal-content{min-width:0}.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.dash-card{display:flex;flex-direction:column;height:19rem;border-radius:1rem;background:#fff;border:1px solid #e5ebf3;box-shadow:0 4px 16px #0f172a0d;overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}.dash-card:hover{box-shadow:0 8px 28px #0f172a17;transform:translateY(-2px)}.dash-count{display:inline-flex;align-items:center;justify-content:center;min-width:2.2rem;height:2.2rem;padding:0 .55rem;border-radius:.65rem;font-size:1.15rem;font-weight:800;line-height:1;color:var(--accent, #1d2b44);background:color-mix(in srgb,var(--accent, #1d2b44) 8%,transparent)}.dash-scroll{flex:1;min-height:0;overflow-y:auto;padding-right:.35rem}.dash-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;height:100%;color:#8090aa}.dash-row{display:grid;gap:.15rem;padding:.55rem .65rem;border-radius:.6rem;background:#f8fafc;border:1px solid transparent;transition:background-color .14s ease,border-color .14s ease}.dash-row:hover{background:#f1f5f9;border-color:#e2e8f0}@keyframes dash-spin{to{transform:rotate(360deg)}}.dashboard-list-scroll{scrollbar-width:thin;scrollbar-color:#8f8f8f transparent}.dashboard-list-scroll::-webkit-scrollbar{width:12px}.dashboard-list-scroll::-webkit-scrollbar-track{background:transparent}.dashboard-list-scroll::-webkit-scrollbar-thumb{background:#949494;border-radius:999px;border:3px solid transparent;background-clip:content-box}.dashboard-list-scroll::-webkit-scrollbar-thumb:hover{background:#7f7f7f;background-clip:content-box}.dashboard-list-scroll::-webkit-scrollbar-button:single-button{display:block;height:12px;background-color:transparent;background-repeat:no-repeat;background-position:center;background-size:8px 8px}.dashboard-list-scroll::-webkit-scrollbar-button:single-button:vertical:decrement{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Cpath fill='%238f8f8f' d='M4 2L1 6h6z'/%3E%3C/svg%3E")}.dashboard-list-scroll::-webkit-scrollbar-button:single-button:vertical:increment{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Cpath fill='%238f8f8f' d='M1 2h6L4 6z'/%3E%3C/svg%3E")}.role-management-page{--role-ink: #17324d;--role-muted: #5f7590;--role-line: #cfe0f5;--role-panel: #ffffff;--role-accent: #2563eb;--role-accent-soft: #dbeafe;--role-blue-bg: #f4f9ff}.role-hero-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,220px);gap:24px;align-items:stretch;padding:28px;border:1px solid var(--role-line);border-radius:8px;background:linear-gradient(135deg,rgba(37,99,235,.11),transparent 42%),#f8fbff}.role-eyebrow{margin:0 0 8px;color:var(--role-accent);font-size:.9rem;font-weight:800;text-transform:uppercase}.role-hero-panel h1{margin:0;color:var(--role-ink);font-size:1.9rem}.role-hero-panel p{max-width:720px;margin:10px 0 0;color:var(--role-muted);line-height:1.55}.role-hero-meter{display:flex;flex-direction:column;justify-content:center;min-height:130px;padding:18px;border:1px solid #bfdbfe;border-radius:8px;background:var(--role-accent-soft)}.role-hero-meter strong{color:var(--role-accent);font-size:2.4rem;line-height:1}.role-hero-meter span{margin-top:8px;color:#1d4ed8;font-weight:700}.role-management-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px}.role-list-panel,.role-component-panel{border:1px solid var(--role-line);border-radius:8px;background:var(--role-panel)}.role-list-panel{display:flex;flex-direction:column;overflow:hidden;background:#f8fbff}.role-add-panel{display:grid;gap:10px;padding:14px;border-bottom:1px solid var(--role-line);background:#eff6ff}.role-add-panel input{width:100%;min-height:40px;padding:0 12px;border:1px solid #bfdbfe;border-radius:8px;background:#fff;color:var(--role-ink);font:inherit}.role-add-panel input:focus{outline:2px solid rgba(37,99,235,.22);border-color:#60a5fa}.role-add-button{min-height:40px;border:0;border-radius:8px;background:var(--role-accent);color:#fff;font-weight:800;cursor:pointer}.role-add-button:hover{background:#1d4ed8}.role-list-scroll{max-height:310px;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.role-list-scroll::-webkit-scrollbar{width:0;height:0}.role-list-row{display:flex;align-items:stretch;width:100%;min-height:62px;border-bottom:1px solid #edf2f7;color:var(--role-ink)}.role-list-main{display:flex;justify-content:space-between;gap:14px;min-width:0;flex:1;padding:16px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.role-list-row:hover,.role-list-row.is-active{background:#eff6ff}.role-list-row.is-active{box-shadow:inset 4px 0 0 var(--role-accent)}.role-list-main strong,.role-list-main small,.role-list-actions em{display:block}.role-list-main small{margin-top:3px;color:var(--role-muted)}.role-list-actions{display:inline-flex;align-items:center;gap:8px;padding-right:12px}.role-list-actions em{min-width:34px;height:28px;border-radius:999px;background:#e2e8f0;color:#334155;font-style:normal;font-weight:800;line-height:28px;text-align:center}.role-delete-button{display:inline-flex;align-items:center;justify-content:center;width:32px;min-width:32px;height:32px;border:1px solid #fecaca;border-radius:8px;background:#fff;color:#b91c1c;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.role-delete-button svg{width:16px;height:16px}.role-delete-button:hover:not(:disabled){background:#fef2f2;border-color:#fca5a5;color:#991b1b}.role-delete-button:disabled{opacity:.55;cursor:not-allowed}.role-component-panel{padding:20px}.role-component-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.role-component-heading h2,.role-component-heading p{margin:0}.role-component-heading p{margin-top:4px;color:var(--role-muted)}.role-heading-title{display:inline-flex;align-items:center;gap:10px;min-width:0}.role-heading-delete-button{width:36px;min-width:36px;height:36px}.role-actions{display:flex;gap:10px}.role-component-matrix{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.role-component-toggle{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px 12px;align-items:center;min-height:78px;padding:13px;border:1px solid var(--role-line);border-radius:8px;background:#fff;color:var(--role-ink);text-align:left;cursor:pointer}.role-component-toggle:hover{border-color:#93c5fd}.role-component-toggle.is-enabled{border-color:#60a5fa;background:#eff6ff}.role-component-toggle.is-locked{cursor:not-allowed}.role-toggle-mark{grid-row:span 2;width:44px;padding:5px 0;border-radius:999px;background:#e2e8f0;color:#64748b;font-size:.72rem;font-weight:800;text-align:center}.role-component-toggle.is-enabled .role-toggle-mark{background:var(--role-accent);color:#fff}.role-component-toggle small{color:var(--role-muted)}.role-delete-modal{width:min(440px,100%)}.role-delete-modal-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.role-delete-modal-header h3{margin:0}.role-delete-modal-close{border:none;background:transparent;color:#7a8aa6;font-size:1.1rem;line-height:1;cursor:pointer}.role-delete-modal p{margin:0 0 .75rem;color:#1e2a42}.role-delete-modal-note{color:#607285;font-size:.9rem}.role-delete-modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.25rem}@media (max-width: 900px){.role-hero-panel,.role-management-grid{grid-template-columns:1fr}}.dashboard-hidden-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.dashboard-hidden-scrollbar::-webkit-scrollbar{display:none}.dashboard-stack{display:grid;gap:1.5rem}.dashboard-filter-row{display:flex;align-items:center;gap:1rem;min-height:2rem}.dashboard-period-button{display:inline-flex;align-items:center;gap:.62rem;min-height:2.25rem;padding:.45rem .95rem;border:1px solid #c9ced8;border-radius:999px;background:#fff;color:#202020;font-size:.88rem;font-weight:500;cursor:pointer}.dashboard-period-button svg{width:1rem;height:1rem}.dashboard-period-button svg:last-child{width:.8rem;height:.8rem}.dashboard-period-button:hover{border-color:#aeb5c1;background:#fafbfc}.dashboard-period-menu{position:absolute;left:0;top:calc(100% + .4rem);z-index:60;min-width:12rem;padding:.35rem;background:#fff;border:1px solid #e2e8f0;border-radius:.85rem;box-shadow:0 8px 24px #0000001a}.dashboard-period-menu-item{display:block;width:100%;text-align:left;padding:.6rem .85rem;border:none;border-radius:.5rem;background:transparent;color:#1a2437;font-size:.9rem;font-weight:500;cursor:pointer}.dashboard-period-menu-item:hover{background:#f3f5fa}.dashboard-period-menu-item.is-active{background:#eef2ff;font-weight:700;color:#1e293b}.dashboard-date-range{color:#626262;font-size:.92rem;font-weight:500}.dashboard-approval-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.5rem;padding:.85rem 1.35rem .85rem 1.45rem;border:1px solid #7fa8ff;border-radius:.6rem;background:#e7f2ff;color:#202020;font-size:.9rem;font-weight:500}.dashboard-banner-close{display:inline-flex;align-items:center;justify-content:center;width:1.55rem;min-width:1.55rem;height:1.55rem;border:none;border-radius:999px;background:transparent;color:#111;cursor:pointer}.dashboard-banner-close:hover{background:#24365614}.dashboard-banner-close svg{width:1rem;height:1rem}.dashboard-chart-grid,.dashboard-pending-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.dashboard-card-panel,.dashboard-pending-card{min-width:0;border:1px solid #dde1e8;border-radius:1.35rem;background:#fff;box-shadow:none}.dashboard-card-panel{min-height:18.25rem;padding:1.55rem 1.45rem 1.35rem;display:grid;grid-template-rows:auto 1fr;gap:1.35rem}.dashboard-card-panel h3,.dashboard-pending-card h3{margin:0;color:#666;font-size:1rem;font-weight:700;line-height:1.2}.dashboard-donut-layout{display:grid;grid-template-columns:minmax(8.5rem,9.75rem) minmax(0,1fr);align-items:center;gap:1rem;min-width:0}.dashboard-donut-figure{display:grid;place-items:center;min-width:0}.dashboard-donut-svg{display:block;width:min(100%,9.75rem);overflow:visible}.dashboard-donut-segment{cursor:pointer;transition:opacity .15s ease,transform .15s ease}.dashboard-donut-total{fill:#10203c;font-size:1rem;font-weight:800}.dashboard-donut-caption{fill:#647083;font-size:.54rem;font-weight:500}.dashboard-donut-legend{display:grid;gap:.75rem;min-width:0}.dashboard-legend-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.48rem;min-width:0;color:#17243e;font-size:.68rem;line-height:1.2}.dashboard-legend-dot{width:.44rem;height:.44rem;border-radius:999px}.dashboard-legend-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-legend-value{color:#061329;font-size:.7rem;font-weight:800}.dashboard-legend-row.is-active .dashboard-legend-label,.dashboard-legend-row.is-active .dashboard-legend-value{color:#000}.dashboard-pending-card{min-height:25rem;padding:1.55rem 1.45rem 1.25rem;display:grid;grid-template-rows:auto 1fr auto;gap:1.45rem}.dashboard-pending-head{display:flex;align-items:center;gap:.85rem;min-width:0}.dashboard-count-pill{display:inline-flex;align-items:center;justify-content:center;min-height:1.45rem;padding:.15rem .55rem;border-radius:999px;background:#e7ebfb;color:#316eff;font-size:.9rem;font-weight:500;line-height:1;white-space:nowrap}.dashboard-pending-list{display:grid;align-content:start;gap:.5rem;max-height:16.35rem;overflow-y:auto;padding-right:.05rem}.dashboard-pending-row{display:grid;gap:.25rem;min-height:4.25rem;padding:.7rem 1rem;border-radius:.65rem;background:#f6f6f7;color:#4f4f4f;text-decoration:none}.dashboard-pending-row:hover{background:#eff2f7}.dashboard-pending-row strong{color:#4f4f4f;font-size:.94rem;font-weight:800;line-height:1.25}.dashboard-pending-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6f6f6f;font-size:.87rem;line-height:1.25}.dashboard-empty-state{display:grid;place-items:center;min-height:8.5rem;color:#9a9a9a;text-align:center;font-size:1rem;font-weight:400}.dashboard-view-link{display:inline-flex;align-items:center;gap:.45rem;justify-self:start;color:#171717;font-size:.9rem;font-weight:800;text-decoration:none}.dashboard-view-link svg{width:1rem;height:1rem}.dashboard-loading{display:flex;align-items:center;justify-content:center;padding:3rem;color:#6d7d97}.dashboard-loading svg{margin-right:.6rem;animation:dash-spin 1s linear infinite}.portal-grid{display:grid;gap:1rem}.portal-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-card{display:grid;gap:.5rem;padding:1.25rem;border-radius:1rem;background:#fff;border:1px solid #e5ebf3;box-shadow:0 12px 28px #1b273a0d}.portal-card-kicker{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#8090aa}.portal-card-value{font-size:1.7rem;line-height:1;font-weight:800;color:#1e2a42}.portal-card-note,.portal-section-subtitle{color:#677894;font-size:.9rem}.portal-links-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-link-card{display:grid;gap:.35rem;padding:1rem 1.1rem;border-radius:1rem;background:#fff;border:1px solid #e5ebf3;text-decoration:none;box-shadow:0 10px 20px #1b273a0a}.portal-link-card:hover{border-color:#c8d5ea}.portal-link-card-label{font-size:.98rem;font-weight:700}.portal-link-card-summary{color:#677894;font-size:.88rem}.portal-section-block{display:grid;gap:.75rem}.portal-section-block h3,.portal-section-block h4{margin:0;color:#1e2a42}.portal-page-stack{display:grid;gap:1rem}.portal-back-link{display:inline-flex;align-items:center;gap:.4rem;align-self:flex-start;justify-self:start;padding:.25rem 0;font-size:.85rem;font-weight:600;color:#5d6b84;background:none;border:none;text-decoration:none;cursor:pointer;transition:color .14s ease}.portal-back-link:hover{color:#8b1437}.portal-back-link-arrow{font-size:1rem;line-height:1;transition:transform .14s ease}.portal-back-link:hover .portal-back-link-arrow{transform:translate(-2px)}.meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:1rem 1.4rem}.meta-item{display:flex;flex-direction:column;gap:.2rem;min-width:0}.meta-label{font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#7a8aa6}.meta-value{font-size:.95rem;font-weight:600;color:#1d2b44;word-break:break-word}.meta-value--mono{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.88rem}.button-primary--sm,.button-secondary--sm,.button-ghost--sm,.button-danger--sm{min-height:2rem;padding:.35rem .75rem;font-size:.9rem;border-radius:.55rem}.workflow-instance{padding:1rem 1.1rem;border:1px solid #e5ebf3;border-radius:.9rem;background:#f9fbfe}.workflow-instance+.workflow-instance{margin-top:1rem}.workflow-instance-header{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin-bottom:.9rem}.workflow-instance-type{font-weight:700;color:#1d2b44;font-size:.95rem}.workflow-instance-id{font-size:.9rem;color:#7a8aa6;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.step-chip{display:inline-flex;align-items:center;min-height:1.55rem;padding:.18rem .5rem;border-radius:.4rem;font-size:.74rem;font-weight:700;line-height:1.2;border:1px solid transparent}.step-chip--pending,.step-chip--skipped{color:#61728d;background:#eef2f8;border-color:#d8dfeb}.step-chip--in-progress{color:#2968ca;background:#eaf1ff;border-color:#c7d6f3}.step-chip--completed{color:#167948;background:#e8fbef;border-color:#bde5cc}.step-chip--error{color:#be334b;background:#ffe7ec;border-color:#f2c4cf}.step-error-detail{font-size:.82rem;color:#be334b}.panel-status{padding:1rem 1.2rem;color:#7a8aa6;font-size:.9rem}.panel-status--error{color:#be334b}.surface-card{background:#fff;border:1px solid #e5ebf3;border-radius:1rem;box-shadow:0 12px 28px #1b273a0d;min-width:0}.surface-card--pad{padding:1.15rem 1.2rem}.surface-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.2rem 0}.surface-card-header--flush{padding-bottom:1rem}.surface-card-title{margin:0;font-size:1.08rem;font-weight:700;color:#1e2a42}.surface-card-subtitle{margin:.2rem 0 0;font-size:.84rem;color:#7a8aa6}.surface-card-body{padding:1rem 1.2rem 1.2rem}.toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.toolbar-group{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.segmented-tabs{display:inline-flex;flex-wrap:wrap;gap:1rem;border-bottom:1px solid #edf2f7}.segmented-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:.1rem 0 .8rem;margin:0;color:#6d7d97;font-size:.9rem;font-weight:600;cursor:pointer;border-bottom:2px solid transparent}.segmented-tab.is-active{color:#1e293b;border-bottom-color:#1e293b}.control-input,.control-select,.control-textarea{width:100%;padding:.7rem .8rem;border-radius:.8rem;border:1px solid #dbe3ef;background:#fff;color:#24324b}.control-input:focus,.control-select:focus,.control-textarea:focus{outline:none;border-color:#5d8df0;box-shadow:0 0 0 3px #5d8df024}.field-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid--triple{grid-template-columns:repeat(3,minmax(0,1fr))}.field-group{display:grid;gap:.4rem}.field-group label{font-size:.82rem;font-weight:700;color:#40506b}.stack-actions{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}.button-primary,.button-secondary,.button-ghost,.button-danger{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;padding:.7rem 1rem;border-radius:.8rem;border:1px solid transparent;font-size:.88rem;font-weight:700;cursor:pointer;text-decoration:none;white-space:nowrap}.button-primary{color:#fff;background:#1e293b}.button-secondary{color:#223048;background:#fff;border-color:#dbe3ef}.button-ghost{color:#1e293b;background:#e2e8f0}.button-danger{color:#fff;background:linear-gradient(135deg,#dc2626,#b91c1c)}.button-primary:disabled,.button-secondary:disabled,.button-ghost:disabled,.button-danger:disabled{opacity:.55;cursor:not-allowed}.inline-message{font-size:.85rem;font-weight:600}.inline-message--success{color:#17814f}.inline-message--error{color:#be334b}.inline-banner{padding:.9rem 1rem;border-radius:.9rem;font-size:.88rem;border:1px solid #f3d590;background:#fff7dd;color:#956a04}.inline-banner--error{border-color:#f2c4cf;background:#fff1f4;color:#be334b}.inline-banner--success{border-color:#bde5cc;background:#edfbf3;color:#167948}.inline-banner--info{border-color:#c7d6f3;background:#eef4ff;color:#2968ca}.inline-panel{padding:1rem;border-radius:.9rem;border:1px solid #dbe3ef;background:#f9fbfe}.data-table-wrap{overflow-x:auto}.data-table tbody td{padding:.7rem .75rem;vertical-align:middle;border-bottom:1px solid #edf2f7;color:#1a1a1a;font-size:13px;line-height:18px}.status-chip,.metric-chip,.tag-chip{display:inline-flex;align-items:center;justify-content:center;min-height:1.8rem;padding:.2rem .8rem;border-radius:999px;font-size:.72rem;font-weight:800;line-height:1;white-space:nowrap;letter-spacing:.02em}.status-chip--success{color:#167948;background:#e8fbef}.status-chip--warning{color:#9d6a02;background:#fff4cf}.status-chip--danger{color:#be334b;background:#ffe7ec}.status-chip--info{color:#2968ca;background:#eaf1ff}.status-chip--neutral{color:#61728d;background:#eef2f8}.tag-list{display:flex;align-items:flex-start;gap:.35rem;flex-wrap:wrap}.tag-chip{color:#a16a05;background:#fff7dd;border:1px solid #f2d288}.empty-state{padding:1.2rem 1rem;color:#70819e;text-align:center}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:1rem;background:#0a0f1a61;z-index:25}.modal-card{width:min(100%,32rem);padding:1.2rem;border-radius:1rem;background:#fff;border:1px solid #e5ebf3;box-shadow:0 24px 44px #111a2d2e}.modal-card h3{margin-top:0;margin-bottom:.4rem}.transfer-modal-body-scroll{scrollbar-width:thin;scrollbar-color:#b5bcc9 transparent}.transfer-modal-body-scroll::-webkit-scrollbar{width:12px}.transfer-modal-body-scroll::-webkit-scrollbar-track{background:transparent;margin:.6rem 0 1rem}.transfer-modal-body-scroll::-webkit-scrollbar-thumb{background:#94a3b8f2;border-radius:999px;border:3px solid transparent;background-clip:content-box}.transfer-modal-body-scroll::-webkit-scrollbar-thumb:hover{background:#64748b;background-clip:content-box}.portal-overlay{display:none}@media (max-width: 1180px){.portal-shell.is-collapsed .portal-sidebar{width:18.125rem;min-width:18.125rem}.portal-sidebar{position:fixed;top:1rem;left:-20.5rem;height:calc(100vh - 2rem);margin:1rem 0 1rem 1rem;transition:left .18s ease}.portal-sidebar.is-open{left:0}.portal-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0f1a66;z-index:9}.portal-mobile-toggle{display:inline-flex}.portal-sidebar-collapse-toggle{display:none}.portal-topbar{justify-content:space-between;min-height:auto;padding:1rem}.portal-main{padding:.75rem 1rem 1.5rem}}@media (max-width: 920px){.login-layout{grid-template-columns:1fr;height:100dvh}.login-brand-panel{min-height:30vh}.login-form-panel{padding-top:.85rem}.login-logo-image{width:min(100%,12rem)}.portal-metrics,.portal-links-grid,.field-grid,.field-grid--triple,.dash-grid,.dashboard-chart-grid,.dashboard-pending-grid{grid-template-columns:1fr}.surface-card-header,.toolbar-row,.toolbar-group{align-items:stretch}.table-actions{justify-content:flex-start}.portal-topbar{flex-wrap:nowrap}.portal-topbar-context{flex:1 1 auto;min-width:0}}@media (max-width: 720px){.login-shell{padding:0}.login-layout{height:100dvh}.portal-topbar{padding:.9rem 1rem;gap:.6rem}.portal-topbar-profile{gap:.55rem;flex:0 0 auto}.portal-topbar-contract-copy span,.portal-topbar-meta span{display:none}.portal-topbar-avatar{width:1.8rem;min-width:1.8rem;height:1.8rem;font-size:.72rem}.portal-topbar-meta strong{max-width:8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-topbar-context-copy span,.portal-language-switch-divider{display:none}.portal-page-hero h2{font-size:1.55rem}.dashboard-filter-row{align-items:flex-start;flex-direction:column;gap:.7rem}.dashboard-donut-layout{grid-template-columns:1fr}.dashboard-donut-legend{width:100%}.surface-card-header,.surface-card-body,.surface-card--pad{padding-left:1rem;padding-right:1rem}}.data-table-wrap{overflow-x:auto;border-radius:1rem;background:#fff;border:1px solid rgba(148,163,184,.16);box-shadow:0 4px 16px #0f172a0d}.data-table{width:100%;border-collapse:separate;border-spacing:0}.data-table thead th{padding:.6rem .75rem;text-align:left;white-space:nowrap;color:#4d4d4d;font-size:13px;font-weight:400;line-height:18px;letter-spacing:.5px;background:#eff4f6;border-bottom:1px solid #edf2f7}.data-table thead th:first-child{border-top-left-radius:1rem}.data-table thead th:last-child{border-top-right-radius:1rem}.data-table tbody td{padding:.7rem .75rem;vertical-align:middle;border-bottom:1px solid #edf2f7;color:#1a1a1a;font-size:16px;font-weight:400;line-height:20px;letter-spacing:.5px}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:#fafbfd}.table-strong{display:block;font-weight:700;color:#1d2b44}.table-subtle{display:block;margin-top:.15rem;font-size:.9rem;color:#7a8aa6}.dt-actions-header{text-align:right!important}.dt-action-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1px solid #e8ecf2;border-radius:.5rem;background:#fff;color:#5a6680;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease;flex-shrink:0}.dt-action-btn:hover:not(:disabled){background:#f5f7fb;border-color:#d0d7e3;color:#1a2437}.dt-action-btn:disabled{opacity:.4;cursor:not-allowed}.dt-action-btn.is-danger{color:#c0293e;border-color:#f5c2ca}.dt-action-btn.is-danger:hover:not(:disabled){background:#fff2f4;border-color:#e8909c}.dt-action-btn-svg{display:flex;align-items:center;width:1rem;height:1rem}.dt-action-btn-svg svg{width:100%;height:100%}.dt-action-btn-img{width:1rem;height:1rem;object-fit:contain}.dt-empty{padding:2.5rem 1rem;text-align:center;color:#7a8aa6;font-size:.9rem}.table-actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:nowrap;white-space:nowrap}.search-input-wrap{position:relative;display:inline-flex;align-items:center}.search-input-icon{position:absolute;left:.85rem;display:flex;align-items:center;width:1rem;height:1rem;color:#9aaabb;pointer-events:none}.search-input-icon svg{width:100%;height:100%}.search-input{width:100%;min-height:2.5rem;padding:.5rem 1rem .5rem 2.4rem;border:1px solid #d8dfe9;border-radius:999px;background:#fff;color:#1a2437;font-size:.88rem;transition:border-color .14s ease,box-shadow .14s ease}.search-input::placeholder{color:#a8b4c4}.search-input:focus{outline:none;border-color:#a0aec0;box-shadow:0 0 0 3px #a0aec026}.search-input:disabled{opacity:.5;cursor:not-allowed}.search-input::-webkit-search-cancel-button{cursor:pointer}.filter-dropdown-wrap{position:relative;display:inline-flex}.filter-dropdown-trigger{display:inline-flex;align-items:center;gap:.45rem;min-height:2.5rem;padding:.5rem .9rem;border:1px solid #d8dfe9;border-radius:999px;background:#fff;color:#1a2437;font-size:.88rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:border-color .14s ease,background .14s ease}.filter-dropdown-trigger:hover,.filter-dropdown-trigger.is-open{border-color:#b0bac9;background:#f8fafc}.filter-dropdown-icon{display:flex;align-items:center;width:1rem;height:1rem;color:#5a6680}.filter-dropdown-icon svg{width:100%;height:100%}.filter-dropdown-label{line-height:1.2}.filter-dropdown-caret{display:flex;align-items:center;width:.9rem;height:.9rem;color:#5a6680;transition:transform .18s ease}.filter-dropdown-caret svg{width:100%;height:100%}.filter-dropdown-trigger.is-open .filter-dropdown-caret{transform:rotate(180deg)}.filter-dropdown-menu{position:absolute;top:calc(100% + .4rem);left:0;min-width:180px;background:#fff;border:1px solid #e8ecf2;border-radius:.75rem;box-shadow:0 8px 24px #0000001a;padding:.75rem;z-index:200;display:flex;flex-direction:column;gap:.5rem}.filter-dropdown-menu--right{left:auto;right:0}.filter-menu-fields{display:grid;grid-template-columns:1fr;gap:.5rem}.filter-menu-field{display:grid;gap:.25rem}.filter-menu-field label{font-size:.75rem;font-weight:600;color:#4d4d4d;white-space:nowrap}.filter-menu-field select,.filter-menu-field input{width:100%;padding:.35rem .55rem;border:1px solid #d8dfe9;border-radius:.5rem;background:#fff;color:#1a1a1a;font-size:.82rem;cursor:pointer}.filter-menu-actions{display:flex;justify-content:flex-end;gap:.4rem;margin-top:.1rem}.filter-menu-btn-reset{display:inline-flex;align-items:center;padding:.3rem .75rem;border:1px solid #d8dfe9;border-radius:999px;background:#fff;color:#4d4d4d;font-size:.82rem;font-weight:500;cursor:pointer;transition:background .12s ease}.filter-menu-btn-reset:hover{background:#f5f7fb}.filter-menu-btn-apply{display:inline-flex;align-items:center;padding:.3rem .75rem;border:none;border-radius:999px;background:#2c2f35;color:#fff;font-size:.82rem;font-weight:500;cursor:pointer;transition:opacity .12s ease}.filter-menu-btn-apply:hover{opacity:.88}.action-dropdown-wrap{position:relative;display:inline-flex}.action-dropdown-trigger{gap:.4rem}.action-dropdown-caret{display:flex;align-items:center;flex-shrink:0;width:1rem;height:1rem;transition:transform .18s ease}.action-dropdown-caret svg{width:100%;height:100%}.action-dropdown-trigger.is-open .action-dropdown-caret{transform:rotate(180deg)}.action-dropdown-menu{position:absolute;top:calc(100% + .4rem);left:0;width:max-content;min-width:0;background:#fff;border:1px solid #e8ecf2;border-radius:.85rem;box-shadow:0 8px 24px #0000001a;padding:.35rem;z-index:100;display:flex;flex-direction:column;gap:.1rem}.action-dropdown-menu--right{left:auto;right:0}.action-dropdown-item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.55rem .75rem;border:none;border-radius:.6rem;background:transparent;color:#1a2437;font-size:.88rem;font-weight:500;text-align:left;cursor:pointer;white-space:nowrap;transition:background .12s ease}.action-dropdown-item:hover:not(:disabled){background:#f5f7fb}.action-dropdown-item:disabled{opacity:.45;cursor:not-allowed}.action-dropdown-item.is-danger{color:#c0293e}.action-dropdown-item.is-danger:hover:not(:disabled){background:#fff2f4}.action-dropdown-item-svg{display:flex;align-items:center;flex-shrink:0;width:1rem;height:1rem}.action-dropdown-item-svg svg{width:100%;height:100%}.action-dropdown-item-img{width:1rem;height:1rem;object-fit:contain;flex-shrink:0}.action-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.5rem;padding:.5rem .9rem;border:none;border-radius:999px;background:#2c2f35;color:#fff;font-size:.88rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .14s ease,opacity .14s ease}.action-btn:hover:not(:disabled){opacity:.88}.action-btn:disabled{opacity:.45;cursor:not-allowed}.action-btn-icon-svg{display:flex;align-items:center;flex-shrink:0;width:1rem;height:1rem}.action-btn-icon-svg svg{width:100%;height:100%}.action-btn-icon-img{width:1rem;height:1rem;object-fit:contain;flex-shrink:0}.action-btn-label{line-height:1.2}
