/* BRIT Flow Update-Manager v2 · All selectors are scoped to this module. */
#page .um-app{--um-green:#248744;--um-dark:#122b22;--um-text:#173329;--um-muted:#77867e;--um-border:#e2eae5;--um-bg:#f6f9f7;--um-soft:#eef6f0;width:100%;max-width:1600px;margin:0 auto;color:var(--um-text);font:inherit;display:flex;flex-direction:column;gap:22px;min-width:0;padding:0 0 35px}
#page .um-app *,#umDialogLayer *{box-sizing:border-box}
#page .um-app button,#umDialogLayer button{font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.3}
#page .um-app button:focus-visible,#page .um-app input:focus-visible,#page .um-app select:focus-visible,#umDialogLayer button:focus-visible,#umDialogLayer input:focus-visible,#umDialogLayer select:focus-visible,#umDialogLayer textarea:focus-visible{outline:3px solid #93cfa3;outline-offset:2px}
#page .um-app button:disabled,#umDialogLayer button:disabled{cursor:not-allowed;opacity:.55}
#page .um-app .um-hidden,#umDialogLayer .um-hidden{display:none!important}
#page .um-app h2,#page .um-app h3,#page .um-app h4,#umDialogLayer h3,#umDialogLayer h4,#umDialogLayer h5{color:#142d24;letter-spacing:-.035em}
#page .um-hero{background:linear-gradient(115deg,#153c2d 0%,#194832 58%,#1e5338 100%);color:#fff;border-radius:20px;padding:30px 34px;display:flex;justify-content:space-between;align-items:center;gap:20px;position:relative;overflow:hidden;min-height:172px;box-shadow:0 8px 24px rgba(20,67,42,.1)}
#page .um-hero:after{content:"";position:absolute;width:310px;height:310px;border-radius:50%;right:120px;top:-210px;border:50px solid rgba(255,255,255,.025);pointer-events:none}
#page .um-kicker{font-size:10px;letter-spacing:.17em;font-weight:750;color:#b8e3bd;display:flex;align-items:center;gap:10px;margin-bottom:13px}
#page .um-kicker-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#98d359;box-shadow:0 0 0 4px rgba(152,211,89,.16)}
#page .um-kicker-divider{color:#638b74;font-weight:500}
#page .um-hero h2{color:#fff;font-size:clamp(25px,2.45vw,33px);font-weight:750;letter-spacing:-.04em;margin:0 0 8px;line-height:1.18}
#page .um-hero p{margin:0;color:#c6ddd0;font-size:13.5px;line-height:1.5}
#page .um-hero-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end;position:relative;z-index:1}
#page .um-app .um-btn,#umDialogLayer .um-btn{padding:11px 16px;font-size:13px;border-radius:10px;font-weight:670;white-space:nowrap;border:1px solid transparent;min-height:40px;transition:background .15s,border-color .15s,transform .15s}
#page .um-app .um-btn:hover:not(:disabled),#umDialogLayer .um-btn:hover:not(:disabled){transform:translateY(-1px)}
#page .um-app .um-btn--primary,#umDialogLayer .um-btn--primary{background:#278846;color:white;border-color:#278846;box-shadow:0 3px 7px rgba(22,94,46,.12)}
#page .um-app .um-btn--primary:hover,#umDialogLayer .um-btn--primary:hover{background:#1b713a;border-color:#1b713a}
#page .um-hero .um-btn--primary{background:#9ad054;color:#173820;border-color:#9ad054;box-shadow:none}
#page .um-hero .um-btn--primary:hover{background:#b1dc7f}
#page .um-app .um-btn--outline,#umDialogLayer .um-btn--outline{background:#fff;color:#2d6340;border-color:#d7e5d9;box-shadow:none}
#page .um-app .um-btn--outline:hover,#umDialogLayer .um-btn--outline:hover{background:#f0f8f2;border-color:#b5d1bc}
#page .um-hero .um-btn--outline{color:#fff;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25)}
#page .um-hero .um-btn--outline:hover{background:rgba(255,255,255,.18)}
#page .um-app .um-btn--sm,#umDialogLayer .um-btn--sm{min-height:35px;padding:8px 12px;font-size:12px}
#page .um-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
#page .um-kpi{padding:19px 22px 18px;border:1px solid #e2ebe5;background:#fff;border-radius:15px;min-height:135px;box-shadow:0 3px 14px rgba(22,49,32,.025);display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto auto;gap:2px}
#page .um-kpi-icon{grid-column:2;grid-row:1/3;align-self:start;display:inline-flex;padding:9px;border-radius:10px;background:#f1f7f0;color:#3b8952}
#page .um-kpi-number{grid-column:1;grid-row:1;font-size:34px;font-weight:760;color:#173f2b;line-height:1.1;letter-spacing:-.05em}
#page .um-kpi-label{grid-column:1/3;grid-row:2;font-size:13px;font-weight:720;color:#3d5145;margin-top:6px}
#page .um-kpi-hint{grid-column:1/3;grid-row:3;font-size:11.5px;color:#85948b;margin-top:2px}
#page .um-section{background:#fff;border:1px solid var(--um-border);border-radius:17px;min-height:405px;box-shadow:0 5px 20px rgba(19,63,35,.035);overflow:hidden}
#page .um-navigation{display:flex;align-items:center;gap:22px;overflow-x:auto;padding:0 26px;border-bottom:1px solid var(--um-border);scrollbar-width:thin}
#page .um-navtab{border:0!important;box-shadow:none!important;background:none!important;color:#72827a!important;padding:19px 1px 17px!important;border-radius:0!important;display:flex!important;align-items:center;gap:9px;font-size:13px!important;font-weight:650!important;white-space:nowrap;flex-shrink:0;border-bottom:3px solid transparent!important}
#page .um-navtab:hover{color:#2d7546!important}
#page .um-navtab.is-active{color:#167a3a!important;border-bottom-color:#319353!important}
#page .um-panel{padding:27px 26px 22px}
#page .um-panel-head{display:flex;align-items:end;justify-content:space-between;gap:15px;flex-wrap:wrap;margin:0 0 20px}
#page .um-panel-head h3{margin:0 0 5px;font-size:18px;font-weight:740;line-height:1.25}
#page .um-panel-head p{margin:0;color:#819086;font-size:12.5px}
#page .um-panel-tools{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
#page .um-search,#umDialogLayer .um-search{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #dfe8e0;border-radius:10px;padding:0 12px;height:39px;color:#83958a;min-width:235px}
#page .um-search:focus-within,#umDialogLayer .um-search:focus-within{border-color:#8db99a;box-shadow:0 0 0 3px #eaf6ed}
#page .um-search input,#umDialogLayer .um-search input{border:0!important;box-shadow:none!important;outline:none!important;flex:1;background:transparent;min-width:0;height:100%;font-size:12.5px;color:#16372a;padding:0;width:100%}
#page .um-selectwrap{display:inline-flex;align-items:center;position:relative;min-width:145px;height:39px}
#page .um-selectwrap select{appearance:none;min-width:100%;height:100%;padding:0 32px 0 12px;border:1px solid #dfe8e0;border-radius:10px;background:#fff;color:#355343;font-size:12.5px;cursor:pointer}
#page .um-selectwrap svg{pointer-events:none;position:absolute;right:10px;color:#7e9486}
#page .um-switchline{white-space:nowrap;display:inline-flex;align-items:center;gap:7px;font-size:12px;color:#647b6d;cursor:pointer}
#page .um-switchline input{accent-color:#278846;width:15px;height:15px}
#page .um-tablewrap{width:100%;overflow-x:auto;border:1px solid #e8eee9;border-radius:11px}
#page .um-table{border:0!important;border-collapse:collapse!important;table-layout:auto;width:100%;min-width:700px;background:#fff}
#page .um-table th{padding:13px 16px!important;border-bottom:1px solid #e6ece7!important;background:#f7faf8!important;text-align:left!important;color:#77897e!important;letter-spacing:.045em;font-size:10px!important;text-transform:uppercase;font-weight:750!important;white-space:nowrap}
#page .um-table td{padding:15px 16px!important;border-bottom:1px solid #edf1ee!important;background:transparent!important;text-align:left!important;font-size:12.5px;color:#495d51;vertical-align:middle;white-space:normal}
#page .um-table tbody tr:last-child td{border-bottom:none!important}
#page .um-table tbody tr:hover td{background:#fafcfb!important}
#page .um-table .um-right{text-align:right!important;white-space:nowrap}
#page .um-namecell{display:flex;gap:12px;align-items:center;min-width:165px}
#page .um-namecell strong,#page .um-titlecell strong{display:block;font-weight:730;color:#203b2b;font-size:13px;word-break:break-word}
#page .um-namecell span:not(.um-device-icon),#page .um-titlecell span{display:block;color:#8a9b91;font-size:11.5px;margin-top:3px}
#page .um-device-icon{width:37px;height:37px;flex-shrink:0;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#27894d;background:#edf7ef}
#page .um-count{font-weight:740;font-size:12px;color:#41614b;display:inline-flex;padding:5px 9px;background:#f2f7f2;border-radius:7px}
#page .um-rowbutton{display:inline-flex!important;gap:3px!important;padding:7px 5px!important;font-size:12px!important;color:#21854a!important;font-weight:720!important;background:transparent!important;border:0!important;box-shadow:none!important;white-space:nowrap}
#page .um-rowbutton:hover{color:#185b34!important;text-decoration:underline}
#page .um-badge,#umDialogLayer .um-badge{display:inline-flex;gap:6px;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:690;white-space:nowrap;line-height:1.2}
#page .um-badge i,#umDialogLayer .um-badge i{display:inline-block;background:currentColor;width:6px;height:6px;border-radius:50%}
#page .um-badge--done,#umDialogLayer .um-badge--done{color:#217b46;background:#e8f6ee}
#page .um-badge--failed,#umDialogLayer .um-badge--failed{color:#b54b42;background:#ffefed}
#page .um-badge--working,#umDialogLayer .um-badge--working{color:#9a681a;background:#fff3df}
#page .um-badge--waiting,#umDialogLayer .um-badge--waiting{color:#8960a4;background:#f5effb}
#page .um-badge--planned,#umDialogLayer .um-badge--planned{color:#677a88;background:#eef3f6}
#page .um-badge--muted,#umDialogLayer .um-badge--muted{color:#737f79;background:#eff2f0}
#page .um-tablefoot{padding:13px 3px 2px;text-align:right;font-size:11.5px;color:#8c9d91}
#page .um-packagegrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
#page .um-packagecard{padding:20px;border:1px solid #e4ece6;border-radius:13px;background:#fff;display:flex;flex-direction:column;min-height:260px;gap:10px;box-shadow:0 3px 10px rgba(23,67,38,.025)}
#page .um-package-top{display:flex;justify-content:space-between;align-items:center}
#page .um-package-icon{color:#2e8750;background:#edf7ee;border-radius:10px;padding:9px;display:inline-flex}
#page .um-small-tag,#umDialogLayer .um-small-tag{font-size:10px;border-radius:6px;padding:5px 8px;background:#f0f3f0;color:#78877c;font-weight:670}
#page .um-packagecard h4{margin:2px 0 0;font-size:15px;font-weight:735;line-height:1.4}
#page .um-packagecard p{font-size:12px;line-height:1.5;color:#75877d;margin:0;flex:1}
#page .um-progress-meta{display:flex;justify-content:space-between;color:#697c6f;font-size:11px}
#page .um-progress-meta strong{color:#2b7847}
#page .um-progress{height:6px;border-radius:20px;background:#eaf0e9;overflow:hidden}
#page .um-progress i{height:100%;display:block;background:#55ae68;border-radius:20px}
#page .um-package-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-top:4px}
#page .um-package-bottom>span{color:#819187;display:inline-flex;align-items:center;gap:6px;font-size:11px;white-space:nowrap}
#page .um-responsibility-list{border:1px solid #e6ede8;border-radius:12px;overflow:hidden}
#page .um-responsibility-row{display:flex;align-items:center;gap:15px;padding:16px 18px;border-bottom:1px solid #ebf0ec;background:#fff}
#page .um-responsibility-row:last-child{border-bottom:0}
#page .um-responsibility-row:hover{background:#fafcfb}
#page .um-client-avatar,#umDialogLayer .um-client-avatar{width:40px;height:40px;border-radius:11px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:#eaf5ed;color:#238249;font-size:15px;font-weight:760}
#page .um-responsibility-info{flex:1;min-width:0}
#page .um-responsibility-info h4{font-size:13px;line-height:1.35;margin:0 0 4px}
#page .um-responsibility-info span{font-size:11.5px;color:#83958a}
#page .um-muted{font-size:12px;color:#8b9b91}
#page .um-empty{padding:55px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:11px;color:#89a096}
#page .um-empty>svg{background:#eef7f0;border-radius:14px;color:#398e54;padding:13px;box-sizing:content-box}
#page .um-empty h4,#page .um-empty h2{color:#294334;margin:3px 0 0;font-size:18px}
#page .um-empty p{max-width:410px;color:#829388;font-size:13px;margin:0 0 12px;line-height:1.55}
#page .um-select-tenant select{max-width:330px;padding:10px;border:1px solid #dee6df;border-radius:9px}
#page .um-toast{position:fixed;right:30px;bottom:26px;background:#1f7040;color:#fff;border-radius:11px;padding:13px 17px;font-size:13px;display:flex;gap:9px;align-items:center;max-width:min(450px,calc(100vw - 40px));z-index:9990;box-shadow:0 10px 34px #12432b33}
#page .um-toast--error{background:#a94444}
#page .um-loading{min-height:400px;display:flex;align-items:center;justify-content:center;gap:15px;color:#5d7a67}
#page .um-spinner{width:22px;height:22px;border-radius:50%;border:3px solid #e5efe7;border-top-color:#2b8d4d;animation:um-spin .75s linear infinite}
@keyframes um-spin{to{transform:rotate(360deg)}}
/* Dialogs are placed under body to avoid inherited main-view grid and modal rules. */
body.um-dialog-open{overflow:hidden}
#umDialogLayer{--um-dark:#143425;--um-green:#278846;--um-border:#e1eae3;--um-muted:#7e9283;position:fixed;inset:0;z-index:25000;font-family:inherit;color:#18372a;display:flex;align-items:center;justify-content:center;padding:18px}
#umDialogLayer .um-layer-backdrop{position:absolute;inset:0;background:rgba(11,29,19,.54);backdrop-filter:blur(3px)}
#umDialogLayer .um-dialog,#umDialogLayer .um-drawer{background:#fff;border-radius:17px;position:relative;z-index:1;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 22px 85px rgba(10,24,16,.25);border:1px solid #e6ede8;max-height:min(90vh,900px);width:min(100%,520px)}
#umDialogLayer .um-dialog--wide{width:min(100%,760px)}
#umDialogLayer .um-drawer{position:absolute;right:0;top:0;bottom:0;border-radius:17px 0 0 17px;width:min(680px,100%);max-height:100vh;animation:um-drawer-slide .2s ease}
@keyframes um-drawer-slide{from{transform:translateX(20px);opacity:.7}to{transform:translateX(0);opacity:1}}
#umDialogLayer .um-dialog-header{padding:23px 26px 19px;border-bottom:1px solid #e7ede9;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-shrink:0}
#umDialogLayer .um-dialog-heading{display:flex;align-items:center;gap:13px;min-width:0}
#umDialogLayer .um-dialog-symbol{padding:10px;background:#ecf6ee;color:#2b854c;border-radius:11px;display:inline-flex;flex-shrink:0}
#umDialogLayer h3{font-size:19px;font-weight:760;margin:0 0 5px;line-height:1.25}
#umDialogLayer .um-dialog-header p{color:#849388;font-size:12px;margin:0;line-height:1.4}
#umDialogLayer .um-iconbtn{height:32px;width:32px;border:0;background:#f5f8f5;color:#5c7265;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0}
#umDialogLayer .um-iconbtn:hover{background:#e9f2ea}
#umDialogLayer .um-dialog-content{padding:23px 26px;overflow-y:auto;min-height:0;flex:1}
#umDialogLayer .um-dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:17px 26px;border-top:1px solid #e7ede9;background:#fafcfb;flex-shrink:0}
#umDialogLayer .um-form{display:flex;flex-direction:column;gap:18px}
#umDialogLayer .um-form-section{display:flex;flex-direction:column;gap:15px}
#umDialogLayer .um-form-section-title{font-size:12px;letter-spacing:.035em;color:#67806e;font-weight:760;text-transform:uppercase}
#umDialogLayer .um-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#umDialogLayer .um-form-grid--2{align-items:end}
#umDialogLayer .um-field{min-width:0;display:flex;flex-direction:column;gap:7px;margin:0}
#umDialogLayer .um-field>span{color:#3b5544;font-weight:670;font-size:12px}
#umDialogLayer .um-field input,#umDialogLayer .um-field select,#umDialogLayer .um-field textarea{border:1px solid #dce7df!important;background:#fff!important;color:#1b3b29!important;border-radius:9px!important;padding:11px 12px!important;font:inherit!important;font-size:13px!important;width:100%!important;min-height:41px!important;box-shadow:none!important;line-height:1.5!important;outline:none;transition:border-color .15s,box-shadow .15s}
#umDialogLayer .um-field textarea{resize:vertical;min-height:88px!important}
#umDialogLayer .um-field input:focus,#umDialogLayer .um-field select:focus,#umDialogLayer .um-field textarea:focus{border-color:#87b998!important;box-shadow:0 0 0 3px #e9f5ec!important}
#umDialogLayer .um-field small{font-size:11px;color:#87968b;line-height:1.5}
#umDialogLayer .um-form-tip{font-size:11.5px;line-height:1.5;background:#f2f8f3;color:#587960;border-radius:9px;padding:10px;display:flex;align-items:center;gap:9px}
#umDialogLayer .um-form-divider{border-top:1px solid #edf1ed;margin:2px 0}
#umDialogLayer .um-checkline{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:12px;color:#375744}
#umDialogLayer .um-checkline input,#umDialogLayer .um-option input{width:16px!important;height:16px!important;min-width:16px;accent-color:#278846;margin:2px 0 0;cursor:pointer}
#umDialogLayer .um-checkline>span{display:flex;flex-direction:column;gap:4px}
#umDialogLayer .um-checkline strong{color:#355444;font-weight:740}
#umDialogLayer .um-checkline small{color:#819387;font-size:11.5px;line-height:1.5}
#umDialogLayer .um-checkline--warning{background:#fff9f0;padding:14px;border:1px solid #f6e6ca;border-radius:10px}
#umDialogLayer .um-form-error{background:#fff1ef;color:#a43e39;border:1px solid #f4d9d5;border-radius:9px;padding:11px;font-size:12px;white-space:pre-wrap;line-height:1.5}
#umDialogLayer .um-notice{display:flex;align-items:flex-start;gap:9px;background:#f0f7f1;border-radius:10px;padding:13px;color:#597c60;font-size:12px;line-height:1.55}
#umDialogLayer .um-notice svg{flex-shrink:0;margin-top:1px}
#umDialogLayer .um-search--full{width:100%;min-height:42px;flex-shrink:0}
#umDialogLayer .um-optionlist{border:1px solid #e5ebe7;border-radius:11px;overflow-y:auto;max-height:320px;display:flex;flex-direction:column}
#umDialogLayer .um-option{padding:13px 15px;display:flex;align-items:center;gap:13px;border-bottom:1px solid #edf1ed;cursor:pointer;min-width:0}
#umDialogLayer .um-option:last-child{border-bottom:0}
#umDialogLayer .um-option:hover{background:#f9fcf9}
#umDialogLayer .um-option:has(input:checked){background:#f2faf3}
#umDialogLayer .um-option:has(input:disabled){opacity:.65;cursor:not-allowed}
#umDialogLayer .um-client-avatar--small{height:35px;width:35px;border-radius:9px;font-size:13px}
#umDialogLayer .um-option-text{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
#umDialogLayer .um-option-text strong{font-size:12.5px;color:#284432;font-weight:690;overflow-wrap:anywhere}
#umDialogLayer .um-option-text small{font-size:11px;color:#829488}
#umDialogLayer .um-employee-avatar{height:35px;width:35px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eaf1f7;color:#537589;font-size:13px;font-weight:750;flex-shrink:0}
#umDialogLayer .um-choicebar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:13px 0 11px;font-size:11.5px;color:#738c7b}
#umDialogLayer .um-textbtn{border:0;background:none;color:#238047;font-size:12px;font-weight:700;padding:5px}
#umDialogLayer .um-step-intro{color:#687f70;font-size:12.5px;margin:0 0 15px;line-height:1.6}
#umDialogLayer .um-wizard-steps{display:flex;justify-content:space-between;gap:5px;padding:0 0 22px;border-bottom:1px solid #eaf0ea;overflow-x:auto}
#umDialogLayer .um-wizard-step{display:flex;align-items:center;gap:8px;color:#8da096;font-weight:680;font-size:11px;white-space:nowrap}
#umDialogLayer .um-wizard-step b{height:26px;width:26px;border-radius:50%;background:#edf2ef;color:#708475;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0}
#umDialogLayer .um-wizard-step.is-active{color:#1b7b41}
#umDialogLayer .um-wizard-step.is-active b,#umDialogLayer .um-wizard-step.is-complete b{background:#278846;color:#fff}
#umDialogLayer .um-wizard-body{padding-top:22px}
#umDialogLayer .um-wizard-body .um-form-section{gap:16px}
#umDialogLayer .um-summary{text-align:center;max-width:500px;margin:6px auto 12px}
#umDialogLayer .um-summary-icon{margin:0 auto 15px;display:flex;align-items:center;justify-content:center;background:#e6f6eb;color:#2b864d;height:60px;width:60px;border-radius:50%}
#umDialogLayer .um-summary h4{font-size:19px;margin:0 0 6px}
#umDialogLayer .um-summary p{font-size:12.5px;color:#809187;margin:0 0 23px}
#umDialogLayer .um-summary dl{margin:0;border:1px solid #e6eee8;border-radius:11px;text-align:left;overflow:hidden}
#umDialogLayer .um-summary dl>div{display:flex;justify-content:space-between;gap:10px;padding:12px 15px;border-bottom:1px solid #e8eee9;font-size:12px}
#umDialogLayer .um-summary dl>div:last-child{border-bottom:0}
#umDialogLayer .um-summary dt{color:#7f9084}
#umDialogLayer .um-summary dd{margin:0;font-weight:700;color:#254630}
#umDialogLayer .um-devicehero{display:flex;align-items:center;gap:13px;padding:16px;background:#f6faf7;border:1px solid #e7efe9;border-radius:12px}
#umDialogLayer .um-devicehero .um-device-icon{height:50px;width:50px;border-radius:12px;background:#e5f4e9;color:#2c884f;flex-shrink:0;display:flex;justify-content:center;align-items:center}
#umDialogLayer .um-devicehero>div{flex:1;min-width:0}
#umDialogLayer .um-devicehero h4{font-size:15px;margin:0 0 4px;font-weight:750}
#umDialogLayer .um-devicehero p{font-size:12px;margin:0;color:#788c7d}
#umDialogLayer .um-detailtabs{display:flex;gap:22px;border-bottom:1px solid #e8eee9;margin-top:21px}
#umDialogLayer .um-detailtabs button{background:transparent;border:0;border-radius:0;box-shadow:none;color:#859589;font-weight:690;font-size:12.5px;padding:12px 0;border-bottom:3px solid transparent}
#umDialogLayer .um-detailtabs button.is-active{border-bottom-color:#328b50;color:#287d43}
#umDialogLayer .um-detailbody{padding:19px 0 8px;display:flex;flex-direction:column;gap:16px}
#umDialogLayer .um-detail-card{border:1px solid #e6eee8;border-radius:12px;padding:19px;background:#fff}
#umDialogLayer .um-detail-card h5{font-size:13px;font-weight:740;margin:0 0 19px}
#umDialogLayer .um-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px;margin:0}
#umDialogLayer .um-info-grid div{min-width:0}
#umDialogLayer .um-info-grid dt{font-size:11px;color:#819387;margin-bottom:5px}
#umDialogLayer .um-info-grid dd{margin:0;color:#294536;font-size:13px;font-weight:660;overflow-wrap:anywhere}
#umDialogLayer .um-prewrap{white-space:pre-wrap;font-size:12.5px;color:#496153;line-height:1.6;margin:0}
#umDialogLayer .um-detail-card small{display:block;color:#94a49a;font-size:11px;margin-top:12px}
#umDialogLayer .um-timeline{border-left:2px solid #dfeee3;padding:3px 0 3px 18px;margin-left:10px;display:flex;flex-direction:column;gap:22px}
#umDialogLayer .um-timeline-item{position:relative}
#umDialogLayer .um-timeline-dot{height:12px;width:12px;background:#3a9b56;position:absolute;left:-25px;top:5px;border:3px solid #e4f4e8;border-radius:50%;box-sizing:content-box}
#umDialogLayer .um-timeline-item strong{font-size:13px;color:#2b4935}
#umDialogLayer .um-timeline-item p{font-size:11.5px;color:#8b9b90;margin:6px 0 9px}
#umDialogLayer .um-linkbtn{background:none;border:0;color:#248348;font-size:12px;font-weight:700;padding:6px 7px;margin-left:6px}
#umDialogLayer .um-note-form{display:flex;flex-direction:column;gap:11px;border:1px solid #e4ece5;border-radius:12px;padding:16px}
#umDialogLayer .um-note-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
#umDialogLayer .um-notes-list{display:flex;flex-direction:column;gap:12px;margin-top:4px}
#umDialogLayer .um-note{border:1px solid #e6ece7;border-radius:11px;padding:16px}
#umDialogLayer .um-note time{color:#91a095;font-size:11px;margin-left:9px}
#umDialogLayer .um-note p{margin:11px 0 0;font-size:12.5px;color:#425d4d;white-space:pre-wrap;line-height:1.6}
#umDialogLayer .um-empty{text-align:center;padding:24px;color:#809585}
#umDialogLayer .um-empty>svg{color:#4d9861}
#umDialogLayer .um-empty h4{margin:9px 0 4px;font-size:14px}
#umDialogLayer .um-empty p{font-size:12px;line-height:1.5;margin:0}
#umDialogLayer .um-hidden{display:none!important}
@media(max-width:1120px){#page .um-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}#page .um-packagegrid{grid-template-columns:repeat(2,minmax(0,1fr))}#page .um-panel-head{align-items:start}#page .um-panel-tools{width:100%}}
@media(max-width:760px){#page .um-hero{padding:24px;flex-direction:column;align-items:flex-start}#page .um-hero-actions{justify-content:flex-start}#page .um-navigation{padding:0 18px;gap:20px}#page .um-panel{padding:20px 16px}#page .um-packagegrid{grid-template-columns:1fr}#page .um-search{flex:1;min-width:170px}#umDialogLayer .um-wizard-step span{display:none}#umDialogLayer .um-dialog-header{padding:18px}#umDialogLayer .um-dialog-content{padding:18px}#umDialogLayer .um-dialog-footer{padding:14px 18px}#umDialogLayer .um-form-grid{grid-template-columns:1fr}#umDialogLayer .um-drawer{border-radius:0}}
@media(max-width:480px){#page .um-kpis{gap:9px}#page .um-kpi{padding:14px;min-height:120px}#page .um-kpi-number{font-size:28px}#page .um-kpi-icon{padding:6px}#page .um-panel-tools{flex-direction:column;align-items:stretch}#page .um-selectwrap{width:100%}#page .um-hero-actions{width:100%}#page .um-hero-actions .um-btn{flex:1}#page .um-responsibility-row{flex-wrap:wrap}#page .um-responsibility-row>.um-btn{width:100%}#umDialogLayer{padding:8px}#umDialogLayer .um-dialog{max-height:95vh}#umDialogLayer .um-note-actions{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){#page .um-app *,#umDialogLayer *{animation:none!important;transition:none!important}}
/* Hide redundant shared page heading only while this module occupies #page. */
body:has(#page > .um-app) main.content > .top{display:none}
#umDialogLayer .um-contextline{display:flex;align-items:center;gap:12px;border:1px solid #e1eae3;border-radius:10px;background:#f6faf7;padding:13px;color:#36864c}
#umDialogLayer .um-contextline div{display:flex;flex-direction:column;gap:4px}
#umDialogLayer .um-contextline strong{color:#254431;font-size:13px}
#umDialogLayer .um-contextline span{color:#819188;font-size:11.5px}

/* Kundenportal – strikt getrennte Navigation, ohne Änderungen an übrigen Rollen */
body.um-customer-mode .sidebar .nav-group:not(#umNavGroup){display:none!important}
body.um-customer-mode .sidebar [data-view]:not([data-view="updatemanager"]):not([data-view="profile"]):not([data-view="password"]){display:none!important}
body.um-customer-mode .sidebar .nav-group#umNavGroup{display:block!important}
body.um-customer-mode .sidebar [data-view="updatemanager"]{display:flex!important}
body.um-customer-mode #newTask,body.um-customer-mode #stats{display:none!important}
#page .um-app .um-note time{font-variant-numeric:tabular-nums}

#umDialogLayer .um-update-note{margin:12px 0 2px;padding:12px 14px;border-left:3px solid #79bc88;background:#f2f9f4;border-radius:0 9px 9px 0;overflow-wrap:anywhere}
#umDialogLayer .um-update-note small{display:block;color:#69806d;font-size:11px;font-weight:650}
#umDialogLayer .um-update-note p{margin:5px 0 0;color:#234532;font-size:12.5px;line-height:1.6;white-space:pre-wrap}

/* Clickable KPI cards and portal's assigned sites */
#page .um-kpi--clickable{font:inherit;text-align:left;cursor:pointer;width:100%;color:inherit;transition:border-color .16s,box-shadow .16s,transform .16s}
#page .um-kpi--clickable:hover{border-color:#83bb92;box-shadow:0 7px 22px rgba(22,73,38,.09);transform:translateY(-1px)}
#page .um-kpi--clickable:focus-visible{outline:3px solid #238e49;outline-offset:3px}
#page .um-kpi--clickable.is-selected{border-color:#4b9a66;background:#f8fcf8}
#page .um-kpis--portal{grid-template-columns:repeat(3,minmax(0,1fr))}
#page .um-portal-sites{display:flex;gap:14px;align-items:center;flex-wrap:wrap;border:1px solid #e2ebe5;background:#fff;border-radius:13px;padding:13px 18px}
#page .um-portal-sites-heading{display:inline-flex;align-items:center;gap:8px;color:#254c34;font-size:13px}
#page .um-portal-sites-list{display:flex;flex-wrap:wrap;gap:8px}
#page .um-site-chip{display:inline-flex;padding:7px 12px;background:#edf6ee;border:1px solid #dcebdd;border-radius:999px;color:#245438;font-size:12px;font-weight:600}
@media(max-width:720px){#page .um-kpis--portal{grid-template-columns:1fr}#page .um-portal-sites{align-items:flex-start;flex-direction:column}}

/* KPI layout: force a vertical hierarchy despite global button styles. */
#page .um-kpi.um-kpi--clickable {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: 38px auto auto;
  align-content: start;
  align-items: start;
  justify-items: start;
  gap: 4px 8px;
  padding: 19px 22px 18px;
  min-height: 135px;
  line-height: 1.3;
}
#page .um-kpi--clickable .um-kpi-icon {grid-column: 2;grid-row: 1;justify-self: end;align-self: start;margin: 0;}
#page .um-kpi--clickable .um-kpi-number {display: block;grid-column: 1;grid-row: 1;align-self: center;margin: 0;font-size: 34px;line-height: 1.1;}
#page .um-kpi--clickable .um-kpi-label {display: block;grid-column: 1 / -1;grid-row: 2;margin: 5px 0 0;font-size: 13px;line-height: 1.4;}
#page .um-kpi--clickable .um-kpi-hint {display: block;grid-column: 1 / -1;grid-row: 3;margin: 0;font-size: 11.5px;line-height: 1.5;}
@media (max-width:480px) {#page .um-kpi.um-kpi--clickable {padding:14px;min-height:120px;}#page .um-kpi--clickable .um-kpi-number {font-size:28px;}}

/* Tabellenzeilen sind vollständig bedienbar – auch mit Tastatur */
#page .um-table tbody tr.um-clickable-row{cursor:pointer}
#page .um-table tbody tr.um-clickable-row:hover td{background:#f1f8f3!important}
#page .um-table tbody tr.um-clickable-row:focus-visible{outline:2px solid #238e49;outline-offset:-2px}

/* UI-Refresh: Alle Update-Manager-Dialoge rechts als Drawer öffnen.
   Der gemeinsame Dialog-Renderer ändert nur die Darstellung; Formular-IDs,
   API-Aufrufe, Eventhandler und Speicherverhalten bleiben unverändert. */
#umDialogLayer{padding:0;align-items:stretch;justify-content:flex-end}
#umDialogLayer .um-drawer{
  inset:0 0 0 auto;
  width:min(680px,100vw);
  height:100vh;
  height:100dvh;
  max-height:none;
  border-radius:18px 0 0 18px;
  box-shadow:-18px 0 55px rgba(10,24,16,.22);
}
#umDialogLayer .um-drawer.um-dialog--wide{width:min(820px,100vw)}
#umDialogLayer .um-drawer .um-dialog-content{overscroll-behavior:contain}
@media(max-width:760px){
  #umDialogLayer{padding:0}
  #umDialogLayer .um-drawer,#umDialogLayer .um-drawer.um-dialog--wide{
    width:100vw;
    border-radius:0;
  }
}
