.cp-main{background:#f3f6f8;color:#122d45;padding:32px;overflow-y:auto;min-width:0;font-family:Arial,sans-serif}.cp-heading h1{font-size:30px;margin:12px 0}.cp-heading p{color:#61758c}.cp-main h2{font-size:21px;margin:0 0 20px}.cp-main h3{font-size:18px}.cp-main p,.cp-main input,.cp-main select,.cp-main textarea{font-size:16px;line-height:1.5}.cp-main button,.cp-nav button{font-size:14px;min-height:42px;cursor:pointer}.cp-main button:not(.portal-primary){background:white;border:1px solid #d2ddea;color:#122d45;border-radius:7px;padding:10px 15px}.cp-main button:disabled{opacity:.5;cursor:not-allowed}.cp-main button:focus-visible,.cp-nav button:focus-visible,.cp-main input:focus-visible,.cp-main select:focus-visible{outline:3px solid #357cab;outline-offset:2px}.cp-card{background:white;border:1px solid #d4dfea;border-radius:10px;padding:24px;margin:24px 0}.cp-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.cp-form h2,.cp-wide{grid-column:1/-1}.cp-form label,.cp-filters label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600}.cp-main input,.cp-main select,.cp-main textarea{border:1px solid #cbd7e3;border-radius:6px;min-height:44px;padding:10px;background:white;color:#122d45;width:100%;box-sizing:border-box}.cp-main input[type=color]{max-width:150px}.cp-main .cp-check{display:flex;align-items:center;gap:10px;margin:18px 0}.cp-check input{width:20px;min-height:20px}.cp-filters,.cp-toolbar,.cp-actions{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:22px 0}.cp-filters label{flex:1;min-width:160px}.cp-actions{align-items:center}.cp-tabs{display:flex;gap:6px;overflow-x:auto;border-bottom:1px solid #ccd8e4;padding:0 0 12px}.cp-tabs button{white-space:nowrap}.cp-tabs button.active{border-color:#e50914;color:#c50913;background:#fff0f1}.cp-table-wrap{max-width:100%;overflow-x:auto;margin:16px 0}.cp-main table{width:100%;border-collapse:collapse;background:white;font-size:14px;min-width:600px}.cp-main th{background:#e7eef4;color:#536c84;text-align:left;padding:16px;font-weight:600;white-space:nowrap}.cp-main td{padding:17px 16px;border-bottom:1px solid #d3dfeb;line-height:1.5;vertical-align:middle}.cp-main td button{margin:3px;white-space:nowrap}.cp-main td small{display:block;color:#657c92;margin-top:4px;max-width:350px}.cp-badge{display:inline-block;border-radius:20px;padding:6px 13px;background:#edf1f5;color:#405669;font-size:13px;text-transform:capitalize;white-space:nowrap}.cp-good{background:#e9f5ef;color:#247851}.cp-note{padding:16px;background:#e9eff5;color:#516c86;border-radius:7px}.cp-message:empty{display:none}.cp-message{background:#eaf5ee;padding:14px;border-radius:7px;margin:18px 0}.cp-error{background:#fff0f0;color:#a31e29}.cp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:25px 0}.cp-stats article{padding:22px;border:1px solid #d3dfea;border-radius:10px;background:white}.cp-stats span{font-size:14px;color:#5d7690;display:block}.cp-stats b{font-size:32px;display:block;margin-top:18px}.cp-identity{display:flex;justify-content:space-between;align-items:center;background:white;border:1px solid #d3dfea;border-radius:10px;padding:24px;margin:24px 0}.cp-identity h2{margin-bottom:8px}.cp-identity p{margin:0}.cp-detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}.cp-detail-grid table{min-width:0}.cp-login-preview{border:1px solid #d4dfea;border-radius:8px;padding:24px;max-width:520px}.cp-login-preview img{max-width:240px;max-height:90px;object-fit:contain}.cp-brand{padding:24px 20px}.cp-brand b{font-size:22px}.cp-brand img{max-width:190px;max-height:75px;object-fit:contain}.cp-brand small,.cp-nav nav>small{display:block;font-size:12px;margin:10px 0;color:#61758c;letter-spacing:.05em}.cp-nav nav>small{padding-left:18px;margin-top:20px}.cp-nav nav button{display:block;width:100%;text-align:left}.cp-nav nav>label{margin:10px 16px;display:grid;gap:6px;font-size:13px}.cp-nav nav select{width:100%;min-height:40px}.cp-mobile-menu{display:none}.cp-dialog{border:1px solid #cbd8e5;border-radius:12px;max-width:560px;width:calc(100% - 48px);padding:26px;color:#122d45}.cp-dialog::backdrop{background:#102a4466}.cp-dialog h2{font-size:22px}.cp-dialog p{line-height:1.6}.cp-dialog button{min-height:44px;padding:10px 20px;border-radius:6px;border:1px solid #ccd8e5;cursor:pointer}.cp-preserve{white-space:pre-wrap;overflow-wrap:anywhere}.cp-combobox{position:relative;flex:2;min-width:240px}.cp-combobox label{margin-bottom:8px}.cp-combobox ul{position:absolute;z-index:10;top:74px;left:0;right:0;max-height:280px;overflow-y:auto;background:white;border:1px solid #bdcddd;border-radius:6px;box-shadow:0 6px 18px #15344b22;list-style:none;padding:0;margin:0}.cp-combobox li{padding:13px 16px;cursor:pointer}.cp-combobox li:hover,.cp-combobox li[aria-selected=true]{background:#eaf1f7}.cp-combobox li small{display:block;color:#577087}.cp-combobox>small{display:block;margin-top:7px;color:#577087}.cp-loading{padding:32px}#cpMyPortals>small{display:block;padding:16px;color:#61758c;font-size:12px}
@media(max-width:800px){.cp-main{padding:20px 16px}.cp-heading h1{font-size:26px}.cp-form{grid-template-columns:1fr}.cp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.cp-stats article{padding:16px}.cp-stats b{font-size:26px}.cp-detail-grid{grid-template-columns:1fr}.cp-card{padding:18px}.cp-filters{align-items:stretch;flex-direction:column}.cp-filters label{min-width:0}.cp-nav{position:relative!important;width:100%!important;height:auto!important;max-height:none!important;z-index:40!important;overflow:visible!important;display:block!important}.cp-nav .cp-brand{padding:16px 20px;max-width:calc(100% - 90px)}.cp-nav .cp-brand img{max-height:46px}.cp-mobile-menu{display:block!important;position:absolute;right:16px;top:20px;background:white;border:1px solid #c8d6e3;border-radius:6px;padding:8px 14px}.cp-nav nav{display:none!important}.cp-nav.cp-open nav{display:block!important;position:absolute;top:100%;left:0;width:min(330px,92vw);max-height:calc(100vh - 100px);overflow-y:auto;background:white;box-shadow:4px 8px 18px #17344e33;padding-bottom:20px}.cp-nav-backdrop{position:fixed;inset:90px 0 0;z-index:35;border:0;background:#142d4655}.cp-identity{gap:16px}.cp-identity h2{font-size:19px}.cp-identity p{font-size:14px;overflow-wrap:anywhere}.cp-actions{align-items:stretch}.cp-combobox{min-width:0}.cp-tabs{margin-right:-16px}.cp-main table{min-width:640px}.cp-detail-grid table{min-width:0}.cp-dialog{max-height:80vh;overflow:auto}.cp-main input,.cp-main select,.cp-main textarea{font-size:16px}}
.cp-portal-context .portal-primary{background:var(--cp-accent,#e50914);color:var(--cp-on-accent,#fff)}
.cp-nav button.cp-mobile-menu{width:auto!important;left:auto!important;right:16px!important;text-align:center;font-family:Arial,sans-serif}
.portal-nav.cp-nav{justify-content:flex-start!important;gap:0!important}
.portal-nav.cp-nav>.cp-brand{flex:none;margin:0;padding-bottom:10px}
.portal-nav.cp-nav>.cp-brand small{letter-spacing:normal;line-height:1.5;text-transform:none}
.portal-nav.cp-nav>nav{margin-top:0!important;padding-top:0!important;align-content:start;justify-content:flex-start}
.portal-nav.cp-nav>nav>small:first-child{margin-top:8px}
.cp-login-context .login-card #forgotPassword{color:var(--cp-accent)}
.cp-portal-context .portal-nav.cp-nav>nav button.active,.cp-login-context .login-card .portal-primary{background:var(--cp-accent)!important;color:var(--cp-on-accent)!important;border-color:var(--cp-accent)!important}
.cp-login-context .login-card{box-shadow:0 18px 55px color-mix(in srgb,var(--cp-accent) 22%,transparent)!important;border-top-color:var(--cp-accent)!important}
.cp-course-grant{padding:12px 0}.cp-course-grant+.cp-course-grant{border-top:1px solid #d3dfeb}.cp-grant-meta{display:flex;align-items:center;gap:16px;margin:8px 0;flex-wrap:wrap}
.user-display-name{margin-left:auto}
.user-display-name{display:block!important;background:none!important;color:#122d45!important;width:auto!important;height:auto!important;border-radius:0!important;font:600 14px/1.4 Arial,sans-serif!important;overflow-wrap:anywhere;text-align:right;max-width:260px;flex-shrink:0}
.portal-main>.activity .activity-row{justify-content:space-between;gap:20px}.portal-main>.activity .section-head{display:block}.portal-main>.activity h2{margin:0;font:600 22px/1.3 Arial,sans-serif}.activity-row time{white-space:normal;text-align:right}.course-launch-error{padding:16px;background:#fff0f0;color:#a31e29}
@media(max-width:800px){.user-display-name{max-width:160px;font-size:13px!important}.portal-main>.activity .activity-row{flex-wrap:wrap}.activity-row time{text-align:left}}
.cp-main button,.cp-dialog button{font-family:Arial,sans-serif}
#cpReportFilters .cp-combobox{position:relative}
#cpReportFilters input,#cpReportFilters select,#cpReportFilters>button{height:48px;min-height:48px;box-sizing:border-box}
#cpReportFilters .cp-combobox>label{display:block;margin:0 0 8px}
#cpReportFilters #cpSearchStatus{position:absolute;top:100%;left:0;margin-top:4px;font-size:11px}
#cpReportFilters #cpSearchStatus:empty{display:none}
.identity-editor{width:min(540px,calc(100vw - 24px));max-height:90dvh;overflow:auto;border:1px solid #d3dfeb;border-radius:12px;padding:24px;color:#122d45;font:14px/1.5 Arial,sans-serif}
.identity-editor::backdrop{background:#10223880}.identity-editor h2{margin:0 0 12px}.identity-editor label{display:flex;flex-direction:column;gap:6px;margin:16px 0;font-weight:600}
.identity-editor input:not([type=checkbox]){width:100%;height:46px;padding:10px;border:1px solid #b9c9da;border-radius:6px;font:inherit}.identity-editor .identity-confirm{display:flex;flex-direction:row;align-items:flex-start;font-weight:400}
.identity-editor .identity-email-warning{padding:10px;background:#fff6db;border-radius:6px}.identity-editor .identity-email-warning[hidden]{display:none}.identity-error{color:#a61f2b}.identity-actions{display:flex;gap:12px;justify-content:flex-end}.identity-editor button{min-height:44px;padding:10px 16px;border:1px solid #bbc9d9;border-radius:6px;cursor:pointer}.identity-editor .portal-primary{background:var(--cp-accent,#e50914);color:var(--cp-on-accent,#fff)}
.cp-portal-context .portal-main .usage-summary,.cp-portal-context .portal-main .sensei-usage-card{display:none}
#userAccessForm label[hidden]{display:none!important}
.cp-portal-context .portal-shell{height:100dvh;min-height:0;grid-template-rows:minmax(0,1fr);overflow:hidden;padding-bottom:0}
.portal-nav.cp-nav{min-height:0;height:100%;display:flex;flex-direction:column;overflow:hidden}
.portal-nav.cp-nav>nav{min-height:0;flex:1;max-height:none;overflow-y:auto;display:block!important}
.portal-nav.cp-nav>nav button{display:block!important;height:auto!important;min-height:44px!important;padding:12px 20px!important;text-align:left!important;font:14px/1.3 Arial,sans-serif!important}
.portal-main.cp-main{min-height:0}
.portal-main.cp-main>.cp-heading{height:auto;min-height:96px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.portal-main.cp-main .cp-heading h1{font:600 30px/1.2 Arial,sans-serif}
@media(max-width:800px){.cp-portal-context .portal-shell{display:flex;flex-direction:column}.cp-portal-context .portal-main{min-height:0;flex:1;overflow:auto}.portal-nav.cp-nav{height:auto;flex-shrink:0}.portal-nav.cp-nav>nav{display:none!important}.portal-nav.cp-nav.cp-open>nav{display:block!important}.portal-main.cp-main .cp-heading h1{font-size:25px}}
