:root{--bg:220 43% 11%;--bg-elev:222 36% 13%;--card:220 33% 14%;--border:214 33% 17%;--text:216 24% 96%;--muted:218 15% 65%;--primary:232 100% 64%;--primary-fg:0 0% 100%;--accent-cyan:227 100% 73%;--accent-amber:34 94% 50%;--danger:4 86% 58%;--success:152 82% 39%;--radius:1rem;--radius-md:.75rem;--radius-sm:.5rem;--sidebar-w:240px;--header-h:60px;--shadow:0 1px 2px rgba(6,9,15,.28),0 4px 16px rgba(6,9,15,.16)}:root[data-theme=light]{--bg:210 20% 98%;--bg-elev:0 0% 100%;--card:0 0% 100%;--border:217 17% 91%;--text:214 33% 17%;--muted:221 13% 46%;--primary:232 100% 64%;--primary-fg:0 0% 100%;--accent-cyan:232 100% 64%;--danger:4 86% 58%;--success:152 82% 39%;--shadow:0 1px 2px rgba(16,24,40,.05),0 1px 3px rgba(16,24,40,.07)}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:hsl(var(--bg));color:hsl(var(--text));font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Manrope,sans-serif;font-size:14px;min-height:100vh;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.mono{font-family:ui-monospace,SFMono-Regular,JetBrains Mono,Menlo,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.muted{color:hsl(var(--muted))}.row{gap:.75rem;align-items:center}.row,.stack{display:flex}.stack{flex-direction:column;gap:1rem}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:hsl(var(--border));border-radius:999px;border:2px solid hsl(var(--bg))}::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted)/.5)}.card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:1.1rem 1.25rem;box-shadow:var(--shadow);transition:border-color .15s,box-shadow .15s,transform .1s}.card-pad-0{padding:0}.card-hover{cursor:pointer}.card-hover:hover{border-color:hsl(var(--primary)/.45);box-shadow:0 2px 4px rgba(0,0,0,.18),0 12px 28px hsl(var(--primary)/.1);transform:translateY(-2px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:2.3rem;padding:0 .95rem;border-radius:var(--radius-sm);border:1px solid hsl(var(--border));background:hsl(var(--bg-elev));color:hsl(var(--text));cursor:pointer;font-weight:600;font-size:.875rem;transition:.15s ease;white-space:nowrap}.btn:hover{border-color:hsl(var(--primary)/.6);background:hsl(var(--primary)/.06)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:hsl(var(--primary));color:hsl(var(--primary-fg));border-color:transparent;box-shadow:0 1px 2px rgba(16,24,40,.06)}.btn-primary:hover{background:color-mix(in srgb,hsl(var(--primary)) 88%,#000);filter:none}.btn-ghost{background:transparent;border-color:transparent}.btn-ghost:hover{background:hsl(var(--muted)/.12);border-color:transparent}.btn-sm{height:1.9rem;padding:0 .65rem;font-size:.8rem}.btn-icon{width:2.3rem;padding:0}.input,.select{height:2.3rem;width:100%;padding:0 .7rem;border-radius:var(--radius-sm);border:1px solid hsl(var(--border));background:hsl(var(--bg-elev));color:hsl(var(--text));font-size:.875rem;outline:none;transition:.15s}.input:focus,.select:focus{border-color:hsl(var(--primary)/.7);box-shadow:0 0 0 3px hsl(var(--primary)/.12)}.label{display:block;font-size:.72rem;color:hsl(var(--muted));margin-bottom:.3rem;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.field{margin-bottom:.9rem}.row .field{margin-bottom:0}.select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2398A2B3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;cursor:pointer}textarea.input{height:auto;min-height:4.5rem;padding:.55rem .7rem;resize:vertical;line-height:1.4}.toggle{position:relative;display:inline-flex;width:2.5rem;height:1.4rem;border-radius:999px;cursor:pointer;background:hsl(var(--muted)/.3);border:none;transition:.18s;flex-shrink:0}.toggle.on{background:hsl(var(--primary))}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:1.06rem;height:1.06rem;border-radius:50%;background:#fff;transition:.18s;box-shadow:0 1px 2px rgba(0,0,0,.3)}.toggle.on:after{transform:translateX(1.1rem)}.toggle:disabled{opacity:.5;cursor:not-allowed}.chk{width:1.1rem;height:1.1rem;border-radius:5px;border:1.5px solid hsl(var(--border));background:hsl(var(--bg-elev));display:grid;place-items:center;cursor:pointer;color:transparent;flex-shrink:0;transition:.13s}.chk.on{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-fg))}.combo{position:relative;width:100%;min-width:0}.combo-input{display:flex;align-items:center;gap:.4rem;min-width:0;overflow:hidden;background-image:none;padding-right:.7rem}.combo-input>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.combo-pop{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:70;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius-sm);box-shadow:var(--shadow);max-height:240px;overflow-y:auto;padding:.25rem}.combo-opt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:.45rem .55rem;border-radius:6px;cursor:pointer;font-size:.85rem}.combo-opt.hl,.combo-opt:hover{background:hsl(var(--primary)/.14);color:hsl(var(--primary))}.combo-opt.sel{font-weight:700}.dt-bar{padding:.3rem .1rem}.dt-bar,.dt-foot{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.dt-foot{padding-top:.7rem}th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}th.sortable:hover{color:hsl(var(--text))}th .sort-ic{opacity:.5;margin-left:.25rem}th.sorted .sort-ic{opacity:1;color:hsl(var(--primary))}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.16rem .55rem;border-radius:999px;font-size:.72rem;font-weight:600;background:hsl(var(--primary)/.15);color:color-mix(in srgb,hsl(var(--primary)) 70%,#fff);border:none}:root[data-theme=light] .badge{color:hsl(var(--primary))}.badge-muted{background:hsl(var(--muted)/.14);color:hsl(var(--muted))}.badge-danger{background:hsl(var(--danger)/.14);color:color-mix(in srgb,hsl(var(--danger)) 78%,#fff)}:root[data-theme=light] .badge-danger{color:hsl(var(--danger))}.delta{display:inline-flex;align-items:center;gap:.2rem;font-size:.75rem;font-weight:700;padding:.1rem .4rem;border-radius:999px}.delta-up{color:hsl(var(--success));background:hsl(var(--success)/.14)}.delta-down{color:hsl(var(--danger));background:hsl(var(--danger)/.14)}.table-wrap{overflow-x:auto;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));box-shadow:var(--shadow)}table.tbl{width:100%;border-collapse:collapse;font-size:.82rem}table.tbl td,table.tbl th{text-align:left;padding:.6rem .85rem;border-bottom:1px solid hsl(var(--border)/.6);white-space:nowrap}table.tbl th{color:hsl(var(--muted));font-weight:600;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;background:hsl(var(--muted)/.07);position:-webkit-sticky;position:sticky;top:0}table.tbl tbody tr:nth-child(2n) td{background:hsl(var(--muted)/.04)}table.tbl tbody tr:hover td{background:hsl(var(--primary)/.07)}table.tbl td.num,table.tbl th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}table.tbl tbody tr:first-child td{border-top:none}table.tbl tbody tr.grp td{background:linear-gradient(hsl(var(--primary)/.13),hsl(var(--primary)/.08));border-top:1px solid hsl(var(--primary)/.3);border-bottom:1px solid hsl(var(--primary)/.3);padding-top:.72rem;padding-bottom:.72rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}table.tbl tbody tr.grp:hover td{background:hsl(var(--primary)/.18)}table.tbl tbody tr.grp .grp-name{font-weight:800;font-size:.82rem;color:hsl(var(--text));letter-spacing:0;text-transform:none}table.tbl tbody tr.grp .grp-chev{color:hsl(var(--primary));transition:transform .15s;flex-shrink:0}table.tbl tbody tr.grp-child td:first-child{padding-left:1.9rem}table.tbl-grp thead th{z-index:3;background:hsl(var(--bg-elev))}table.tbl-grp tbody tr.grp td{position:-webkit-sticky;position:sticky;top:2.15rem;z-index:2;background:linear-gradient(hsl(var(--primary)/.16),hsl(var(--primary)/.1)),hsl(var(--card))}.grid-kpi{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:1rem;gap:1rem}.kpi{display:flex;flex-direction:column;gap:.55rem;min-width:0;container-type:inline-size}.kpi-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.kpi-ic{width:2.75rem;height:2.75rem;border-radius:var(--radius-md);display:grid;place-items:center;flex-shrink:0;background:hsl(var(--muted)/.14);color:hsl(var(--text));border:none}.kpi-label{font-size:.8rem;color:hsl(var(--muted));font-weight:600;min-width:0}.kpi-value{font-size:clamp(1.05rem,8.5cqi,1.7rem);font-weight:800;line-height:1.15;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap}.kpi-value,.kpi-value>span{overflow:hidden;text-overflow:ellipsis}.tabs{display:flex;gap:.25rem;overflow-x:auto;padding:.25rem;border-radius:var(--radius-md);background:hsl(var(--muted)/.1);align-self:flex-start;max-width:100%}.tab{display:inline-flex;align-items:center;gap:.4rem;height:2rem;padding:0 .85rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.82rem;font-weight:600;white-space:nowrap;border:none;background:transparent;color:hsl(var(--muted));transition:.15s}.tab:hover{background:hsl(var(--muted)/.12);color:hsl(var(--text))}.tab-active,.tab-active:hover{background:hsl(var(--card));color:hsl(var(--text));box-shadow:0 1px 2px rgba(16,24,40,.1)}:root[data-theme=light] .tab-active{background:#fff}.v2-top{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);grid-gap:1rem;gap:1rem;align-items:start}@media (max-width:900px){.v2-top{grid-template-columns:1fr}}@keyframes ch-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes ch-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.ch-bar{transform-box:fill-box;transform-origin:bottom;animation:ch-grow .5s cubic-bezier(.22,1,.36,1) both}.ch-fade{animation:ch-fade .45s ease both}@media (prefers-reduced-motion:reduce){.ch-bar,.ch-fade{animation:none}}.skeleton{background:linear-gradient(90deg,hsl(var(--muted)/.08),hsl(var(--muted)/.18),hsl(var(--muted)/.08));background-size:200% 100%;animation:sk 1.3s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes sk{0%{background-position:200% 0}to{background-position:-200% 0}}.spinner{width:1rem;height:1rem;border:2px solid hsl(var(--muted)/.3);border-top-color:hsl(var(--primary));border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.page-loading{display:grid;place-items:center;grid-gap:.9rem;gap:.9rem;min-height:60vh}.spinner-lg{width:2.4rem;height:2.4rem;border-width:3px}.shell{min-height:100vh}.sidebar{position:fixed;top:0;left:0;width:var(--sidebar-w);height:100vh;z-index:40;background:hsl(var(--bg));border-right:1px solid hsl(var(--border));display:flex;flex-direction:column;transition:transform .22s ease}:root[data-theme=light] .sidebar{background:hsl(var(--card))}.sidebar-brand{display:flex;align-items:center;gap:.55rem;height:var(--header-h);padding:0 1.1rem;font-weight:800;font-size:1.02rem;border-bottom:1px solid hsl(var(--border))}.sidebar-brand .dot{width:1.85rem;height:1.85rem;border-radius:var(--radius-sm);background:hsl(var(--primary));color:hsl(var(--primary-fg));display:grid;place-items:center}.sidebar-nav{flex:1 1;overflow-y:auto;padding:.75rem .6rem;display:flex;flex-direction:column;gap:.12rem}.nav-sec{font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--muted));padding:.8rem .6rem .3rem}.nav-sec-btn{display:flex;align-items:center;justify-content:space-between;gap:.4rem;width:100%;background:none;border:0;cursor:pointer;font:inherit;text-align:left}.nav-sec-btn:hover{color:hsl(var(--text))}.nav-sec-chevron{flex-shrink:0;opacity:.65;transition:transform .16s ease}.nav-item{position:relative;display:flex;align-items:center;gap:.65rem;padding:.55rem .65rem;border-radius:var(--radius-sm);color:hsl(var(--muted));font-weight:600;font-size:.87rem;transition:.13s}.nav-item:hover{background:hsl(var(--muted)/.1);color:hsl(var(--text))}.nav-item.active{background:hsl(var(--primary)/.16);color:color-mix(in srgb,hsl(var(--primary)) 62%,#fff)}:root[data-theme=light] .nav-item.active{background:hsl(var(--primary)/.1);color:hsl(var(--primary))}.nav-item .ic{flex-shrink:0}.sidebar.collapsed{width:66px}.sidebar.collapsed .brand-text,.sidebar.collapsed .nav-item span,.sidebar.collapsed .nav-sec{display:none}.sidebar.collapsed .nav-item{justify-content:center;padding:.55rem 0}.sidebar.collapsed .sidebar-brand{justify-content:center;padding:0}.content.collapsed{margin-left:66px}.content{margin-left:var(--sidebar-w);min-height:100vh;display:flex;flex-direction:column;transition:margin-left .22s ease}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:30;height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0 1.25rem;background:hsl(var(--bg)/.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid hsl(var(--border))}.page{padding:1.25rem .9rem;max-width:none;width:100%;margin:0 auto}.page:has(.page-full){max-width:none;padding:1.25rem .8rem}.page-title{margin:0;font-size:1.35rem;font-weight:800;letter-spacing:-.02em}.usermenu{position:relative}.usermenu-pop{position:absolute;right:0;top:calc(100% + .4rem);background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:var(--shadow);min-width:200px;padding:.4rem;z-index:50}.usermenu-pop button{width:100%;justify-content:flex-start}.backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:35}.modal-overlay{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.55);display:grid;place-items:center;padding:1rem}.modal-box{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:var(--shadow);width:100%;max-width:560px;max-height:90vh;overflow-y:auto}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.15rem;border-bottom:1px solid hsl(var(--border))}.modal-head h3{margin:0;font-size:1.02rem;font-weight:700}.modal-body{padding:1.15rem}.modal-foot{display:flex;justify-content:flex-end;gap:.5rem;padding:.9rem 1.15rem;border-top:1px solid hsl(var(--border))}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.8rem .9rem;gap:.8rem .9rem}.form-grid>*{min-width:0}.form-grid .full{grid-column:1/-1}@media (max-width:520px){.form-grid{grid-template-columns:1fr}}.filters{display:flex;gap:.7rem;flex-wrap:wrap;align-items:flex-end}.filters>.fitem{flex:1 1 170px;min-width:0;max-width:260px}.filters>.fitem-narrow{flex:0 1 130px;min-width:0}.hamburger{display:none}@media (max-width:900px){.sidebar{transform:translateX(-100%)}.sidebar.open{transform:translateX(0);box-shadow:var(--shadow)}.sidebar.collapsed{width:var(--sidebar-w)}.sidebar.collapsed .brand-text,.sidebar.collapsed .nav-item span,.sidebar.collapsed .nav-sec{display:revert}.content,.content.collapsed{margin-left:0}.hamburger{display:inline-flex}.collapse-btn{display:none}.page{padding:1rem}}@media (min-width:901px){.backdrop{display:none}}@media (max-width:640px){.hide-sm{display:none!important}}.classif-steps{display:flex;align-items:stretch;gap:.25rem;flex-wrap:nowrap;overflow-x:auto;padding:.5rem;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius)}.classif-steps .cs-item{display:flex;align-items:center;gap:.25rem;flex:1 1;min-width:150px}.classif-steps .cs-link{display:flex;align-items:center;gap:.55rem;flex:1 1;padding:.5rem .7rem;border-radius:10px;border:1px solid transparent;color:hsl(var(--text));text-decoration:none;transition:background .15s,border-color .15s}.classif-steps .cs-link:hover{background:hsl(var(--muted)/.1)}.classif-steps .cs-item[data-active] .cs-link{background:hsl(var(--primary)/.12);border-color:hsl(var(--primary)/.5)}.classif-steps .cs-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:26px;height:26px;border-radius:999px;background:hsl(var(--muted)/.2);color:hsl(var(--muted));font-size:.82rem;font-weight:800}.classif-steps .cs-item[data-active] .cs-badge{background:hsl(var(--primary));color:hsl(var(--primary-fg,0 0% 100%))}.classif-steps .cs-text{display:flex;flex-direction:column;min-width:0;line-height:1.15}.classif-steps .cs-label{font-size:.86rem;font-weight:700;white-space:nowrap}.classif-steps .cs-item[data-active] .cs-label{color:hsl(var(--primary))}.classif-steps .cs-caption{font-size:.7rem;color:hsl(var(--muted));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.classif-steps .cs-count{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#df3a3a;color:#fff;font-size:.7rem;font-weight:800}.classif-steps .cs-sep{color:hsl(var(--muted)/.5);flex-shrink:0}@media (max-width:640px){.classif-steps .cs-caption{display:none}.classif-steps .cs-item{min-width:120px}}.health-hero{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.health-ring{--p:0;flex-shrink:0;width:88px;height:88px;background:conic-gradient(hsl(var(--ok,var(--primary))) calc(var(--p) * 1%),hsl(var(--muted)/.18) 0);place-items:center}.health-ring,.health-ring>span{border-radius:999px;display:grid}.health-ring>span{width:66px;height:66px;background:hsl(var(--card));place-items:center;font-size:1.15rem;font-weight:800}.impact-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap;padding:.7rem .85rem;border:1px solid hsl(var(--border));border-radius:12px;background:hsl(var(--card));transition:border-color .15s,background .15s}.impact-row:hover{border-color:hsl(var(--primary)/.5);background:hsl(var(--primary)/.05)}.filter-backdrop{position:fixed;inset:0;background:rgba(3,4,7,.45);z-index:1400}.filter-drawer{position:fixed;top:0;left:0;height:100vh;width:350px;max-width:92vw;background:hsl(var(--card));border-right:1px solid hsl(var(--border));box-shadow:var(--shadow);z-index:1401;transform:translateX(-100%);transition:transform .2s ease;display:flex;flex-direction:column}.filter-drawer.open{transform:translateX(0)}.step-board{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:.7rem;gap:.7rem}@media (max-width:760px){.step-board{grid-template-columns:repeat(2,1fr)}}.step-card{display:flex;flex-direction:column;gap:.35rem;padding:.85rem .9rem;border:1px solid hsl(var(--border));border-radius:14px;background:hsl(var(--card));text-decoration:none;color:hsl(var(--text));transition:border-color .15s,transform .1s,box-shadow .15s}.step-card:hover{border-color:hsl(var(--primary)/.5);transform:translateY(-1px);box-shadow:var(--shadow)}.step-card[data-active]{border-color:hsl(var(--primary));background:hsl(var(--primary)/.08)}.step-card .sc-top{display:flex;align-items:center;gap:.5rem}.step-card .sc-badge{width:23px;height:23px;border-radius:999px;background:hsl(var(--muted)/.2);color:hsl(var(--muted));font-weight:800;font-size:.76rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.step-card[data-active] .sc-badge{background:hsl(var(--primary));color:hsl(var(--primary-fg,160 15% 8%))}.step-card .sc-label{font-weight:700;font-size:.9rem}.step-card .sc-metric{font-size:1.4rem;font-weight:800;line-height:1.1}.step-card .sc-metric.ok{color:hsl(var(--primary))}.step-card .sc-metric.warn{color:#df3a3a}.step-card .sc-unit{font-size:.74rem;color:hsl(var(--muted))}.jflow{display:flex;align-items:stretch;gap:.15rem;overflow-x:auto;padding:.3rem 0 .8rem}.jflow-step{position:relative;flex:1 0 148px;min-width:148px;padding:.85rem 1.05rem .85rem 1.55rem;color:hsl(var(--primary-fg));display:flex;flex-direction:column;gap:1px;justify-content:center;background:linear-gradient(135deg,hsl(var(--primary)/var(--op,1)),hsl(var(--primary)/calc(var(--op, 1) * .78)));-webkit-clip-path:polygon(0 0,calc(100% - 15px) 0,100% 50%,calc(100% - 15px) 100%,0 100%,15px 50%);clip-path:polygon(0 0,calc(100% - 15px) 0,100% 50%,calc(100% - 15px) 100%,0 100%,15px 50%)}.jflow-step.first{-webkit-clip-path:polygon(0 0,calc(100% - 15px) 0,100% 50%,calc(100% - 15px) 100%,0 100%);clip-path:polygon(0 0,calc(100% - 15px) 0,100% 50%,calc(100% - 15px) 100%,0 100%);border-radius:8px 0 0 8px;padding-left:1.15rem}.jflow-etapa{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;opacity:.92}.jflow-num{font-size:1.5rem;font-weight:800;line-height:1.05;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.jflow-sub{font-size:.7rem;opacity:.92}.jflow-fat{font-size:.74rem;font-weight:700;margin-top:.1rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.jflow-conn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;flex:0 0 auto;min-width:62px;padding:0 .2rem}.jflow-conn .jflow-ret{font-weight:800;font-size:.92rem;color:hsl(var(--primary));font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.jflow-conn .jflow-days{font-size:.66rem;color:hsl(var(--muted))}.jflow-conn .jflow-adv{font-size:.64rem;color:hsl(var(--muted));opacity:.8}.rfm-matrix{display:grid;grid-template-columns:auto repeat(5,1fr);grid-gap:4px;gap:4px;align-items:stretch}.rfm-cell{border-radius:6px;padding:.5rem .3rem;text-align:center;min-height:46px;display:flex;flex-direction:column;justify-content:center;color:hsl(var(--primary-fg));font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:outline .1s}.rfm-cell:hover{outline:2px solid hsl(var(--primary)/.6);outline-offset:-2px}.rfm-cell.sel{outline:3px solid hsl(var(--primary));outline-offset:-3px}.rfm-cell .rc-n{font-weight:800;font-size:.95rem;line-height:1}.rfm-cell .rc-s{font-size:.6rem;opacity:.85}.rfm-axis{font-size:.72rem;color:hsl(var(--foreground));font-weight:700;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;line-height:1.05;gap:1px;padding:.2rem}.rfm-axis .rfm-axis-sub{font-size:.58rem;color:hsl(var(--muted));font-weight:600}.rfm-axis-row{align-items:flex-end;text-align:right;padding-right:.4rem}.rfm-axis-corner{font-size:.6rem;color:hsl(var(--muted));font-weight:600}.rfm-seg{display:inline-flex;align-items:center;gap:.4rem}.rfm-seg .dot{width:10px;height:10px;border-radius:3px;flex:0 0 auto}.rfm-help{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);overflow:hidden}.rfm-help>summary{cursor:pointer;padding:.7rem 1rem;font-weight:700;font-size:.88rem;display:flex;align-items:center;gap:.45rem;list-style:none}.rfm-help>summary::-webkit-details-marker{display:none}.rfm-help[open]>summary{border-bottom:1px solid hsl(var(--border))}.rfm-help-body{padding:.9rem 1.1rem 1.1rem}.rfm-help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:.8rem;gap:.8rem;margin-bottom:.4rem}.rfm-help-grid p{margin:.15rem 0 0;font-size:.82rem;color:hsl(var(--muted))}.rfm-quad{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:.5rem;gap:.5rem;margin:0 0 1rem;font-size:.82rem}.rfm-quad .q-tag{display:inline-block;color:#fff;font-weight:700;font-size:.72rem;padding:.1rem .45rem;border-radius:5px;margin-right:.4rem}.rfm-legend{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:.7rem;gap:.7rem}.rfm-legend-item{border:1px solid hsl(var(--border));border-radius:8px;padding:.55rem .7rem;display:flex;flex-direction:column;gap:.2rem}.pending-banner{display:flex;align-items:center;gap:.7rem;padding:.6rem .9rem;border-radius:var(--radius);border:1px solid rgba(245,159,10,.5);background:rgba(245,159,10,.1);font-size:.85rem;flex-wrap:wrap}.pending-banner .pb-ic{color:#dc8f09;display:flex;flex-shrink:0}.pending-banner .pb-txt{flex:1 1;min-width:200px}.utm-list{display:flex;flex-direction:column;gap:.4rem}.utm-rule{display:flex;gap:.7rem;align-items:center;padding:.55rem .7rem;border:1px solid hsl(var(--border));border-radius:10px;background:hsl(var(--card))}.utm-rule.drag{opacity:.5}.utm-rule.over{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary)/.25) inset}.utm-rule .handle{cursor:-webkit-grab;cursor:grab;color:hsl(var(--muted));flex:0 0 auto;-webkit-user-select:none;-moz-user-select:none;user-select:none}.utm-rule .prio{width:1.6rem;text-align:center;font-weight:800;color:hsl(var(--muted))}.utm-chip{font-size:.7rem;font-weight:700;padding:.08rem .4rem;border-radius:6px;background:hsl(var(--primary)/.12);color:hsl(var(--primary));font-family:var(--mono,monospace)}.utm-field-pick{display:flex;gap:.35rem;flex-wrap:wrap}.utm-field-pick .fp{border:1px solid hsl(var(--border));background:transparent;color:hsl(var(--muted));border-radius:999px;padding:.18rem .6rem;font-size:.76rem;font-weight:700;cursor:pointer;font-family:var(--mono,monospace)}.utm-field-pick .fp.on{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-fg))}.role-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:.8rem;gap:.8rem}.role-card{border:1px solid hsl(var(--border));border-radius:12px;padding:.8rem .9rem;background:hsl(var(--card))}.role-card .role-name{background:none;border:none;padding:0;font-weight:800;font-size:1rem;color:hsl(var(--primary));cursor:pointer;text-align:left}.role-card .role-name:hover{text-decoration:underline}.perm-group{border:1px solid hsl(var(--border));border-radius:10px;padding:.7rem .8rem}.perm-group .linkish{background:none;border:none;color:hsl(var(--primary));font-weight:600;cursor:pointer;font-size:.78rem}.perm-group .linkish:hover{text-decoration:underline}.perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:.4rem;gap:.4rem}.perm-item{display:flex;gap:.5rem;align-items:flex-start;padding:.45rem .55rem;border:1px solid hsl(var(--border));border-radius:8px;cursor:pointer;transition:border-color .12s,background .12s}.perm-item:hover{border-color:hsl(var(--primary)/.5)}.perm-item.on{border-color:hsl(var(--primary));background:hsl(var(--primary)/.06)}.user-list{display:flex;flex-direction:column;gap:.5rem}.user-row{display:flex;gap:.8rem;align-items:center;padding:.7rem .85rem;border:1px solid hsl(var(--border));border-radius:12px;background:hsl(var(--card))}.role-chip{display:inline-flex;gap:.3rem;align-items:center;font-size:.74rem;font-weight:700;padding:.1rem .45rem;border-radius:999px;background:hsl(var(--primary)/.12);color:hsl(var(--primary))}.role-chip .muted{font-weight:500}.assigned-role{padding:.4rem .6rem;background:hsl(var(--muted)/.08);border-radius:8px}.assigned-role,.bulk-bar{display:flex;justify-content:space-between;align-items:center}.bulk-bar{flex-wrap:wrap;gap:.7rem;padding:.5rem .8rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));font-size:.82rem}.bulk-bar.active{border-color:hsl(var(--primary)/.5);background:hsl(var(--primary)/.05)}.bulk-bar .linkish{background:none;border:none;color:hsl(var(--primary));font-weight:600;cursor:pointer;font-size:.8rem;padding:0}.bulk-bar .linkish:hover{text-decoration:underline}.bulk-flag{display:inline-flex;align-items:center;gap:.3rem;border:1px solid hsl(var(--border));border-radius:8px;padding:.12rem .3rem .12rem .5rem}.bulk-flag .bf-label{font-weight:700;font-size:.76rem}.bulk-flag .bf-btn{border:1px solid hsl(var(--border));background:transparent;color:hsl(var(--muted));border-radius:6px;padding:.1rem .45rem;font-size:.74rem;font-weight:700;cursor:pointer}.bulk-flag .bf-btn.on:hover{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-fg))}.bulk-flag .bf-btn:hover{border-color:hsl(var(--muted))}.bulk-flag .bf-btn:disabled{opacity:.5;cursor:default}.flag-chip{border:1px solid hsl(var(--border));border-radius:999px;padding:.12rem .55rem;font-size:.72rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .12s;line-height:1.4}.flag-chip:hover{border-color:var(--fc);color:var(--fc)!important}