:root{color:#edf6ff;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#07111d;font-family:Inter,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#07111d;min-width:0;min-height:100vh;margin:0}#root{min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}h1,h2,p{margin-top:0}.auth-page{color:#17243b;background:radial-gradient(at 17% 18%,#235b933b,#0000 42%),radial-gradient(at 82% 86%,#51c7ca1a,#0000 38%),#f3f7fc;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(28px,5vw,72px);max-width:none;min-height:100svh;margin:0 auto;padding:clamp(28px,7vw,88px) clamp(24px,7vw,104px);display:grid;overflow:hidden}:is(.form-stack :is(input,select):user-invalid,.settings-form :is(input,select):user-invalid,.module-record-form :is(input,select):user-invalid,.record-action :is(input,select):user-invalid){border-color:#c64b4b;box-shadow:0 0 0 3px #c64b4b1a}.auth-brand{justify-self:end;width:100%;max-width:520px}.editor-field{gap:7px;min-width:0;display:grid}.editor-field>label{color:#4a5b71;font-size:.82rem;font-weight:650}.rich-editor{background:#fff;border:1px solid #d8e1eb;border-radius:9px;min-width:0;transition:border-color .16s,box-shadow .16s;position:relative;overflow:hidden}.rich-editor:focus-within{border-color:#4c93d1;box-shadow:0 0 0 3px #4c93d121}.rich-editor.invalid{border-color:#c64b4b}.rich-editor-toolbar{background:#f8fafc;border-bottom:1px solid #e6ecf2;flex-wrap:wrap;gap:5px;padding:7px;display:flex}.rich-editor-toolbar button{color:#344b65;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;min-width:34px;min-height:32px;padding:5px 8px;font-size:.78rem}.rich-editor-toolbar button:hover,.rich-editor-toolbar button:focus-visible{background:#fff;border-color:#d3dfeb}.rich-editor-content{color:#1e2d43;overflow-wrap:anywhere;outline:none;min-height:132px;max-height:440px;padding:12px 14px;font-size:.88rem;line-height:1.65;overflow:auto}.rich-editor-content[aria-invalid=true]{background:#fffdfd}.rich-editor-content:empty:before{color:#96a2b1;content:attr(data-placeholder);pointer-events:none}.rich-editor-content p{margin:0 0 .65em}.rich-editor-content p:last-child{margin-bottom:0}.rich-editor-content ul,.rich-editor-content ol{padding-left:1.6em}.rich-editor-guidance{color:#8290a2;padding:0 12px 8px;font-size:.7rem;font-weight:400;display:block}.auth-brand .brand-mark{margin-bottom:clamp(26px,4vw,48px)}.module-record-form .editor-field>label,.record-action .editor-field>label{font-size:.76rem}.auth-brand .eyebrow{color:#3970b4;margin-bottom:12px}.auth-brand h1{letter-spacing:-.055em;color:#122541;overflow-wrap:anywhere;max-width:12ch;margin:0 0 20px;font-size:clamp(2.5rem,5vw,4.7rem);line-height:1.02}.auth-brand>p:not(.eyebrow){color:#53647b;max-width:42ch;font-size:clamp(.98rem,1.35vw,1.1rem);line-height:1.7}.brand-mark{color:#fff;background:linear-gradient(135deg,#51c7ca,#4c83dd);border-radius:16px;place-items:center;width:52px;height:52px;font-size:1.7rem;font-weight:800;display:grid;box-shadow:0 10px 24px #3a7cbf3d}.stack-tags{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.stack-tags span{color:#52657e;background:#fff9;border:1px solid #d6dfeb;border-radius:999px;padding:8px 13px;font-size:.78rem}.module-badges{margin-top:22px}.module-badges>.eyebrow{margin-bottom:9px;font-size:.63rem}.module-badges>div{flex-wrap:wrap;gap:7px;display:flex}.module-badges span{color:#48617e;background:#ffffffad;border:1px solid #d6dfeb;border-radius:999px;padding:6px 10px;font-size:.7rem;line-height:1.2}.auth-card{background:#fff;border:1px solid #e1e8f0;border-radius:20px;justify-self:start;width:100%;min-width:0;max-width:520px;overflow:hidden;box-shadow:0 24px 70px #2237551a}.auth-tabs{background:#f7f9fc;border-bottom:1px solid #e7edf4;grid-template-columns:1fr 1fr;display:grid}.auth-tabs button{color:#728198;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;min-height:56px;padding:14px 12px;font-weight:650}.auth-tabs button.selected{color:#245c9e;background:#fff;border-bottom-color:#3a83c9}.form-stack{gap:15px;padding:clamp(22px,3.2vw,30px);display:grid}.form-stack h2,.section-heading h2{color:#1a2c46;letter-spacing:-.025em;margin:4px 0 0;font-size:1.55rem}.eyebrow{color:#3982bd;text-transform:uppercase;letter-spacing:.12em;margin:0;font-size:.69rem;font-weight:750}.form-stack label,.settings-form label{color:#4a5b71;gap:7px;font-size:.82rem;font-weight:650;display:grid}.form-stack input,.form-stack select,.form-stack textarea,.settings-form input{color:#1e2d43;background:#fff;border:1px solid #d8e1eb;border-radius:9px;outline:none;width:100%;min-width:0;padding:11px 12px;transition:border-color .16s,box-shadow .16s}.auth-card .form-stack{gap:16px}.auth-card .form-stack input{min-height:46px}.auth-card .primary-button{width:100%;min-height:48px}.auth-card .platform-entry-link{margin:0 28px 20px;display:inline-flex}.auth-page :is(button,a,input,select):focus-visible{outline-offset:3px;outline:3px solid #3a83c9b3}.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus,.settings-form input:focus{border-color:#4c93d1;box-shadow:0 0 0 3px #4c93d121}.form-stack small{color:#8290a2;font-size:.72rem;font-weight:400}.form-section{background:#fbfcfe;border:1px solid #e5ebf2;border-radius:12px;gap:13px;padding:17px;display:grid}.form-section h3{color:#2b4565;margin:0;font-size:.9rem}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.primary-button{color:#fff;cursor:pointer;background:#2369a9;border:0;border-radius:9px;justify-content:center;align-items:center;padding:12px 17px;font-weight:700;transition:background .16s,transform .16s;display:inline-flex}.primary-button:hover:not(:disabled){background:#185990;transform:translateY(-1px)}.primary-button:disabled{opacity:.6;cursor:wait}.fine-print{color:#8592a4;margin:0;font-size:.76rem;line-height:1.6}.notice{border-radius:9px;margin:16px 22px 0;padding:11px 13px;font-size:.82rem;line-height:1.5}.notice.error{color:#a73434;background:#fff5f5;border:1px solid #f1caca}.notice.success{color:#17684d;background:#f0fff8;border:1px solid #bfe9d6}.registration-form{min-width:0}.portal-shell{color:#27374d;background:#f4f7fb;min-height:100vh}.sidebar{color:#d7e4f2;z-index:3;background:#10233b;flex-direction:column;width:260px;padding:22px 14px 14px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.sidebar-brand{align-items:center;gap:11px;padding:2px 9px 22px;display:flex}.brand-mark.small{border-radius:12px;width:38px;height:38px;font-size:1.2rem}.sidebar-brand strong,.sidebar-brand span{display:block}.sidebar-brand strong{color:#fff;font-size:.93rem}.sidebar-brand span{color:#93a9c2;margin-top:2px;font-size:.67rem}.tenant-switcher{background:#ffffff0b;border:1px solid #bdd4ee29;border-radius:10px;gap:6px;margin-bottom:18px;padding:13px 12px;display:grid}.tenant-switcher span{color:#90a9c4;letter-spacing:.09em;font-size:.59rem;font-weight:700}.tenant-switcher strong{color:#fff;font-size:.8rem;line-height:1.4}.nav-group{gap:3px;margin:0 0 15px;display:grid}.nav-group>p{color:#8098b4;text-transform:uppercase;letter-spacing:.1em;margin:0 10px 6px;font-size:.59rem;font-weight:750}.nav-item{color:#b6c8dc;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-size:.78rem;display:flex}.nav-item:hover,.nav-item.active{color:#fff;background:#1e3d5d}.nav-item.active .nav-indicator{background:#5fd6cb;box-shadow:0 0 0 3px #5fd6cb1f}.nav-indicator{background:#5d7591;border-radius:3px;width:7px;height:7px}.sidebar-footer{border-top:1px solid #bed3eb26;align-items:center;gap:9px;margin-top:auto;padding:13px 7px 3px;display:flex}.user-avatar{color:#fff;background:#376e9c;border-radius:50%;place-items:center;width:32px;height:32px;font-size:.65rem;font-weight:750;display:grid}.user-details{flex:1;gap:2px;min-width:0;display:grid}.user-details strong{text-overflow:ellipsis;white-space:nowrap;color:#fff;font-size:.72rem;overflow:hidden}.user-details span{color:#98adc4;font-size:.63rem}.signout-button{color:#9eb4cc;cursor:pointer;background:0 0;border:0;font-size:1rem}.portal-main{max-width:none;margin-left:260px;padding:0 36px 48px}.portal-header{border-bottom:1px solid #e2e8ef;justify-content:space-between;align-items:center;min-height:99px;margin-bottom:26px;display:flex}.portal-header h1{color:#192d48;letter-spacing:-.03em;margin:4px 0 0;font-size:1.7rem}.breadcrumb{color:#74849a;margin:0;font-size:.72rem}.breadcrumb span{color:#b3bfcd;padding:0 5px}.header-chip{color:#587769;background:#fbfffd;border:1px solid #dce8e4;border-radius:999px;align-items:center;gap:7px;padding:7px 11px;font-size:.68rem;display:flex}.online-dot{background:#43b586;border-radius:50%;width:7px;height:7px}.welcome-panel{background:linear-gradient(115deg,#e1f3f5 0%,#e8f0fc 65%,#e9eaff 100%);border:1px solid #d8e6f0;border-radius:15px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px;padding:28px 30px;display:flex}.welcome-panel h2{color:#1a3655;letter-spacing:-.03em;margin:11px 0 7px;font-size:1.7rem}.welcome-panel p{color:#566d83;max-width:600px;margin:0;font-size:.86rem;line-height:1.6}.status-badge{color:#287353;letter-spacing:.08em;text-transform:uppercase;background:#e4f6ef;border:1px solid #c8e9da;border-radius:999px;padding:6px 10px;font-size:.62rem;font-weight:750;display:inline-flex}.overview-grid{grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:29px;display:grid}.overview-card{background:#fff;border:1px solid #e3eaf1;border-radius:12px;min-height:137px;padding:17px 19px}.metric-icon{border-radius:9px;place-items:center;width:29px;height:29px;font-size:.8rem;font-weight:800;display:grid}.metric-icon.blue{color:#4084c1;background:#e7f2ff}.metric-icon.mint{color:#34a879;background:#e3f7ef}.metric-icon.violet{color:#7562bd;background:#eeeaff}.overview-card p{color:#738299;margin:12px 0 1px;font-size:.72rem}.overview-card strong{color:#263d5a;margin-bottom:3px;font-size:1.2rem;display:block}.overview-card>span:last-child{color:#92a0b0;font-size:.66rem}.section-heading{justify-content:space-between;align-items:end;gap:15px;margin-bottom:14px;display:flex}.section-heading h2{font-size:1.2rem}.portal-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.portal-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #e1e8ef;border-radius:12px;align-content:start;gap:11px;min-height:162px;padding:16px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.portal-card:hover{border-color:#bdd2e5;transform:translateY(-2px);box-shadow:0 9px 22px #23436612}.portal-card-top{justify-content:space-between;align-items:center;display:flex}.card-index{color:#6f98bd;font-size:.67rem;font-weight:750}.portal-arrow{color:#8ca3b9}.portal-card strong{color:#2b405b;font-size:.88rem}.portal-card>span:nth-of-type(2){color:#7d8b9e;font-size:.71rem;line-height:1.55}.portal-card small{color:#5584a3;letter-spacing:.08em;font-size:.57rem;font-weight:750}.page-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:17px;display:grid}.panel{background:#fff;border:1px solid #e0e7ef;border-radius:13px;padding:21px}.project-create .form-stack{gap:17px;padding:0}.project-create .section-heading{margin-bottom:17px}.project-create .form-stack label,.settings-form label{font-size:.76rem}.project-create input,.project-create textarea,.settings-form input{padding:9px 10px;font-size:.8rem}.project-list{min-height:300px}.project-documents{grid-column:1/-1}.project-documents .section-heading label,.document-upload-form label{color:#4a5b71;gap:7px;font-size:.76rem;font-weight:650;display:grid}.project-documents select,.document-upload-form input{color:#1e2d43;background:#fff;border:1px solid #d8e1eb;border-radius:9px;min-width:0;padding:9px 10px}.document-upload-form{grid-template-columns:minmax(140px,.7fr) minmax(200px,1fr) auto;align-items:end;gap:12px;padding:15px 0 20px;display:grid}.document-upload-form small{color:#8290a2;grid-column:1/-1;font-size:.72rem}.count-badge{color:#6d8198;background:#f0f5fa;border-radius:999px;padding:6px 9px;font-size:.65rem}.empty-state{color:#76869a;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:205px;display:flex}.empty-state>span{color:#5c98c8;margin-bottom:8px;font-size:1.7rem}.empty-state strong{color:#3b5068;font-size:.84rem}.empty-state p{margin:5px 0;font-size:.72rem}.table-wrap{overflow-x:auto}table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:.7rem}th{text-align:left;color:#8290a2;border-bottom:1px solid #e7edf3;padding:10px 9px;font-weight:650}td{color:#63748a;border-bottom:1px solid #edf1f5;padding:13px 9px}td strong{color:#30455f;white-space:normal;max-width:220px;display:inline-block}.record-status{color:#687a8f;background:#f0f3f7;border-radius:999px;padding:4px 8px;font-size:.62rem}.record-status.draft{color:#916d23;background:#fff4dc}.record-status.submitted{color:#3b75b0;background:#e7f2ff}.record-status.approved{color:#28734e;background:#e2f6ec}.text-button{color:#2e76b1;cursor:pointer;background:0 0;border:0;font-size:.68rem;font-weight:700}.settings-panel{max-width:900px}.portal-header-actions{align-items:center;gap:12px;display:flex}.notification-center{position:relative}.notification-toggle{color:#43566f;cursor:pointer;background:#fff;border:1px solid #dce5ef;border-radius:9px;align-items:center;gap:7px;padding:9px 12px;font-size:.72rem;font-weight:700;display:flex}.notification-count{color:#fff;text-align:center;background:#2672b3;border-radius:10px;min-width:18px;padding:2px 5px}.notification-popover{z-index:20;background:#fff;border:1px solid #dfe7ef;border-radius:12px;width:min(390px,100vw - 32px);max-height:440px;padding:14px;position:absolute;top:calc(100% + 8px);right:0;overflow:auto;box-shadow:0 16px 40px #17345124}.notification-heading{justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.notification-popover ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.notification-popover li{background:#f7f9fc;border-radius:8px}.notification-popover li.unread{background:#eef6fd}.notification-item{color:#40536b;cursor:pointer;text-align:left;background:0 0;border:0;gap:5px;width:100%;padding:10px;display:grid}.notification-item strong{font-size:.75rem}.notification-item span,.notification-item small{font-size:.68rem}.settings-panel>.panel,.settings-panel .page-grid>.panel{min-width:0;padding:22px}.permission-list{border:1px solid #dfe7ef;border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px 14px;max-height:260px;padding:12px;display:grid;overflow:auto}.permission-list legend{color:#64758a;padding:0 6px;font-size:.72rem;font-weight:700}.permission-list label,.user-role-editor label{color:#45566d;align-items:center;gap:7px;font-size:.7rem;display:flex}.permission-list input,.user-role-editor input{width:auto}.user-role-editor{gap:6px;display:grid}.admin-actions{white-space:nowrap}.admin-actions .text-button{margin-right:7px}.settings-form{grid-template-columns:1fr 1fr;gap:15px;display:grid}.settings-form .primary-button{justify-self:start}.module-workspace{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:18px;display:grid}.module-intro,.module-next{background:#fff;border:1px solid #e0e7ef;border-radius:13px;padding:25px}.module-intro h2{color:#1e3551;margin:15px 0 8px;font-size:1.8rem}.module-intro p{color:#718198;max-width:60ch;font-size:.88rem;line-height:1.7}.module-next h3{color:#354c68;margin:0 0 16px;font-size:.92rem}.module-next ul{gap:12px;margin:0 0 24px;padding:0;list-style:none;display:grid}.module-next li{color:#5c6e84;align-items:flex-start;gap:10px;font-size:.78rem;line-height:1.5;display:flex}.module-next li span{color:#36a77d;font-weight:800}.module-portal{gap:16px;display:grid}.module-portal-heading{background:#fff;border:1px solid #e0e7ef;border-radius:13px;justify-content:space-between;align-items:flex-start;gap:18px;padding:21px 24px;display:flex}.module-portal-heading h2{color:#1e3551;margin:5px 0 7px;font-size:1.65rem}.module-portal-heading p:not(.eyebrow){color:#718198;margin:0;font-size:.82rem}.module-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}.module-form-panel,.module-records-panel{min-width:0}.module-record-form{gap:13px}.module-record-form label,.record-action label{color:#4a5b71;gap:6px;font-size:.76rem;font-weight:650;display:grid}.module-record-form input,.module-record-form select,.module-record-form textarea,.record-action input,.record-action select,.record-action textarea{color:#1e2d43;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #d8e1eb;border-radius:8px;padding:9px 10px}.module-record-form textarea,.record-action textarea{resize:vertical}.module-records-panel>.section-heading{margin-bottom:15px}.record-list{gap:12px;display:grid}.research-record{background:#fcfdff;border:1px solid #e5ebf2;border-radius:11px;gap:13px;padding:15px;display:grid}.research-record-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.research-record-heading h4{color:#2a405d;margin:8px 0 4px;font-size:.9rem}.research-record-heading p{color:#78889b;overflow-wrap:anywhere;margin:0;font-size:.7rem}.record-meta{flex-wrap:wrap;gap:4px 8px;margin:0;font-size:.68rem;display:flex}.record-meta dt{color:#8190a3}.record-meta dd{color:#415771;margin:0 12px 0 0;font-weight:700}.record-action{border-top:1px solid #e9eef4;gap:9px;padding-top:12px;display:grid}.secondary-button{color:#2c679d;cursor:pointer;background:#f3f8fd;border:1px solid #c8d8e8;border-radius:8px;padding:9px 12px;font-size:.72rem;font-weight:700}.secondary-button:disabled{opacity:.55;cursor:wait}.module-switch{gap:7px;display:flex}.module-switch button{color:#52657e;cursor:pointer;background:#fff;border:1px solid #dce5ef;border-radius:8px;padding:9px 14px;font-size:.75rem;font-weight:650}.module-switch button.selected{color:#245c9e;background:#edf6ff;border-color:#3a83c9}.history-toggle{justify-self:start}.activity-list{color:#718198;gap:9px;margin:0;padding-left:20px;font-size:.7rem;display:grid}.activity-list li{padding-left:3px}.activity-list strong,.activity-list span,.activity-list time{display:block}.activity-list strong{color:#354c68}.activity-list p{overflow-wrap:anywhere;margin:4px 0 0}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.report-controls{background:#fff;border:1px solid #e0e7ef;border-radius:11px;align-items:flex-end;gap:10px;padding:14px 18px;display:flex}.report-controls label{color:#53647b;gap:5px;font-size:.75rem;font-weight:650;display:grid}.report-controls input{color:#1e2d43;border:1px solid #d8e1eb;border-radius:8px;min-width:130px;padding:9px}.report-card{background:#fff;border:1px solid #e0e7ef;border-radius:12px;min-width:0;padding:17px}.report-card pre{color:#52657e;white-space:pre-wrap;max-height:260px;margin:10px 0 0;font-size:.7rem;overflow:auto}.record-status.underreview,.record-status.reviewassigned,.record-status.internalreview,.record-status.submittedtofunder{color:#3b75b0;background:#e7f2ff}.record-status.completed,.record-status.active,.record-status.deposited,.record-status.indexed,.record-status.ethicsapproved{color:#28734e;background:#e2f6ec}.record-status.rejected,.record-status.suspended,.record-status.notawarded{color:#a64e4e;background:#ffebeb}.portal-main>.notice{margin:0 0 14px}@media (width<=1120px){.portal-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-grid{grid-template-columns:1fr}}@media (width<=820px){.auth-page{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(20px,4vw,34px);padding:32px clamp(22px,5vw,42px)}.auth-brand{justify-self:stretch;max-width:none}.auth-brand .brand-mark{width:46px;height:46px;margin-bottom:18px}.auth-brand h1{max-width:16ch;font-size:clamp(1.9rem,5vw,2.5rem)}.auth-brand>p:not(.eyebrow){margin:0}.stack-tags{margin-top:18px}.auth-card{justify-self:end;max-width:520px}.sidebar{width:68px;padding:14px 7px}.sidebar-brand{justify-content:center;padding:3px 0 18px}.sidebar-brand>div:last-child,.tenant-switcher,.nav-group>p{display:none}.nav-group{justify-items:center;display:grid}.nav-item{justify-content:center;width:42px;padding:13px;font-size:0;display:flex}.nav-item.active .nav-indicator{width:10px;height:10px}.sidebar-footer{flex-direction:column}.user-details,.signout-button{display:none}.portal-main{margin-left:68px;padding:0 18px 30px}.portal-header{min-height:82px;margin-bottom:18px}.portal-header h1{font-size:1.3rem}.header-chip{display:none}.overview-grid,.module-workspace,.module-layout{grid-template-columns:1fr}}@media (width<=680px){.auth-page{grid-template-columns:minmax(0,1fr);align-content:start;justify-items:center;gap:26px;padding:32px 22px;overflow:visible}.auth-brand,.auth-card{justify-self:center;width:100%;max-width:520px}}@media (width<=560px){.auth-page{align-content:start;gap:20px;min-height:100svh;padding:20px 14px 28px}.auth-brand{max-width:none}.auth-brand .brand-mark{border-radius:13px;width:42px;height:42px;margin-bottom:15px;font-size:1.4rem}.auth-brand .eyebrow{margin-bottom:7px}.auth-brand h1{max-width:15ch;margin-bottom:10px;font-size:clamp(2rem,10vw,2.8rem);line-height:1.04}.auth-brand>p:not(.eyebrow){font-size:.94rem;line-height:1.55}.stack-tags{gap:7px;margin-top:14px}.stack-tags span{padding:6px 10px;font-size:.7rem}.auth-card{border-radius:15px}.auth-tabs button{min-height:50px;padding:11px 8px;font-size:.83rem}.auth-card .form-stack{gap:13px;padding:20px 17px}.auth-card .form-stack h2{font-size:1.3rem}.auth-card .platform-entry-link{margin:0 17px 17px}.module-badges{margin-top:16px}.form-stack{padding:21px 17px}.form-row,.document-upload-form,.settings-form,.report-grid{grid-template-columns:1fr}.module-portal-heading{flex-direction:column}.portal-card-grid{grid-template-columns:1fr}.welcome-panel{flex-direction:column;align-items:flex-start;padding:21px}.portal-main{padding:0 12px 24px}}@media (width<=360px){.auth-page{padding-inline:10px}.auth-brand h1{font-size:1.9rem}.auth-tabs button{font-size:.75rem}}@media (height<=700px) and (width>=821px){.auth-page{min-height:100svh;padding-block:28px}}.platform-page{color:#23364e;background:#f3f6fa;min-height:100vh;padding:clamp(20px,5vw,56px)}.platform-header{justify-content:space-between;align-items:flex-start;gap:20px;max-width:1100px;margin:0 auto 24px;display:flex}.platform-header h1{color:#1a2c46;margin:6px 0;font-size:clamp(1.5rem,3vw,2rem)}.platform-header p:last-child{color:#74849a;margin:5px 0;font-size:.82rem}.platform-page>.panel,.platform-page>.notice{max-width:1100px;margin:0 auto 16px}.platform-auth-panel{max-width:560px!important}.platform-auth-panel .form-stack{padding:8px}.platform-back-link{margin:10px 8px 0;display:inline-block}.platform-entry-link{width:fit-content;margin:0 28px 22px;display:block}.scheduled-reports-panel{margin-top:18px}.scheduled-report-create{align-items:end;gap:12px;margin:14px 0;display:flex}.scheduled-report-create label{color:#4a5b71;gap:6px;font-size:.75rem;font-weight:650;display:grid}.scheduled-report-create select{color:#1e2d43;background:#fff;border:1px solid #d8e1eb;border-radius:8px;min-width:150px;padding:9px}.workflow-designer-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}.workflow-editor{gap:13px;padding:21px}.workflow-editor label,.workflow-step-editor label{color:#4a5b71;gap:6px;font-size:.75rem;font-weight:650;display:grid}.workflow-editor input:not([type=checkbox]),.workflow-editor select{color:#1e2d43;background:#fff;border:1px solid #d8e1eb;border-radius:8px;min-width:0;padding:9px}.workflow-step-editor{border:1px solid #e0e7ef;border-radius:10px;gap:10px;min-width:0;margin:0;padding:13px;display:grid}.workflow-step-editor legend{color:#3982bd;padding:0 5px;font-size:.72rem;font-weight:700}.workflow-step-editor .workflow-required{align-items:center;gap:8px;font-weight:500;display:flex}.workflow-editor-actions,.workflow-definition-actions{flex-wrap:wrap;align-items:center;gap:11px;display:flex}.workflow-definitions{min-width:0}.workflow-definition-list{gap:11px;display:grid}.workflow-definition-card{background:#fbfcfe;border:1px solid #e5ebf2;border-radius:10px;min-width:0;padding:14px}.workflow-definition-heading{justify-content:space-between;gap:10px;display:flex}.workflow-definition-heading>div{gap:4px;display:grid}.workflow-definition-heading strong{color:#30455f;font-size:.85rem}.workflow-definition-heading>div>span{color:#7d8ca0;font-size:.7rem}.workflow-definition-card ol{color:#63748a;padding-left:20px;font-size:.74rem}.workflow-definition-card li{padding:3px 0}.workflow-definition-actions{padding-top:6px}.platform-tenant-list{gap:15px;display:grid}.platform-tenant-card{background:#fbfcfe;border:1px solid #e5ebf2;border-radius:12px;min-width:0;padding:17px}.platform-tenant-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.platform-tenant-heading h3{color:#2b4565;margin:0 0 5px;font-size:1rem}.platform-tenant-heading span:not(.record-status){color:#78889d;overflow-wrap:anywhere;font-size:.74rem}.platform-status-actions{gap:14px;margin:8px 0 16px;display:flex}.platform-subscription-form{border-top:1px solid #e5ebf2;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;padding-top:15px;display:grid}.platform-subscription-form label{color:#4a5b71;gap:6px;min-width:0;font-size:.72rem;font-weight:650;display:grid}.platform-subscription-form input,.platform-subscription-form select{color:#1e2d43;background:#fff;border:1px solid #d8e1eb;border-radius:8px;width:100%;min-width:0;padding:9px}@media (width<=700px){.platform-subscription-form{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-designer-grid{grid-template-columns:1fr}}@media (width<=480px){.platform-page{padding:18px 12px}.platform-subscription-form{grid-template-columns:1fr}.platform-tenant-heading{flex-direction:column}.scheduled-report-create{flex-direction:column;align-items:stretch}}.billing-page{gap:20px;display:grid}.billing-current,.billing-history{padding:20px}.billing-heading{margin-bottom:-8px}.billing-plan-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;display:grid}.billing-plan{flex-direction:column;align-items:flex-start;gap:12px;padding:20px;display:flex}.billing-plan h3,.billing-plan p{margin:0}.billing-plan>p:not(.eyebrow){color:#687a91;min-height:36px;font-size:.8rem}.billing-price{color:#234f87;font-size:1.35rem}.billing-plan .primary-button{width:100%;margin-top:auto}.billing-payment-list,.platform-plan-list,.platform-payment-list{gap:12px;display:grid}.billing-payment-row,.platform-plan-row{border-bottom:1px solid #e8edf3;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 0;display:flex}.billing-payment-row:last-child,.platform-plan-row:last-child{border-bottom:0}.billing-payment-row>div,.platform-plan-row>div{gap:5px;display:grid}.billing-payment-row span:not(.record-status),.platform-plan-row span{color:#738399;overflow-wrap:anywhere;font-size:.75rem}.billing-modal-backdrop{z-index:1000;background:#1121368c;place-items:center;padding:22px;display:grid;position:fixed;inset:0;overflow-y:auto}.billing-modal{width:min(100%,560px);max-height:calc(100vh - 44px);padding:26px;position:relative;overflow-y:auto}.billing-modal-close{position:absolute;top:16px;right:16px}.billing-instructions{overflow-wrap:anywhere;background:#f4f8fd;border:1px solid #dce8f5;border-radius:10px;gap:7px;margin:16px 0;padding:15px;display:grid}.billing-instructions span{color:#536780;font-size:.82rem}.billing-instructions .billing-instruction-copy{white-space:pre-wrap}.platform-billing-section{background:#fbfcfe;border:1px solid #e5ebf2;border-radius:12px;gap:14px;margin:22px 0;padding:18px;display:grid}.platform-plan-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;display:grid}.platform-plan-save-hint{grid-column:1/-1;margin:0}.platform-smtp-test{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.platform-smtp-test label{color:#4a5b71;gap:6px;font-size:.72rem;font-weight:650;display:grid}.platform-smtp-test input{color:#1e2d43;background:#fff;border:1px solid #d8e1eb;border-radius:8px;width:100%;padding:9px}.platform-smtp-test .fine-print{grid-column:1/-1;margin:0}.platform-plan-form label,.platform-payment-review label{color:#4a5b71;gap:6px;min-width:0;font-size:.72rem;font-weight:650;display:grid}.platform-plan-form input:not([type=checkbox]),.platform-plan-form textarea,.platform-payment-review input{color:#1e2d43;background:#fff;border:1px solid #d8e1eb;border-radius:8px;width:100%;min-width:0;padding:9px}.platform-plan-active{align-items:center;gap:8px!important;display:flex!important}.platform-plan-instructions,.platform-plan-actions{grid-column:1/-1}.platform-plan-actions,.platform-payment-review{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.platform-plan-row{align-items:center}.platform-payment-card{background:#fff;border:1px solid #e5ebf2;border-radius:10px;padding:16px}.platform-payment-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.platform-payment-heading h3{color:#2b4565;margin:0 0 4px;font-size:.95rem}.platform-payment-heading span:not(.record-status){color:#738399;font-size:.75rem}.platform-payment-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:14px 0;display:grid}.platform-payment-details div{min-width:0}.platform-payment-details dt{color:#7d8ca0;text-transform:uppercase;font-size:.66rem;font-weight:700}.platform-payment-details dd{color:#354b68;overflow-wrap:anywhere;margin:3px 0 0;font-size:.76rem}.platform-payment-review{border-top:1px solid #e8edf3;padding-top:12px}.platform-payment-review label{flex:220px}@media (width<=700px){.platform-plan-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=480px){.platform-plan-form,.platform-payment-details{grid-template-columns:1fr}.billing-payment-row,.platform-plan-row,.platform-payment-heading{flex-direction:column}.billing-modal-backdrop{padding:10px}.billing-modal{max-height:calc(100vh - 20px);padding:20px 16px}}
