*{box-sizing:border-box}body{margin:0;background:#07111d;color:#e0eff5;font:13px/1.55 Inter,system-ui,-apple-system,sans-serif}button{font:inherit;color:#c2e7ef;border:1px solid #345366;background:#153041;border-radius:7px;padding:7px 13px;cursor:pointer}button:hover{background:#204559}p{color:#91abba;margin:8px 0 14px}h1{font-size:29px;letter-spacing:-.7px;margin:5px 0}h2{font-size:15px;margin:0 0 12px;font-weight:600}small{display:block;color:#7794a6;font-size:10px;margin-top:7px}.top{height:59px;background:#0e1d2b;border-bottom:1px solid #294353;display:flex;align-items:center;justify-content:space-between;padding:0 28px}.brand{font-weight:750;font-size:17px;letter-spacing:-.3px}.brand span{color:#72d2dd}.tag{font-size:10px;letter-spacing:1.6px;color:#88a4b6}.tabs{display:flex;gap:7px}.tabs button{font-size:11px;padding:6px 12px;background:transparent}.tabs button.active{background:#1a3d4d;border-color:#5a9aa9;color:#c2f4f3}.shell{display:grid;grid-template-columns:174px 1fr;min-height:700px}.portal-nav{border-right:1px solid #203744;padding:29px 17px;background:#081522}.nav-item{padding:11px 12px;border-radius:7px;color:#8faaba;font-size:12px;margin:3px 0}.nav-item.active{background:#123344;color:#a7edf0;border-left:2px solid #7cd8db}.nav-label{font-size:9px;letter-spacing:1.5px;color:#5f8093;margin:10px 11px 20px}.main{padding:28px 36px 25px;max-width:1120px;width:100%;margin:auto}.kicker{font-size:9px;letter-spacing:2px;color:#7799aa}.subtitle{margin:7px 0 22px;font-size:12px}.proposal{display:flex;gap:12px;align-items:baseline;margin-bottom:22px}.proposal strong{color:#9bdfe3;font-size:12px}.proposal span{color:#718e9f;font-size:11px}.layout{display:grid;gap:17px}.one{grid-template-columns:1.1fr 1fr}.column{display:flex;flex-direction:column;gap:16px}.card{background:linear-gradient(145deg,#0c2233,#071623);border:1px solid #214559;border-radius:12px;padding:22px}.card-title{display:flex;gap:11px;align-items:center;margin-bottom:15px}.card-title h2{margin:0}.icon{display:grid;place-items:center;width:28px;height:28px;background:#15384a;border:1px solid #345a6d;border-radius:8px;color:#85dce4;font-size:17px}.profile-main{display:flex;align-items:center;gap:18px;margin:18px 0 22px}.avatar{width:82px;height:82px;flex:none;border:3px solid #365769;border-radius:50%;overflow:hidden}.avatar svg{width:100%;height:100%}.profile-main b{font-size:18px}.profile-main p{font-size:11px;margin:2px 0 10px}.label{font-size:9px;letter-spacing:1.4px;color:#7296a6;margin-bottom:12px}.choices{display:flex;gap:13px}.choice{display:flex;flex-direction:column;align-items:center;gap:5px;border-color:transparent;background:transparent;padding:7px 11px;font-size:10px;color:#91abba}.choice svg{width:44px;height:44px;border-radius:50%}.choice.selected{border-color:#528c9c;background:#143343}.membership{display:flex;justify-content:space-between;align-items:center;padding:16px 22px}.membership strong{font-size:11px;font-weight:500}.muted{color:#88a5b7;font-size:11px}label{display:block;color:#90aabb;font-size:10px;margin:13px 0 7px}.input{border:1px solid #29495a;background:#061522;color:#7d9caa;border-radius:7px;padding:10px 12px;font-size:11px}.card>p{font-size:11px}.danger{display:flex;align-items:center;justify-content:space-between;border:1px solid #54343f;background:#211b26;border-radius:10px;padding:16px 21px;margin-top:17px}.danger h2,.danger-row h2{color:#deb4bd;font-size:13px;margin:0 0 3px}.danger p,.danger-row p{font-size:10px;margin:0;color:#a78994}.danger-button{border-color:#704854;color:#e6bcc5;background:transparent;font-size:11px}.foot{display:flex;justify-content:space-between;margin-top:19px;color:#57798b;font-size:9px}.banner-top{display:flex;justify-content:space-between;align-items:center}.banner-top .profile-main{margin:0}.banner-top h2{font-size:21px;margin:0}.banner-options{border-top:1px solid #244253;margin-top:18px;padding-top:12px;display:flex;align-items:center;gap:24px}.banner-options .choice{flex-direction:row}.banner-options .choice svg{width:34px;height:34px}.rows{margin-top:17px;padding:0 23px}.setting-row{padding:20px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.setting-row+.setting-row{border-top:1px solid #244253}.setting-row h2{margin-bottom:3px}.setting-row p{font-size:11px;margin:0}.three{grid-template-columns:190px 1fr}.settings-nav{padding:12px 0}.settings-nav button{display:block;width:100%;text-align:left;border:0;background:none;border-radius:7px;padding:12px 15px;color:#89a9b8;font-size:12px}.settings-nav button.active{background:#143545;color:#b2e8ed}.settings-nav button.red{color:#c58d9b}.member-side{border-top:1px solid #284151;margin:25px 15px;padding-top:18px;display:flex;flex-direction:column;gap:5px}.member-side strong{font-size:10px;font-weight:400}.three .profile-main{margin:22px 0}.three .choices{margin:16px 0 27px}.savebar{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #284757;padding-top:18px;color:#7194a6;font-size:10px}.primary{background:#276073;border-color:#42899c}.preview-note{font-size:10px;color:#688a9c;margin-top:17px}.demo-notice{font-size:10px;color:#839aaa}
.account-page{max-width:1120px;padding:28px 36px;margin:auto}.account-page .main{padding:0}.profile-main .avatar img{width:100%;height:100%;object-fit:cover}.choice img{width:44px;height:44px;border-radius:50%}.account-page .membership strong{font-size:12px}.account-page .choices{flex-wrap:wrap}dialog{width:min(470px,calc(100vw - 32px));color:#e0eff5;background:#0c2131;border:1px solid #345366;border-radius:12px;padding:25px}dialog::backdrop{background:#020911b8}dialog label{font-size:12px}input{width:100%;font:inherit;color:inherit;background:#071724;border:1px solid #345366;border-radius:7px;padding:10px 12px;margin:5px 0 12px}dialog .actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}dialog p{font-size:12px}input[type=file]{font-size:11px}button:focus-visible,input:focus-visible{outline:2px solid #83dadd;outline-offset:3px}.notice{border:1px solid #37676c;background:#103039;border-radius:8px;padding:12px;margin-bottom:17px}.notice.error{border-color:#74434d;background:#30212c}.upload-form{margin:0}.upload-form button{margin-top:5px}html[data-theme=light] .account-page{color:#263849}html[data-theme=light] .account-page :is(.card,.danger,dialog){background:#fff;color:#263849;border-color:#d5e0e8}html[data-theme=light] .account-page :is(p,small,.muted,.label,label){color:#526879}html[data-theme=light] .account-page :is(input,.input,button){background:#f3f8fa;color:#263849;border-color:#b9cdd7}@media(max-width:750px){.one{grid-template-columns:1fr}.account-page{padding:22px 18px}.profile-main{flex-wrap:wrap}.danger{gap:16px;flex-wrap:wrap}.membership{gap:15px;flex-wrap:wrap}}
/* Keep the approved account typography independent of legacy page styles. */
.account-page button{font-family:Inter,system-ui,-apple-system,sans-serif!important;font-size:13px!important;line-height:1.55!important}.account-page .choice{font-size:10px!important}.account-page .danger-button{font-size:11px!important}.account-page h2{color:#e0eff5}.account-page .danger h2{color:#deb4bd}body.novi-embedded-content.novi-shared-top-divider::after{display:none!important}

#upload-dialog{max-height:92vh;overflow-y:auto}#profile-crop{text-align:center;margin:14px 0}#profile-crop[hidden]{display:none}#profile-crop p{text-align:left;font-size:11px}#profile-crop-canvas{display:block;width:240px;max-width:100%;height:auto;aspect-ratio:1;margin:14px auto;border-radius:50%;border:2px solid #83dadd;cursor:grab;touch-action:none;background:#102c3c;box-shadow:0 0 0 7px #83dadd10}#profile-crop-canvas.dragging{cursor:grabbing}#profile-crop label{text-align:left;margin-bottom:0}#profile-crop input[type=range]{padding:0;height:22px;margin:4px 0 10px;accent-color:#83dadd}#profile-crop-reset{font-size:11px!important;padding:5px 10px}
/* Compact delete action follows the same column gap as the profile cards. */
.account-page .column > .account-delete {
  margin-top: 0;
  padding: 14px 16px;
  gap: 16px;
  flex-wrap: nowrap;
}
.account-page .account-delete > div {min-width:0}
.account-page .account-delete h2 {font-size:16px!important;margin:0 0 5px!important}
.account-page .account-delete p {font-size:10px;line-height:1.5;margin:0}
.account-page .account-delete .danger-button {flex:0 0 auto;white-space:nowrap}
@media(max-width:680px) {
  .account-page .column > .account-delete {margin-top:0;flex-wrap:wrap}
}

/* Keep the 16px column gap and let the neutral card fill the remaining height. */
.account-page .column > .account-delete {
  display: flex;
  flex: 1 0 auto;
  align-items: center;
  justify-content: space-between;
  border-radius: 12px;
}
.account-page .account-delete .account-delete-button {
  flex: 0 0 auto;
  white-space: nowrap;
  font-size: 11px !important;
}
@media(max-width:680px) {
  .account-page .column > .account-delete {flex:0 0 auto}
}

/* Avatar pictures are the click targets; their captions remain plain text. */
.account-page .choices .avatar-option {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  width: 66px;
  flex: 0 0 66px;
  padding: 7px 0;
  color: #91abba;
  font-size: 10px;
}
html body.novi-portal-page .choices .avatar-option > button.choice {
  display: block;
  width: 44px;
  height: 44px;
  padding: 0 !important;
  margin: 0;
  border: 0 !important;
  border-radius: 50%;
  background: transparent !important;
  box-shadow: none !important;
}
.account-page .choices .avatar-option > button.choice:focus-visible {
  outline: 2px solid #85dce4;
  outline-offset: 3px;
}
.account-page .choices .avatar-option > span {cursor:default}

/* Keep these account symbols light blue in both portal themes. */
html body.novi-portal-page .card-title :is(.account-email-icon, .account-shield-icon),
html body.novi-portal-page .card-title :is(.account-email-icon, .account-shield-icon) svg,
html body.novi-portal-page .card-title :is(.account-email-icon, .account-shield-icon) svg * {
  color: #85dce4 !important;
}

/* Uniform monochrome account icon tiles. */
html body.novi-portal-page .card-title :is(.account-email-icon, .account-shield-icon, .authenticator-icon) {
  background: #ffffff !important;
  border: 1px solid #000000 !important;
  color: #000000 !important;
  box-shadow: none !important;
}
html body.novi-portal-page .card-title :is(.account-email-icon, .account-shield-icon, .authenticator-icon) svg,
html body.novi-portal-page .card-title :is(.account-email-icon, .account-shield-icon, .authenticator-icon) svg * {
  color: #000000 !important;
}
