:root{--module-primary:#5f6973;--module-primary-hover:#505a64;--module-primary-soft:#f0f2f4;--module-primary-border:#cdd3d9;--module-primary-text:#414b55;--module-header:#303840;--module-header-border:#454f59;--params-primary:#4b7791;--params-primary-hover:#426b84;--params-primary-soft:#eef5f9;--params-primary-border:#b8cedd;--params-primary-text:#31546a;--data-primary:#4d7c5f;--data-primary-hover:#416b51;--data-primary-soft:#eef6f1;--data-primary-border:#bfd6c7;--data-primary-text:#365b45}.home-heading{text-align:left;justify-items:start;gap:4px;display:grid}.modules-grid{grid-template-columns:repeat(auto-fill,minmax(300px,360px));gap:16px;margin-top:18px;display:grid}.module-card{background:var(--rf-surface);border:1px solid var(--rf-border);border-radius:var(--rf-radius-elevated);min-height:210px;box-shadow:var(--rf-shadow-surface);grid-template-rows:1fr auto;display:grid;position:relative;overflow:hidden}.module-card-body{align-content:start;gap:16px;padding:20px 20px 16px;display:grid}.rf-module-identity.module-card-identity{--rf-module-identity-padding:0;--rf-module-accent-offset:5px;--rf-module-name-size:16px;--rf-module-name-weight:700;--rf-module-meta-weight:600;--rf-module-meta-color:var(--module-card-text)}.module-description{max-width:34rem;color:var(--rf-text-secondary);text-align:left;font-size:12px;line-height:1.5}.module-card-footer{background:var(--rf-surface-soft);border-top:1px solid #edf0f3;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px 12px 20px;display:flex}.module-footer-text{color:var(--rf-text-secondary);font-size:10px;font-weight:500}.module-open-button{color:#fff;border-radius:var(--rf-radius);background:var(--module-card-primary);border:0;min-height:34px;padding:7px 12px;font-size:13px;font-weight:600}.module-open-button:hover:not(:disabled){background:var(--module-card-primary-hover)}.module-card-params{--module-card-primary:var(--params-primary);--module-card-primary-hover:var(--params-primary-hover);--module-card-soft:var(--params-primary-soft);--module-card-border:var(--params-primary-border);--module-card-text:var(--params-primary-text)}.module-card-data{--module-card-primary:var(--data-primary);--module-card-primary-hover:var(--data-primary-hover);--module-card-soft:var(--data-primary-soft);--module-card-border:var(--data-primary-border);--module-card-text:var(--data-primary-text)}@media (width<=720px){.modules-grid{grid-template-columns:1fr}.module-card{min-height:0}.module-card-footer{flex-direction:column;align-items:stretch}.module-open-button{width:100%}}.full-width-button{width:100%;margin-top:14px}.platform-admin-table td:first-child{min-width:240px}.platform-admin-table td:first-child strong{color:var(--rf-text-title);font-size:12px;font-weight:600}.platform-admin-table td:first-child span{color:var(--rf-text-secondary);font-size:10px}.status-chip{border-radius:var(--rf-radius);align-items:center;min-height:22px;padding:3px 7px;font-size:10px;font-weight:600;display:inline-flex}.status-chip-active{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.status-chip-disabled{color:#667085;background:#f2f4f7;border:1px solid #d0d5dd}.status-chip-warning{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.status-chip-danger{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.access-toggle-group{flex-wrap:wrap;gap:10px 18px;display:flex}.access-toggle{color:var(--rf-text);white-space:nowrap;grid-template-columns:none;align-items:center;gap:8px;display:flex}.access-toggle input{width:15px;height:15px;min-height:15px;accent-color:var(--module-primary);margin:0}.public-page{min-height:100vh;color:var(--rf-text,#1f2937);background:#eef1f4}.public-header{border-bottom:1px solid var(--rf-border,#dce2e8);background:#eef1f4;justify-content:flex-end;align-items:center;width:100%;min-height:62px;padding:10px max(26px,50vw - 590px);display:flex}.public-access{color:#fff;background:var(--module-primary,#5f6973);border:1px solid var(--module-primary,#5f6973);border-radius:var(--rf-radius,2px);min-height:34px;padding:7px 11px;font-size:12px;font-weight:600;text-decoration:none}.public-access:hover{color:#fff;background:var(--module-primary-hover,#505a64);border-color:var(--module-primary-hover,#505a64)}.public-main{width:min(1180px,100% - 52px);margin:0 auto;padding:34px 0 50px}.public-hero-grid{background:var(--rf-surface,#fff);border:1px solid var(--rf-border,#dce2e8);grid-template-columns:minmax(0,1.55fr) minmax(280px,.7fr);min-height:500px;display:grid}.public-hero-field{color:#fff;background:var(--module-header,#303840);flex-direction:column;justify-content:space-between;padding:38px 40px 34px;display:flex}.public-hero-mark{align-items:center;gap:12px;display:flex}.public-hero-mark-logo{border-radius:var(--rf-radius,2px);background:#fff;place-items:center;width:42px;height:42px;display:grid}.public-hero-mark-logo img{object-fit:contain;width:31px;height:31px}.public-hero-mark>span:last-child{font-size:18px;font-weight:700;line-height:1}.public-hero-copy{max-width:610px;margin:84px 0 70px}.public-hero-copy h1{color:#fff;letter-spacing:normal;margin:0;font-size:clamp(32px,4vw,54px);font-weight:600;line-height:1.05}.public-hero-copy p{color:#ffffffad;margin:18px 0 0;font-size:12px;line-height:1.5}.public-module-index{background:var(--rf-surface,#fff);grid-template-rows:repeat(5,1fr);min-width:0;display:grid}.public-module-index-item{background:var(--rf-surface,#fff);border-left:1px solid var(--rf-border,#dce2e8);grid-template-columns:minmax(0,1fr) auto;align-content:center;align-items:start;column-gap:18px;min-width:0;min-height:0;padding:12px 20px 12px 24px;display:grid}.public-module-index-item+.public-module-index-item{border-top:1px solid var(--rf-border,#dce2e8)}.rf-module-identity.public-module-index-identity{--rf-module-identity-padding:0;--rf-module-accent-offset:2px;--rf-module-name-size:15px;--rf-module-name-weight:600;--rf-module-meta-size:10px;--rf-module-meta-weight:400;--rf-module-meta-color:var(--rf-text-secondary,#667085);background:0 0;grid-column:1;min-width:0}.public-module-index-identity .rf-module-identity-copy strong{white-space:normal;max-width:96px}.public-module-index-number{color:var(--rf-text-secondary,#667085);letter-spacing:.06em;grid-column:2;align-self:start;font-size:9px;line-height:1}.public-module-index-future{grid-template-columns:1fr}.public-module-index-placeholder{gap:8px;width:min(120px,100% - 13px);margin-left:13px;display:grid}.public-module-index-placeholder span{border-radius:var(--rf-radius,2px);background:#e6e8eb;height:8px;display:block}.public-module-index-placeholder .is-short{width:62%}.public-footer{color:var(--rf-text-secondary,#667085);border-top:1px solid var(--rf-border,#dce2e8);justify-content:flex-start;align-items:center;margin-top:26px;padding-top:14px;font-size:10px;display:flex}@media (width<=900px){.public-hero-grid{grid-template-columns:1fr;min-height:0}.public-hero-field{min-height:430px}.public-module-index{grid-template-rows:auto;grid-template-columns:1fr 1fr}.public-module-index-item{border-top:1px solid var(--rf-border,#dce2e8);border-left:0;min-height:150px}.public-module-index-item+.public-module-index-item{border-left:1px solid var(--rf-border,#dce2e8)}}@media (width<=640px){.public-header{padding:10px 16px}.public-main{width:min(100% - 32px,1180px);padding-top:22px}.public-hero-field{min-height:390px;padding:26px 24px}.public-hero-copy{margin:70px 0 54px}.public-hero-copy h1{font-size:34px}.public-module-index{grid-template-columns:1fr}.public-module-index-item{min-height:110px}.public-module-index-item+.public-module-index-item{border-left:0}}.project-module-options{align-items:center;gap:10px;min-height:34px;display:flex}.project-module-options label{color:var(--rf-label);white-space:nowrap;align-items:center;gap:5px;font-size:12px;font-weight:600;display:inline-flex}.project-module-options input{width:auto;min-height:0;margin:0}.project-table td:nth-child(2){min-width:150px}.project-table td:nth-child(3){min-width:220px}.entity-select-table tbody tr{cursor:default}.entity-select-table tbody tr:hover{background:var(--module-primary-soft)}.entity-form-grid{grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;align-items:start;gap:12px;display:grid}.entity-form-submit{margin-top:22px}.entity-admin-section{gap:18px}.entity-config-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.licensing-overview{gap:18px;display:grid}.licensing-summary{border:1px solid var(--rf-border);border-radius:var(--rf-radius-elevated);background:#fbfcfd;grid-template-columns:minmax(160px,220px) minmax(240px,1fr);gap:18px;padding:14px 16px;display:grid}.licensing-summary-item{align-content:start;gap:7px;min-width:0;display:grid}.licensing-summary-label{color:var(--rf-label);letter-spacing:.02em;text-transform:uppercase;font-size:11px;font-weight:600}.licensing-summary-value{color:var(--rf-text-title);font-size:13px;font-weight:600;line-height:1.35}.licensing-modules{gap:10px;display:grid}.licensing-modules>.licensing-summary-label{margin-bottom:1px}.licensing-module-card{border:1px solid var(--rf-border);border-radius:var(--rf-radius-elevated);box-shadow:var(--rf-shadow-surface);background:#fff;gap:11px;padding:14px 16px;display:grid}.licensing-module-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.licensing-module-card.is-unavailable{box-shadow:none;background:#f8fafc;border-color:#e4e7ec}.licensing-module-card.is-unavailable .rf-module-identity{filter:grayscale();opacity:.68}.licensing-module-metrics{color:var(--rf-text-secondary);flex-wrap:wrap;gap:8px 18px;font-size:12px;line-height:1.4;display:flex}.licensing-module-metrics strong{color:var(--rf-text-title);font-weight:600}.licensing-configuration{border-top:1px solid var(--rf-border);gap:12px;padding-top:12px;display:grid}.licensing-configuration-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.licensing-configuration-title,.licensing-initialization-option-label{color:var(--rf-text-title);font-size:12px;font-weight:600}.licensing-initialization-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.licensing-initialization-option{border-radius:var(--rf-radius-elevated);background:#f8fafc;border:1px solid #e4e7ec;align-content:start;gap:10px;min-width:0;padding:12px;display:grid}.licensing-initialization-option>.secondary-button{justify-self:start}.licensing-file-picker{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;min-width:0;display:grid}.licensing-file-select{border:1px solid var(--rf-border);border-radius:var(--rf-radius);min-height:34px;color:var(--rf-text-title);cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;justify-content:center;align-items:center;padding:0 10px;font-size:12px;font-weight:600;line-height:1;display:inline-flex;position:relative}.licensing-file-select:hover{background:#f9fafb}.licensing-file-select.is-disabled{color:#98a2b3;cursor:not-allowed;background:#f2f4f7}.licensing-file-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.licensing-file-name{min-width:0;color:var(--rf-text-title);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.licensing-file-name.is-empty{color:var(--rf-text-secondary)}@media (width<=720px){.licensing-summary,.licensing-initialization-options{grid-template-columns:1fr}.licensing-module-heading,.licensing-configuration-heading{flex-direction:column;align-items:flex-start}.licensing-file-picker{grid-template-columns:1fr}.licensing-file-select{justify-self:start}}.entity-module-fieldset{border:1px solid var(--rf-border);border-radius:var(--rf-radius);margin:0;padding:12px}.entity-module-fieldset legend{color:var(--rf-label);padding:0 5px;font-size:12px;font-weight:600}.nested-table-wrap{border:1px solid var(--rf-border);border-radius:var(--rf-radius)}@media (width<=820px){.entity-config-heading{flex-direction:column;align-items:stretch}.entity-form-grid{grid-template-columns:1fr}.entity-form-submit{margin-top:0}}.home-company-context{margin-bottom:var(--rf-space-context-workspace)}.workspace-section{margin-top:var(--rf-space-context-workspace);gap:10px;display:grid}.workspace-section-heading{justify-content:space-between;align-items:end;gap:12px;display:flex}.workspace-section-heading h1{color:var(--rf-text-title);margin:0;font-size:18px;font-weight:700}.workspace-section-heading p{margin-top:3px;font-size:12px}.workspace-project-surface{padding:0}.workspace-company-cell{min-width:150px}.workspace-project-cell{min-width:210px}.workspace-access-cell{min-width:130px}.workspace-modules-cell{min-width:320px}.workspace-project-modules{gap:4px;min-width:180px;display:grid}.workspace-modules-section{margin-top:22px}.project-operational-access-editor{gap:12px;min-width:0;display:grid}.project-operational-access-editor .admin-table-toolbar{margin-bottom:0}.rf-module-identity-list{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.access-user-summary{background:var(--rf-surface-soft);border:1px solid var(--rf-border);border-radius:var(--rf-radius);padding:10px 12px}.access-invite-grid{grid-template-columns:minmax(250px,1.2fr) minmax(220px,1fr);gap:12px;display:grid}.project-structural-access-row{border:1px solid var(--rf-border);border-radius:var(--rf-radius-elevated);background:#fbfcfd;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:10px 12px;display:flex}.project-admin-toggle{cursor:pointer;white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.project-admin-toggle input{width:16px;height:16px;margin:0}.project-admin-toggle:has(input:disabled){cursor:default}.user-account-access-summary,.access-compact-summary{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.user-project-access-list{gap:12px;display:grid}.user-project-access-card{border:1px solid var(--rf-border);border-radius:var(--rf-radius-elevated);background:#fff;gap:12px;min-width:0;padding:14px;display:grid}.user-project-access-header{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.user-project-access-header>div{gap:2px;min-width:0;display:grid}.user-project-access-header strong{color:var(--rf-text-title);font-size:14px;font-weight:700}.user-project-access-header small{color:var(--rf-text-secondary);font-size:11px}.user-project-access-actions{justify-content:flex-end;display:flex}.access-count-summary{gap:2px;display:grid}.access-count-summary strong{color:var(--rf-text-title);font-size:12px;font-weight:600}.access-count-summary span{color:var(--rf-text-secondary);font-size:11px}.access-matrix-table td:nth-child(2){min-width:170px}.access-matrix-table td:nth-child(3),.access-matrix-table td:nth-child(4){min-width:190px}@media (width<=700px){.access-invite-grid{grid-template-columns:1fr}.project-structural-access-row,.user-project-access-header{flex-direction:column;align-items:flex-start}}.account-settings-surface{padding:22px}.account-settings-form{gap:22px;display:grid}.account-settings-section{gap:16px;display:grid}.account-settings-section+.account-settings-section{border-top:1px solid #dfe5ea;padding-top:20px}.account-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.account-settings-actions{align-items:center;gap:10px;display:flex}@media (width<=720px){.account-settings-surface{padding:16px}.account-settings-grid{grid-template-columns:1fr}}:root{--rf-font-family:"Segoe UI", Inter, Arial, sans-serif;--rf-bg:#f4f6f8;--rf-surface:#fff;--rf-surface-soft:#fbfcfd;--rf-text:#1f2937;--rf-text-title:#142434;--rf-text-secondary:#667085;--rf-label:#475467;--rf-border:#e2e7ee;--rf-input-border:#d7dde5;--rf-radius:2px;--rf-radius-elevated:3px;--rf-radius-card:var(--rf-radius-elevated);--rf-radius-round:999px;--rf-shadow-surface:none;--rf-shadow-popup:0 4px 12px #0f172a1f;--rf-shadow-modal:0 8px 24px #0f172a29;--rf-space-header-content:10px;--rf-space-stack:8px;--rf-space-context-workspace:16px;--rf-danger:#b42318;--rf-danger-hover:#991b1b;font-family:var(--rf-font-family);color:var(--rf-text);background:var(--rf-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box}*{scrollbar-color:#b9c6d1 #f3f6f9;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{border-radius:var(--rf-radius-round);background:#f3f6f9}::-webkit-scrollbar-thumb{border-radius:var(--rf-radius-round);background:#b9c6d1;border:2px solid #f3f6f9}::-webkit-scrollbar-thumb:hover{background:#8fa2b3}html,body,#root{background:var(--rf-bg);width:100%;min-width:320px;min-height:100dvh;margin:0}body{color:var(--rf-text);line-height:1.35;overflow-x:hidden;place-items:initial!important;display:block!important}body:before,body:after,#root:before,#root:after,.page:before,.page:after{content:none!important;display:none!important}button,input,select,textarea{font:inherit;font-weight:400}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}h1,h2,h3,p{margin:0}h1{color:var(--rf-text-title);letter-spacing:normal;font-size:24px;font-weight:600}h2{color:var(--rf-text-title);letter-spacing:normal;font-size:18px;font-weight:700}h3{color:var(--rf-text-title);text-align:center;margin:16px 0 8px;font-size:14px;font-weight:600}label{color:var(--rf-label);gap:5px;font-size:12px;font-weight:500;display:grid}input,select,textarea{width:100%;min-height:34px;color:var(--rf-text);background:var(--rf-surface);border:1px solid var(--rf-input-border);border-radius:var(--rf-radius);font-family:var(--rf-font-family);outline:none;padding:6px 10px;font-size:13px;line-height:1.2}textarea{resize:vertical;white-space:pre-wrap;min-height:96px;line-height:1.45}select option{font-family:var(--rf-font-family);font-size:13px;font-weight:400}input:focus,select:focus,textarea:focus{border-color:var(--module-primary,#6f8da3);box-shadow:0 0 0 2px color-mix(in srgb, var(--module-primary,#6f8da3) 16%, transparent)}.rf-date-input-shell{width:100%;min-width:0;display:block;position:relative}.rf-date-input-shell .rf-date-input{z-index:1;color:#0000;position:relative}.rf-date-input-shell .rf-date-input::-webkit-datetime-edit{color:#0000}.rf-date-input-shell .rf-date-input::-webkit-calendar-picker-indicator{z-index:3;cursor:pointer;position:relative}.rf-date-input-shell.is-disabled .rf-date-input::-webkit-calendar-picker-indicator{opacity:0;pointer-events:none}.rf-date-input-shell .rf-date-input:read-only::-webkit-calendar-picker-indicator{opacity:0;pointer-events:none}.rf-date-input-display{z-index:2;min-width:0;color:var(--rf-text);font-family:var(--rf-font-family);white-space:nowrap;pointer-events:none;align-items:center;font-size:13px;line-height:1.2;display:flex;position:absolute;inset:0 36px 0 10px;overflow:hidden}.rf-date-input-shell.is-empty .rf-date-input-display{color:var(--rf-text-muted,#7a8490)}.rf-date-input-shell.is-disabled .rf-date-input-display{right:10px}.page{background:var(--rf-bg);flex-direction:column;width:100%;height:100dvh;min-height:100dvh;max-height:100dvh;padding:16px 18px 0;display:flex;overflow:hidden}.rf-content-zone{width:100%;min-width:0;margin-left:0;margin-right:0}.rf-app-content-scroll{overscroll-behavior-y:contain;flex:auto;min-width:0;min-height:0;padding-bottom:28px;overflow:hidden auto}.app-header+.rf-content-zone,.app-header+.rf-app-content-scroll{margin-top:var(--rf-space-header-content)}.app-header{color:#fff;background:var(--module-header,#132635);border:1px solid var(--module-header-border,#20384a);border-radius:var(--rf-radius);flex:none;grid-template-columns:minmax(190px,1fr) auto minmax(300px,1fr);align-items:center;gap:16px;min-height:52px;padding:10px 18px;display:grid}.app-header>.rf-module-switcher{grid-column:1;justify-self:start}.app-header>.module-nav,.app-header>.admin-actions{grid-column:2;justify-self:center}.app-header>.user-block{grid-column:3;justify-self:end}.brand-block{align-items:center;gap:10px;min-width:0;display:flex}.brand-logo{object-fit:contain;flex:none;width:28px;height:28px}.brand-text{gap:1px;min-width:0;display:grid}.brand-title{color:#fff;font-size:13px;font-weight:600}.brand-subtitle{color:#ffffffad;font-size:10px;font-weight:400}.module-nav,.admin-actions{justify-content:center;align-items:center;gap:4px;min-width:0;display:flex}.module-nav-button,.admin-actions button{color:#ffffffb8;border-radius:var(--rf-radius);white-space:nowrap;background:0 0;border:1px solid #0000;min-height:30px;padding:6px 10px;font-size:12px;font-weight:600}.module-nav-button:hover:not(:disabled),.admin-actions button:hover:not(:disabled){color:#fff;background:#ffffff14}.module-nav-button.is-active,.admin-actions button.is-active{color:#fff;background:#ffffff24;border-color:#ffffff1f}.user-block{justify-content:flex-end;align-items:center;gap:10px;width:max-content;min-width:0;max-width:100%;display:flex}.user-meta{text-align:right;gap:1px;min-width:0;display:grid}.user-meta strong,.user-meta span{text-overflow:ellipsis;white-space:nowrap;max-width:260px;overflow:hidden}.user-meta strong{color:#fff;font-size:12px;font-weight:600}.user-meta span{color:#ffffffa3;font-size:10px;font-weight:400}.rf-account-link{color:inherit;border-radius:var(--rf-radius);outline:none;text-decoration:none}.rf-account-link:hover strong{text-underline-offset:2px;text-decoration:underline}.rf-account-link:focus-visible{box-shadow:0 0 0 2px #ffffff7a}.avatar{width:28px;height:28px;color:var(--module-header,#132635);border-radius:var(--rf-radius-round);background:#edf2f7;flex:none;place-items:center;font-size:12px;font-weight:600;display:grid}.header-button{color:#fff;border-radius:var(--rf-radius);background:#ffffff14;border:1px solid #ffffff2e;min-height:30px;padding:6px 10px;font-size:12px;font-weight:600}.header-button:hover:not(:disabled){background:#ffffff29}.rf-header-mobile-sections{display:none}.rf-header-mobile-sections>summary{list-style:none}.rf-header-mobile-sections>summary::-webkit-details-marker{display:none}.rf-header-mobile-sections-trigger{color:#fff;border-radius:var(--rf-radius);cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;place-content:center;gap:4px;width:34px;height:34px;padding:0;display:grid}.rf-header-mobile-sections-trigger span{background:currentColor;width:14px;height:1px;transition:transform .12s,opacity .12s;display:block}.rf-header-mobile-sections[open] .rf-header-mobile-sections-trigger span:first-child{transform:translateY(5px)rotate(45deg)}.rf-header-mobile-sections[open] .rf-header-mobile-sections-trigger span:nth-child(2){opacity:0}.rf-header-mobile-sections[open] .rf-header-mobile-sections-trigger span:nth-child(3){transform:translateY(-5px)rotate(-45deg)}.rf-header-mobile-sections-menu{z-index:1250;background:var(--module-header,#132635);border:1px solid var(--module-header-border,#20384a);border-radius:var(--rf-radius);width:min(280px,100vw - 24px);box-shadow:var(--rf-shadow-popup);gap:2px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.rf-header-mobile-sections-menu .module-nav-button{text-align:left;justify-content:flex-start;width:100%}.primary-button,.secondary-button,.ghost-button,.ghost-light-button,.danger-button{border-radius:var(--rf-radius);border:0;min-height:34px;padding:7px 12px;font-size:13px;font-weight:600}.primary-button{color:#fff;background:var(--module-primary,#4b7791)}.primary-button:hover:not(:disabled){background:var(--module-primary-hover,#426b84)}.secondary-button,.ghost-button,.ghost-light-button{color:var(--rf-text);background:#edf1f5}.secondary-button:hover:not(:disabled),.ghost-button:hover:not(:disabled),.ghost-light-button:hover:not(:disabled){background:#e4e9ef}.danger-button{color:#fff;background:var(--rf-danger)}.danger-button:hover:not(:disabled){background:var(--rf-danger-hover)}.primary-button.compact,.secondary-button.compact,.ghost-button.compact{min-width:72px;min-height:30px;padding:5px 10px;font-size:12px}.eyebrow{color:var(--module-primary-text,#31546a);letter-spacing:.02em;margin-bottom:3px;font-size:11px;font-weight:600}.muted{color:var(--rf-text-secondary);margin-top:4px;font-size:12px;font-weight:400}.login-shell{background:var(--rf-bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{text-align:left;background:var(--rf-surface);border:1px solid var(--rf-border);border-radius:var(--rf-radius-elevated);width:min(420px,100%);box-shadow:var(--rf-shadow-popup);padding:24px}.login-card-loading{padding-bottom:28px}.login-loading-action{margin-top:8px}.login-brand{text-align:center;justify-items:center;gap:7px;margin-bottom:8px;display:grid}.login-logo{object-fit:contain;width:38px;height:38px}.login-brand h1{color:var(--rf-text-title);letter-spacing:normal;margin:0;font-size:24px;font-weight:600}.login-form{gap:12px;margin-top:20px;display:grid}.login-form label{text-align:left}.login-submit-button{width:100%}.link-button{min-height:26px;color:var(--module-primary-text);text-align:center;background:0 0;border:0;padding:0;font-size:12px;font-weight:600}.link-button:hover:not(:disabled){color:var(--module-primary-hover);text-decoration:underline}.rf-gate-card{padding-bottom:24px}.login-brand .rf-gate-title{margin:2px 0 0;font-size:18px;font-weight:600;line-height:1.25}.rf-gate-message{margin-top:7px;line-height:1.45}.rf-gate-help{color:var(--rf-text-secondary);margin:2px 0 0;font-size:11px;font-weight:400;line-height:1.45}.rf-gate-action{width:100%;margin-top:18px}.error-box,.empty-state,.status-line{border-radius:var(--rf-radius);padding:10px 12px;font-size:12px}.error-box{color:#9f1f1f;background:#fff4f4;border:1px solid #f4c7c7}.empty-state{color:#667085;background:#fafbfc;border:1px dashed #d8dee6}.status-line{color:var(--module-primary-text,#31546a);background:var(--module-primary-soft,#eef5f9);border:1px solid var(--module-primary-border,#b8cedd);margin-bottom:12px}.page-error{margin-top:12px}.rf-content-main{padding-top:0}.admin-page{gap:var(--rf-space-stack);display:grid}.admin-breadcrumbs{color:#667085;align-items:center;gap:8px;min-height:22px;font-size:12px;display:flex}.admin-breadcrumbs button{color:var(--module-primary-text,#31546a);background:0 0;border:0;padding:0;font-size:12px;font-weight:600}.admin-breadcrumbs strong{color:#142434;font-weight:600}.admin-page-header{box-shadow:none;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:12px;padding:2px 0 4px;display:flex}.admin-page-header h1{color:#142434;font-size:20px;font-weight:700}.admin-page-header p{color:#667085;margin-top:3px;font-size:12px}.rf-section-title{color:var(--rf-text-title);text-transform:none;margin:0;font-size:18px;font-weight:700}.admin-table-surface{border-radius:var(--rf-radius);width:100%;min-width:0;box-shadow:var(--rf-shadow-surface);background:#fff;border:1px solid #e2e7ee;padding:14px;overflow:hidden}.admin-table-toolbar{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.admin-table-toolbar-heading{min-width:0;color:var(--rf-text-title);font-size:14px;font-weight:600;line-height:1.3;display:grid}.admin-table-context-row{grid-template-columns:minmax(220px,420px);gap:12px;margin-bottom:12px;display:grid}.admin-table-context-row:empty{margin-bottom:0;display:none}.admin-filter-group,.admin-table-toolbar-actions{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.admin-filter-group{flex:auto;justify-content:flex-start}.admin-table-toolbar-actions{justify-content:flex-end;margin-left:auto}.admin-table-toolbar input{width:220px}.admin-table-toolbar select{width:180px}.admin-surface-message{margin:0 0 12px}.rf-table-wrap{scrollbar-color:#b7c4cf #eef2f6;scrollbar-width:thin;width:100%;overflow-x:auto}.rf-table-wrap::-webkit-scrollbar{height:9px}.rf-table-wrap::-webkit-scrollbar-track{border-radius:var(--rf-radius-round);background:#eef2f6}.rf-table-wrap::-webkit-scrollbar-thumb{border-radius:var(--rf-radius-round);background:#b7c4cf;border:2px solid #eef2f6}.rf-table-wrap::-webkit-scrollbar-thumb:hover{background:#8fa2b3}.rf-table{border-collapse:collapse;width:100%}.rf-table th,.rf-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #edf0f3;padding:8px 9px}.rf-table th{color:#667085;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;-webkit-user-select:none;user-select:none;background:#fafbfc;font-size:10px;font-weight:600;position:relative;overflow:hidden}.rf-table th:not(:last-child):after{content:"";pointer-events:none;background:#a9b6c3;width:1px;height:60%;position:absolute;top:20%;right:3px}.rf-table td{color:#344054;font-size:12px;font-weight:400}.rf-table tbody tr:nth-child(2n){background:#f3f6f9}.rf-table tbody tr:nth-child(odd){background:#fff}.rf-table tbody tr:hover{background:#edf3f7}.readonly-input,select.readonly-input:disabled{color:var(--rf-text);cursor:default;opacity:1;background:#f2f5f8;border-color:#ccd6e0}.rf-context-bar{background:var(--rf-surface);border:1px solid var(--rf-border);border-radius:var(--rf-radius);box-shadow:var(--rf-shadow-surface);grid-template-columns:minmax(170px,230px) minmax(360px,1fr);gap:12px;margin-top:0;padding:10px 12px;display:grid}.rf-context-bar-single{grid-template-columns:minmax(220px,420px)}.rf-context-field{align-content:start;gap:6px;min-width:0;display:grid}.rf-context-field-label{color:#667085;letter-spacing:.02em;text-transform:uppercase;font-size:10px;font-weight:600}.rf-context-field>strong,.rf-context-field>.rf-context-value{color:#1f2937;font-size:13px;font-weight:600}.rf-module-identity{--rf-module-accent:#5f6973;--rf-module-accent-offset:2px;--rf-module-identity-padding:5px 7px;--rf-module-name-size:12px;--rf-module-name-weight:600;--rf-module-meta-size:10px;--rf-module-meta-weight:400;--rf-module-meta-color:var(--rf-text-secondary);min-width:0;max-width:100%;padding:var(--rf-module-identity-padding);color:var(--rf-text);background:var(--rf-surface);border-radius:var(--rf-radius);text-align:left;vertical-align:middle;border:0;outline:0;grid-template-columns:6px minmax(0,1fr);align-items:start;column-gap:7px;display:inline-grid}.rf-module-identity.is-compact{justify-self:start;width:fit-content}.rf-module-identity.is-block{justify-self:stretch;width:100%;display:grid}.rf-module-identity-accent{width:6px;height:10px;margin-top:var(--rf-module-accent-offset);background:var(--rf-module-accent);border-radius:1px;align-self:start}.rf-module-identity-copy{gap:2px;min-width:0;display:grid}.rf-module-identity-copy strong{color:var(--rf-text-title);font-size:var(--rf-module-name-size);font-weight:var(--rf-module-name-weight);text-overflow:ellipsis;white-space:nowrap;line-height:1.25;overflow:hidden}.rf-module-identity-copy small{color:var(--rf-module-meta-color);font-size:var(--rf-module-meta-size);font-weight:var(--rf-module-meta-weight);text-overflow:ellipsis;white-space:nowrap;line-height:1.2;overflow:hidden}.rf-module-identity.is-interactive{cursor:pointer}.rf-module-identity.is-interactive:hover:not(:disabled){background:var(--rf-surface-soft)}.rf-module-identity.is-interactive:focus-visible{outline:2px solid color-mix(in srgb, var(--rf-module-accent) 55%, #fff);outline-offset:1px}.rf-module-identity.is-interactive:disabled{cursor:default;opacity:.7}.rf-module-identity-list{justify-items:start;gap:4px;min-width:160px;display:grid}.rf-module-identity-list>.rf-module-identity.is-block{justify-self:stretch}.rf-module-switcher{justify-self:start;min-width:0;position:relative}.rf-module-switcher>summary{list-style:none}.rf-module-switcher>summary::-webkit-details-marker{display:none}.rf-module-switcher-summary{color:#fff;border-radius:var(--rf-radius);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;min-width:0;padding:0;display:flex}.rf-module-switcher-summary:hover .rf-module-switcher-current{background:#ffffff0f}.rf-module-switcher-current.rf-module-identity{--rf-module-accent-offset:3px;color:#fff;background:0 0}.rf-module-switcher-current .rf-module-identity-copy strong{color:#fff}.rf-module-switcher-current .rf-module-identity-copy small{color:#ffffffc7}.rf-module-switcher-menu{z-index:1200;border:1px solid var(--rf-border);border-radius:var(--rf-radius);width:min(320px,100vw - 36px);box-shadow:var(--rf-shadow-popup);background:#fff;gap:4px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);left:0}.rf-module-switcher-menu .rf-module-identity{--rf-module-accent-offset:3px}.rf-module-switcher-link{width:100%;color:inherit;text-decoration:none;display:block}.rf-module-switcher-link>.rf-module-identity.is-block{width:100%}.rf-module-switcher-link:hover .rf-module-identity{background:var(--rf-surface-soft)}.rf-module-switcher-link.is-current .rf-module-identity{background:color-mix(in srgb, var(--rf-module-accent) 7%, #fff)}.rf-module-switcher-link:focus-visible{outline:none}.rf-module-switcher-link:focus-visible .rf-module-identity{outline:2px solid color-mix(in srgb, var(--rf-module-accent) 55%, #fff);outline-offset:1px}.form-field{gap:6px}.field-label-row{color:#20242a;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:600;display:flex}.field-label-row em{color:#8a949f;text-transform:none;font-size:11px;font-style:normal;font-weight:400}.form-field small{color:#a61b1b;font-size:11px}.form-field .field-error-placeholder{visibility:hidden}.form-field.invalid input,.form-field.invalid select,.form-field.invalid textarea{border-color:#d24b4b;box-shadow:0 0 0 2px #d24b4b1c}.rf-user-identity{min-width:0;display:block}.rf-user-identity-name,.rf-user-identity-email{overflow-wrap:anywhere;min-width:0;display:block}.rf-user-identity-name{color:var(--rf-text-title);font-size:12px;font-weight:600}.rf-user-identity-email{color:var(--rf-text-secondary);margin-top:2px;font-size:11px;font-weight:400}.rf-role-badge{color:#475467;border-radius:var(--rf-radius);width:fit-content;max-width:100%;min-height:22px;font-family:var(--rf-font-family);white-space:nowrap;background:#f2f4f7;border:1px solid #d0d5dd;align-items:center;padding:3px 7px;font-size:10px;font-weight:600;line-height:1.2;display:inline-flex}.rf-role-badge-owner{color:#6b21a8;background:#faf5ff;border-color:#e9d5ff}.rf-role-badge-account-admin{color:#3730a3;background:#eef2ff;border-color:#c7d2fe}.rf-role-badge-project-admin{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.rf-role-badge-coordinator{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.rf-role-badge-viewer{color:#475467;background:#f2f4f7;border-color:#d0d5dd}.rf-role-badge-neutral{color:#475467;background:#f8fafc;border-color:#d8dee6}.rf-user-autocomplete{min-width:0;position:relative}.rf-user-autocomplete>input{width:100%}.rf-user-autocomplete-menu{z-index:20;border:1px solid var(--rf-border);border-radius:var(--rf-radius);max-height:220px;box-shadow:var(--rf-shadow-popup);background:#fff;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.rf-user-autocomplete-option{width:100%;min-height:0;color:inherit;text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0f3;border-radius:0;padding:8px 10px;display:block}.rf-user-autocomplete-option:last-of-type{border-bottom:0}.rf-user-autocomplete-option:hover,.rf-user-autocomplete-option:focus-visible{background:var(--module-primary-soft,#f3f6f9)}.rf-user-autocomplete-hint{color:var(--rf-text-secondary);background:#fbfcfd;padding:8px 10px;font-size:11px;line-height:1.35}.modal-backdrop{z-index:50;background:#0f172a6b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.entity-modal,.admin-modal{border-radius:var(--rf-radius-elevated);width:min(980px,100vw - 48px);max-height:calc(100vh - 64px);box-shadow:var(--rf-shadow-modal);background:#fff;border:1px solid #dfe6ee;flex-direction:column;display:flex;overflow:hidden}.entity-modal-medium,.parameter-modal{border-radius:var(--rf-radius-elevated);width:min(620px,100vw - 48px);max-height:calc(100vh - 64px);box-shadow:var(--rf-shadow-modal);background:#fff;border:1px solid #dfe6ee;flex-direction:column;display:flex;overflow:hidden}.modal-header{border-bottom:1px solid #edf0f3;justify-content:center;align-items:center;min-height:56px;padding:14px 56px;display:flex;position:relative}.modal-header h2{color:#20242a;text-align:center;text-transform:uppercase;margin:0;font-size:18px;font-weight:600}.compact-header{min-height:50px}.modal-close,.modal-close-button{color:#667085;border-radius:var(--rf-radius);background:0 0;border:0;width:32px;height:32px;min-height:32px;padding:0;font-size:28px;font-weight:400;line-height:1;position:absolute;top:12px;right:16px}.modal-close:hover:not(:disabled),.modal-close-button:hover:not(:disabled){color:#667085;background:#f2f4f7}.entity-modal>form,.entity-modal-medium>form,.parameter-modal>form,.admin-modal>form{flex-direction:column;flex:auto;min-height:0;display:flex}.entity-modal-body,.admin-body,.parameter-modal>.form-grid{flex:auto;min-height:0;overflow:hidden auto}.entity-modal-body{gap:12px;padding:18px 20px 20px;display:grid}.entity-modal-body-sections{padding:0}.rf-embedded-feedback{justify-self:stretch;width:100%;max-width:100%}.rf-modal-feedback{justify-self:stretch;width:auto;max-width:none;margin:12px 18px 0;font-weight:400}.rf-copyable-value-wrap{align-items:center;max-width:100%;display:inline-flex;position:relative}.rf-copyable-value{cursor:copy;background:0 0;border:0;max-width:100%;min-height:0;padding:0;display:inline-flex}.rf-copyable-value:hover code,.rf-copyable-value:focus-visible code{border-color:var(--module-primary-border,#b8cedd);box-shadow:0 0 0 2px color-mix(in srgb, var(--module-primary,#4b7791) 14%, transparent)}.rf-copyable-feedback{z-index:4;color:#fff;border-radius:var(--rf-radius);pointer-events:none;background:#344054;min-width:max-content;padding:4px 7px;font-size:10px;font-weight:400;line-height:1.2;position:absolute;bottom:calc(100% + 5px);right:0}.rf-copyable-feedback:empty{display:none}.entity-config-section{border-bottom:1px solid var(--rf-border);gap:12px;padding:18px 22px;display:grid}.entity-config-section:last-child{border-bottom:0}.entity-config-section h3{color:#142434;text-align:left;margin:0;font-size:14px;font-weight:700}.modal-footer{background:#fbfcfd;border-top:1px solid #edf0f3;justify-content:space-between;align-items:center;gap:10px;padding:14px 20px;display:flex}.modal-footer-actions{justify-content:flex-end;gap:10px;margin-left:auto;display:flex}@media (width<=820px){.admin-page-header,.admin-table-toolbar,.admin-filter-group,.admin-table-toolbar-actions{flex-direction:column;align-items:stretch}.admin-table-toolbar-actions{margin-left:0}.admin-table-toolbar input,.admin-table-toolbar select{width:100%}}@media (width<=720px){.rf-app-content-scroll{padding-inline-end:8px}.rf-context-bar,.rf-context-bar-single{grid-template-columns:1fr}.page{padding:12px}.app-header{grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:10px 12px}.app-header>.rf-module-switcher{grid-area:1/1;justify-self:start}.app-header>.rf-header-desktop-nav{display:none}.app-header>.rf-header-mobile-sections{grid-area:1/2;justify-self:end;display:block;position:relative}.app-header>.user-block{grid-area:2/1/auto/-1;justify-self:stretch}.user-block{flex-wrap:wrap;justify-content:flex-start;width:100%;max-width:none}.user-meta{text-align:left;order:2}.avatar{order:1}.header-button{order:3;margin-left:auto}.user-meta strong,.user-meta span{max-width:calc(100vw - 160px)}}select:not([multiple]),.rf-select{color:var(--rf-text);background-color:var(--rf-surface);border-radius:var(--rf-radius)!important;appearance:none!important;height:34px!important;min-height:34px!important;font-family:var(--rf-font-family)!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M2 2l4 4 4-4' fill='none' stroke='%23667085' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-position:right 10px center!important;background-repeat:no-repeat!important;padding:6px 32px 6px 10px!important;font-size:13px!important;font-weight:400!important;line-height:20px!important}.rf-select{border:1px solid var(--rf-input-border);outline:none;width:100%}.rf-select:focus{border-color:var(--module-primary,#6f8da3);box-shadow:0 0 0 2px color-mix(in srgb, var(--module-primary,#6f8da3) 16%, transparent)}.rf-select:disabled{color:var(--rf-text-secondary);cursor:not-allowed;background-color:#f3f5f7}select:not([multiple]):disabled,.rf-select:disabled{background-image:none!important;padding-right:10px!important}.rf-table-sort-button{width:auto;min-height:24px;color:inherit;font:inherit;font-weight:inherit;text-transform:inherit;letter-spacing:inherit;background:0 0;border:0;border-radius:0;justify-content:flex-start;align-items:center;gap:6px;padding:0;display:inline-flex}.rf-table-sort-button:hover,.rf-table-sort-button:focus-visible,.rf-table-sort-button.is-active{color:var(--rf-text-title)}.rf-table-sort-indicator{color:var(--rf-text-secondary);opacity:.45;font-size:9px;line-height:1}.rf-table-sort-button.is-active .rf-table-sort-indicator{color:var(--rf-text-title);opacity:1}.rf-pagination{justify-content:flex-end;align-items:center;gap:4px;padding-top:10px;display:flex}.rf-pagination-button{min-width:30px;height:30px;min-height:30px;color:var(--rf-text);background:var(--rf-surface);border:1px solid var(--rf-input-border);border-radius:var(--rf-radius);font-family:var(--rf-font-family);place-items:center;padding:0 8px;font-size:12px;font-weight:500;display:inline-grid}.rf-pagination-button:hover:not(:disabled),.rf-pagination-button.is-active{color:var(--module-primary,#4b7791);background:var(--module-primary-soft,#eef5f9);border-color:var(--module-primary-border,#b8cedd)}.rf-pagination-button.is-active{font-weight:700}.rf-pagination-ellipsis{min-width:24px;height:30px;color:var(--rf-text-secondary);place-items:center;font-size:12px;display:inline-grid}.rf-checkbox{width:16px;height:16px;margin:0}.rf-module-access-list{gap:8px;min-width:0;display:grid}.rf-module-access-row{border:1px solid var(--rf-border);border-radius:var(--rf-radius-elevated);background:#fff;grid-template-columns:22px minmax(190px,max-content) minmax(220px,1fr);align-items:center;gap:10px;min-width:0;padding:8px 10px;display:grid}.rf-module-access-row.is-inherited{background:#fbfcfd}.rf-module-access-row.is-unavailable{background:#fcfcfd}.rf-module-access-toggle{justify-content:center;align-items:center;display:flex}.rf-module-access-toggle input{width:16px;height:16px;margin:0}.rf-module-access-control{justify-content:flex-end;align-items:center;min-width:0;display:flex}.rf-module-access-control .rf-select,.rf-module-access-control select{width:min(220px,100%)}.rf-module-access-state{color:var(--rf-text-secondary);text-align:right;font-size:12px;font-weight:600;line-height:1.3}.rf-module-access-state.is-muted,.rf-module-access-empty{color:var(--rf-text-muted,#7b8794);font-weight:400}.rf-module-access-empty{border:1px dashed var(--rf-border);border-radius:var(--rf-radius-elevated);padding:10px 12px;font-size:12px}@media (width<=720px){.rf-module-access-row{grid-template-columns:22px minmax(0,1fr)}.rf-module-access-control{grid-column:2;justify-content:flex-start}.rf-module-access-control .rf-select,.rf-module-access-control select{width:100%}.rf-module-access-state{text-align:left}}.rf-entity-secondary{color:var(--rf-text-secondary);margin-top:2px;font-size:11px;font-weight:400;line-height:1.25;display:block}
