/* SmartInfra Accounts — shared with the Projects and SmartUR visual language. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
body.si-accounts-ui {
  --suite-navy:#1e2742; --suite-teal:#5eb0a9; --suite-muted:#697487;
  --suite-line:#e4e8ed; --suite-surface:#f5f7f9; --suite-link:#326e6a;
  --primary-navy:#1e2742; --primary-color:#1e2742; --accent-color:#326e6a;
  --accent-teal:#5eb0a9; --bg-light:#f5f7f9; --border-color:#e4e8ed;
  margin:0; padding:0; min-height:100vh; background:var(--suite-surface);
  color:var(--suite-navy); font:14px/1.6 Inter,Roboto,Helvetica,Arial,sans-serif;
  display:flex; flex-direction:column; overflow-x:visible;
}
.si-accounts-ui *, .si-accounts-ui *::before, .si-accounts-ui *::after { box-sizing:border-box; }
.si-accounts-ui h1 { font-size:32px; line-height:1.2; letter-spacing:-1px; font-weight:700; color:var(--suite-navy); }
.si-accounts-ui h2 { font-size:21px; line-height:1.35; letter-spacing:-.4px; font-weight:600; color:var(--suite-navy); }
.si-accounts-ui h3 { font-size:16px; line-height:1.4; font-weight:600; color:var(--suite-navy); }
.si-accounts-ui a { color:var(--suite-link); }
.si-accounts-ui a:hover { color:var(--suite-navy); }
.si-accounts-ui p { line-height:1.65; }
.si-accounts-ui :is(a,button,input,select,textarea,summary):focus-visible { outline:2px solid #388b83; outline-offset:3px; }
.si-accounts-ui :is(input,select,textarea) { font:inherit; }
.si-accounts-ui :is(.form-input,.form-control,.form-select,.form-group input:not([type=checkbox]),.form-group select,.form-group textarea) {
  width:100%; min-width:0; max-width:100%; border:1px solid #d8dee7; border-radius:8px;
  padding:11px 12px; background:#fff; color:var(--suite-navy); font-size:14px; box-shadow:none;
}
.si-accounts-ui :is(.form-input,.form-control,.form-select):focus { border-color:#388b83; box-shadow:0 0 0 3px #5eb0a920; }
.si-accounts-ui :is(input[type=checkbox],input[type=radio]) { accent-color:var(--suite-navy); }
.si-accounts-ui :is(.form-label,.form-group label) { display:block; font-size:12px; font-weight:600; color:var(--suite-navy); margin-bottom:7px; }
.si-accounts-ui :is(.form-text,.form-group small,.text-muted,.form-subtitle,.auth-subtitle) { color:var(--suite-muted) !important; font-size:13px; }
.si-accounts-ui :is(.form-group,.mb-3) { margin-bottom:20px; }
.si-accounts-ui .btn { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:42px; padding:10px 16px; border:1px solid #d8dee7; border-radius:8px; font:600 13px/1.5 Inter,Arial,sans-serif; text-decoration:none; box-shadow:none; transition:background-color .15s,border-color .15s; white-space:normal; }
.si-accounts-ui .btn:hover { transform:none; box-shadow:none; }
.si-accounts-ui :is(.btn-primary,.btn-primary-custom,.btn-success) { background:var(--suite-navy); border-color:var(--suite-navy); color:white; }
.si-accounts-ui :is(.btn-primary,.btn-primary-custom,.btn-success):hover { background:#2a3654; border-color:#2a3654; color:white; }
.si-accounts-ui :is(.btn-secondary,.btn-outline-primary,.btn-light) { background:white; border-color:#d8dee7; color:var(--suite-navy); }
.si-accounts-ui :is(.btn-secondary,.btn-outline-primary,.btn-light):hover { background:#eaf4f3; border-color:#a8cbc7; }
.si-accounts-ui :is(.btn-danger,.btn-outline-danger) { background:#fff; border-color:#e2bcc6; color:#8b3447; }
.si-accounts-ui :is(.btn-danger,.btn-outline-danger):hover { background:#fae9ec; }
.si-accounts-ui .btn-link { color:var(--suite-link); background:transparent; border-color:transparent; }
.si-accounts-ui .btn-block { width:100%; }
.si-accounts-ui .btn:disabled { opacity:.5; cursor:not-allowed; }
.si-accounts-ui :is(.alert,.message) { display:block; padding:14px 16px; border:1px solid #cce1de; border-radius:8px; background:#eaf4f3; color:#326c67; box-shadow:none; font-size:13px; overflow-wrap:anywhere; }
.si-accounts-ui :is(.alert-danger,.alert.error,.message.error) { background:#faeef0; border-color:#edc9d2; color:#842e43; }
.si-accounts-ui :is(.alert-success,.alert.success,.message.success) { background:#edf5ec; border-color:#d5e5d2; color:#27421e; }
.si-accounts-ui .alert-warning { background:#fff6e6; border-color:#eddab5; color:#79591f; }
.si-accounts-ui .alert p:last-child { margin-bottom:0; }
.si-accounts-ui .errorlist { color:#842e43; padding-left:20px; margin-bottom:16px; font-size:13px; }
.si-accounts-ui .ac-skip { position:absolute; top:-100px; left:16px; z-index:2000; background:white; padding:12px 18px; border-radius:8px; }
.si-accounts-ui .ac-skip:focus { top:12px; }
.si-accounts-ui .ac-brand { display:block; text-decoration:none; color:var(--suite-navy); }
.si-accounts-ui .ac-wordmark { display:block; font-size:28px; font-weight:700; letter-spacing:-1.2px; line-height:1.1; }
.si-accounts-ui .ac-wordmark span { color:var(--suite-teal); }
.si-accounts-ui .ac-brand-caption { display:block; font-size:8px; letter-spacing:2px; margin-top:7px; color:var(--suite-muted); font-weight:500; }
.si-accounts-ui .ac-public-header { min-height:82px; background:#fff; border-bottom:1px solid var(--suite-line); display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px max(28px,calc((100vw - 1180px)/2)); }
.si-accounts-ui .ac-public-nav { display:flex; align-items:center; flex-wrap:wrap; gap:24px; font-size:12px; font-weight:500; }
.si-accounts-ui .ac-public-nav a { color:var(--suite-muted); text-decoration:none; }
.si-accounts-ui .ac-public-nav a:hover { color:var(--suite-navy); }
.si-accounts-ui .ac-public-main { flex:1; width:100%; min-width:0; }
.si-accounts-ui .ac-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; max-width:1180px; width:calc(100% - 56px); margin:24px auto 0; padding:22px 0; border-top:1px solid var(--suite-line); color:var(--suite-muted); font-size:11px; }
.si-accounts-ui .ac-footer nav { display:flex; flex-wrap:wrap; gap:20px; }
.si-accounts-ui .ac-footer a { color:var(--suite-muted); text-decoration:none; }
.si-accounts-ui :is(.page-footer,.logo-footer,.footer-logo-container) { display:none; }
/* Public forms and the two-panel sign-in/registration layout. */
.si-accounts-ui .login-container { min-height:0; width:100%; padding:48px 28px 24px; display:block; }
.si-accounts-ui .login-card { display:grid; grid-template-columns:.85fr 1.15fr; max-width:1040px; width:100%; margin:auto; min-height:560px; background:white; border:1px solid var(--suite-line); border-radius:8px; box-shadow:none; overflow:hidden; }
.si-accounts-ui .left-panel { width:auto; padding:44px 36px; background:var(--suite-navy); color:white; text-align:left; display:flex; align-items:flex-start; }
.si-accounts-ui .left-panel::before { display:none; }
.si-accounts-ui .branding { width:100%; position:relative; z-index:1; }
.si-accounts-ui .branding .logo-container { display:block; margin:0 0 34px; width:auto; padding:0; background:none; }
.si-accounts-ui .ac-auth-wordmark { display:block; color:white; font-size:34px; letter-spacing:-1.4px; font-weight:700; }
.si-accounts-ui .ac-auth-wordmark span { color:var(--suite-teal); }
.si-accounts-ui .branding .logo-fallback { display:none !important; }
.si-accounts-ui .branding .subtitle { font-size:20px; line-height:1.5; font-weight:500; color:#dce5ed; margin:0 0 34px; text-align:left; }
.si-accounts-ui .feature-list { text-align:left; margin:0; padding:24px 0 0; border-top:1px solid #ffffff25; }
.si-accounts-ui .feature-item { display:flex; align-items:center; color:#dce5ed; margin:0 0 16px; font-size:12px; }
.si-accounts-ui .feature-item i { color:var(--suite-teal); }
.si-accounts-ui .right-panel { width:auto; padding:36px 44px; min-width:0; display:block; }
.si-accounts-ui .right-panel .form-container { width:100%; max-width:none; margin:0; }
.si-accounts-ui .right-panel h2 { font-size:28px; margin-bottom:8px; }
.si-accounts-ui .form-tabs { border-bottom:1px solid var(--suite-line); margin-bottom:30px; gap:20px; display:flex; }
.si-accounts-ui .tab-button { flex:0 1 auto; padding:0 0 13px; border:0; border-bottom:2px solid transparent; border-radius:0; background:none; color:var(--suite-muted); font-size:12px; font-weight:600; }
.si-accounts-ui .tab-button.active { color:var(--suite-navy); border-bottom-color:var(--suite-teal); }
.si-accounts-ui .forgot-password { font-size:12px; margin-top:24px; line-height:1.8; }
.si-accounts-ui :is(.auth-card,.reset-card,.success-card,.cancel-card,.invitation-card) { background:white; border:1px solid var(--suite-line); border-radius:8px; box-shadow:none; padding:32px; color:var(--suite-navy); }
.si-accounts-ui :is(.auth-section) { padding:48px 24px 24px; background:none; min-height:0; }
.si-accounts-ui .auth-section .container { width:100%; max-width:620px; padding:0; margin:auto; }
.si-accounts-ui .auth-card { max-width:none; margin:0; }
.si-accounts-ui .auth-card h1 { font-size:28px; text-align:left; }
.si-accounts-ui .auth-subtitle { text-align:left; margin-bottom:24px; }
.si-accounts-ui :is(.reset-container,.success-container,.cancel-container,.invitation-container) { max-width:680px; width:calc(100% - 48px); margin:48px auto 24px; padding:0; }
.si-accounts-ui :is(.success-card h1,.cancel-card h1) { font-size:28px; }
.si-accounts-ui :is(.success-icon,.cancel-icon,.icon-container) { width:52px; height:52px; margin:0 0 22px; display:flex; align-items:center; justify-content:center; border-radius:8px; background:#eaf4f3; color:#326e6a; font-size:26px; animation:none; box-shadow:none; }
.si-accounts-ui .cancel-icon { background:#fff6e6; color:#79591f; }
.si-accounts-ui .invitation-container > .logo { display:none; }
.si-accounts-ui :is(.help-section,.password-requirements,.success-details,.invitation-info,.info-alert) { background:var(--suite-surface); border:1px solid var(--suite-line); border-radius:8px; padding:20px; margin-top:24px; text-align:left; }
.si-accounts-ui .password-requirements h4 { font-size:14px; }
.si-accounts-ui :is(.action-buttons,.form-actions) { display:flex; gap:12px; flex-wrap:wrap; }
.si-accounts-ui .ac-message-card { max-width:720px; width:calc(100% - 48px); margin:48px auto 24px; padding:32px !important; background:white; border:1px solid var(--suite-line); border-radius:8px; }
.si-accounts-ui .ac-message-card h1 { font-size:28px; }
/* Signup, selected plan and terms. Existing step IDs and form behavior are retained. */
.si-accounts-ui :is(.subscription-container,.terms-container) { max-width:1056px; width:calc(100% - 56px); margin:40px auto 24px; padding:0; }
.si-accounts-ui :is(.subscription-container,.terms-container) > h1 { text-align:left; margin:0 0 10px; }
.si-accounts-ui :is(.subscription-container,.terms-container) > .subtitle { text-align:left; color:var(--suite-muted); font-size:13px; max-width:720px; margin-bottom:28px; }
.si-accounts-ui .wizard-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:0 0 26px; padding:0; justify-content:stretch; }
.si-accounts-ui .wizard-steps::before { display:none; }
.si-accounts-ui .wizard-steps .step { margin:0; padding:14px 0; border-top:2px solid var(--suite-line); display:flex; flex-direction:row; align-items:center; gap:10px; background:none; }
.si-accounts-ui .wizard-steps .step.completed { border-color:#a8cbc7; }
.si-accounts-ui .wizard-steps .step.active { border-color:var(--suite-navy); }
.si-accounts-ui .wizard-steps .step-number { width:28px; height:28px; flex-shrink:0; margin:0; font-size:11px; border-radius:50%; background:#e9edf1; color:var(--suite-muted); }
.si-accounts-ui .wizard-steps .completed .step-number { background:#e0efec; color:#326e6a; }
.si-accounts-ui .wizard-steps .active .step-number { background:var(--suite-navy); color:white; }
.si-accounts-ui .wizard-steps .step-label { color:var(--suite-muted); font-size:12px; text-align:left; }
.si-accounts-ui .wizard-steps .active .step-label { color:var(--suite-navy); font-weight:600; }
.si-accounts-ui :is(.wizard-content,.terms-content) { background:white; border:1px solid var(--suite-line); border-radius:8px; padding:28px 32px; box-shadow:none; }
.si-accounts-ui .wizard-content h2 { text-align:left; font-size:22px; margin-bottom:24px; }
.si-accounts-ui .form-container { max-width:none; }
.si-accounts-ui .form-section { box-shadow:none; border:0; border-top:1px solid var(--suite-line); border-radius:0; padding:24px 0 0; margin:24px 0; }
.si-accounts-ui .form-section:first-of-type { border-top:0; margin-top:0; padding-top:0; }
.si-accounts-ui .form-section h3 { border:0; padding:0; margin:0 0 20px; font-size:15px; }
.si-accounts-ui .form-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-bottom:0; }
.si-accounts-ui .form-row > .form-group:only-child { grid-column:1/-1; }
.si-accounts-ui .order-summary { background:#f0f7f6; border:1px solid #d6e6e3; border-radius:8px; padding:20px 24px; margin:24px 0; }
.si-accounts-ui .order-summary h3 { font-size:15px; color:var(--suite-navy); }
.si-accounts-ui .summary-item { gap:20px; font-size:13px; padding:8px 0; border-color:#d6e6e3; }
.si-accounts-ui .summary-item span:last-child { text-align:right; }
.si-accounts-ui .terms-iframe { width:100%; height:480px; border:1px solid var(--suite-line); border-radius:8px; background:white; }
.si-accounts-ui .acceptance-section { background:var(--suite-surface); border:1px solid var(--suite-line); padding:22px; border-radius:8px; margin:24px 0; }
.si-accounts-ui .form-check { padding-left:28px; margin-bottom:16px; }
.si-accounts-ui .form-check-label { font-size:13px; color:var(--suite-navy); }
.si-accounts-ui .form-check-input { width:18px; height:18px; }
.si-accounts-ui .login-link { color:var(--suite-muted); font-size:12px; margin:24px 0; }
.si-accounts-ui .login-link a { color:var(--suite-link); }
.si-accounts-ui :is(.plans-grid,.apps-grid) { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr)); gap:20px; }
.si-accounts-ui :is(.app-option,.plan-card,.app-card) { border:1px solid var(--suite-line); border-radius:8px; padding:24px; box-shadow:none; background:white; }
.si-accounts-ui :is(.app-option,.plan-card,.app-card):hover { transform:none; box-shadow:none; border-color:#a8cbc7; }
.si-accounts-ui :is(.app-icon-large,.app-icon) { width:100%; height:100px; padding:12px; margin:0 0 20px; border-radius:8px; background:var(--suite-surface); box-shadow:none; }
.si-accounts-ui :is(.app-icon-large,.app-icon) img { max-width:180px; max-height:75px; object-fit:contain; }
.si-accounts-ui .app-letter-large { background:#eaf4f3; color:#326e6a; }
.si-accounts-ui .trial-badge { background:#eaf4f3; color:#326e6a; font-size:11px; border-radius:5px; padding:6px 10px; }
.si-accounts-ui .plan-price { color:var(--suite-navy); font-size:28px; letter-spacing:-.7px; }
.si-accounts-ui .plan-features { font-size:13px; }
/* Customer and partner workspaces. */
body.si-accounts-ui.ac-workspace { display:block; }
.si-accounts-ui .profile-container { display:block; max-width:none; margin:0 0 0 248px; width:calc(100% - 248px); padding:0; }
.si-accounts-ui .sidebar-card { position:fixed; top:0; bottom:0; left:0; width:248px; height:100vh; overflow:auto; padding:30px 20px 18px; border:0; border-right:1px solid var(--suite-line); border-radius:0; background:white; box-shadow:none; }
.si-accounts-ui .sidebar-card > .ac-brand { margin-bottom:32px; }
.si-accounts-ui .profile-avatar { display:grid; grid-template-columns:36px minmax(0,1fr); align-items:center; gap:2px 10px; margin:0 0 24px; padding:0 0 24px; border-bottom:1px solid var(--suite-line); text-align:left; }
.si-accounts-ui .avatar-circle { grid-row:1/3; height:36px; width:36px; margin:0; border-radius:50%; background:#e7eeef; color:var(--suite-navy); box-shadow:none; font-size:14px; }
.si-accounts-ui .profile-avatar h3 { font-size:12px; margin:0; overflow-wrap:anywhere; }
.si-accounts-ui .profile-avatar .email { font-size:10px; margin:0; color:var(--suite-muted); overflow-wrap:anywhere; }
.si-accounts-ui .ac-nav-label { color:var(--suite-muted); font-size:10px; letter-spacing:1.3px; margin:0 0 12px; }
.si-accounts-ui .profile-nav { gap:7px; }
.si-accounts-ui .profile-nav-link { padding:12px 11px; font-size:12px; color:#657084; border:0; border-radius:8px; font-weight:500; background:transparent; }
.si-accounts-ui .profile-nav-link i { font-size:15px; margin-right:10px; }
.si-accounts-ui .profile-nav-link:hover { background:#f0f4f5; color:var(--suite-navy); transform:none; }
.si-accounts-ui .profile-nav-link.active { background:#eaf4f3; color:var(--suite-navy); font-weight:600; box-shadow:inset 3px 0 var(--suite-teal); }
.si-accounts-ui .profile-nav-link.active i { color:#388b83; }
.si-accounts-ui .profile-nav-link.logout { margin-top:16px; border-top:1px solid var(--suite-line); color:var(--suite-muted); }
.si-accounts-ui .sidebar-footer { border-top:1px solid var(--suite-line); padding-top:20px; margin-top:24px; }
.si-accounts-ui .sidebar-footer .logo-container { display:none; }
.si-accounts-ui .sidebar-footer .copyright { text-align:left; font-size:10px; color:var(--suite-muted); }
.si-accounts-ui .sidebar-footer .copyright small { font-size:9px; }
.si-accounts-ui .main-content { min-width:0; width:100%; display:flex; flex-direction:column; gap:20px; padding:0 36px 36px; }
.si-accounts-ui .ac-topbar { min-height:68px; margin:0 -36px; padding:18px 36px; display:flex; justify-content:space-between; align-items:center; gap:16px; background:var(--suite-navy); color:white; font-size:11px; }
.si-accounts-ui .ac-topbar a { color:#dce5ed; font-size:11px; text-decoration:none; }
.si-accounts-ui .ac-separator { color:var(--suite-teal); margin:0 12px; }
.si-accounts-ui .ac-page-heading { padding:10px 0 4px; }
.si-accounts-ui .ac-page-heading h1 { margin:0 0 10px; }
.si-accounts-ui .ac-page-heading p { margin:0; color:var(--suite-muted); font-size:13px; max-width:680px; }
.si-accounts-ui .content-card { min-width:0; background:white; border:1px solid var(--suite-line); border-radius:8px; padding:26px; box-shadow:none; }
.si-accounts-ui .content-card h2 { font-size:18px; letter-spacing:-.3px; border-bottom:1px solid var(--suite-line); padding-bottom:16px; margin-bottom:22px; }
.si-accounts-ui .ac-banner { background:var(--suite-navy) !important; color:white; border-color:var(--suite-navy); }
.si-accounts-ui .ac-banner h2 { color:white; }
.si-accounts-ui .info-item { border:1px solid var(--suite-line); border-radius:8px; background:var(--suite-surface); padding:14px 16px; font-size:13px; gap:16px; }
.si-accounts-ui .info-value { overflow-wrap:anywhere; text-align:right; }
.si-accounts-ui .subscription-item { background:#fff; border:1px solid var(--suite-line); border-radius:8px; padding:22px; margin-bottom:16px; box-shadow:none; }
.si-accounts-ui .subscription-item:hover { transform:none; box-shadow:none; }
.si-accounts-ui .subscription-actions { display:flex; flex-wrap:wrap; gap:8px; }
.si-accounts-ui .subscription-meta { color:var(--suite-muted); font-size:12px; }
.si-accounts-ui :is(.table,table) { font-size:12px; width:100%; }
.si-accounts-ui :is(.table,table) th { background:#f8fafb; color:var(--suite-muted); font-size:10px; text-transform:uppercase; letter-spacing:.5px; padding:14px 12px; }
.si-accounts-ui :is(.table,table) td { padding:16px 12px; border-color:#edf0f3; vertical-align:middle; }
.si-accounts-ui :is(.badge,.status-badge) { border-radius:5px; padding:5px 8px; font-size:11px; line-height:1.5; font-weight:500; }
.si-accounts-ui .bg-success { background:#eaf3e8 !important; color:#27421e !important; }
.si-accounts-ui .bg-primary { background:var(--suite-navy) !important; }
.si-accounts-ui .empty-state { padding:36px 20px; color:var(--suite-muted); }
.si-accounts-ui .welcome-header { background:none; padding:0; margin-bottom:24px; text-align:left; }
.si-accounts-ui .welcome-header h1 { color:var(--suite-navy); font-size:24px; }
.si-accounts-ui .welcome-header p { color:var(--suite-muted); }
.si-accounts-ui .card { border:1px solid var(--suite-line); border-radius:8px; box-shadow:none !important; }
.si-accounts-ui .card-header { background:var(--suite-navy); border:0; padding:20px 24px; }
.si-accounts-ui .card-body { padding:24px; }
.si-accounts-ui .table-responsive { overflow:auto; }
.si-accounts-ui .auth-footer { margin-top:24px; padding-top:20px; border-top:1px solid var(--suite-line); font-size:12px; }
@media (min-width:1550px) {
  .si-accounts-ui .sidebar-card { width:260px; }
  .si-accounts-ui .profile-container { margin-left:260px; width:calc(100% - 260px); }
  .si-accounts-ui .main-content { padding-right:42px; padding-left:42px; }
  .si-accounts-ui .ac-topbar { margin:0 -42px; padding-right:42px; padding-left:42px; }
}
@media (max-width:1000px) and (min-width:761px) {
  .si-accounts-ui .sidebar-card { width:215px; padding:26px 15px; }
  .si-accounts-ui .profile-container { margin-left:215px; width:calc(100% - 215px); }
  .si-accounts-ui .main-content { padding-right:24px; padding-left:24px; }
  .si-accounts-ui .ac-topbar { margin:0 -24px; padding-right:24px; padding-left:24px; }
}
@media (max-width:760px) {
  .si-accounts-ui .ac-public-header { min-height:72px; padding:18px; gap:12px; }
  .si-accounts-ui .ac-wordmark { font-size:24px; }
  .si-accounts-ui .ac-public-nav { gap:14px; font-size:11px; }
  .si-accounts-ui .ac-public-nav .ac-nav-secondary { display:none; }
  .si-accounts-ui .ac-footer { width:calc(100% - 36px); margin-top:18px; font-size:10px; }
  .si-accounts-ui .login-container { padding:22px 16px; }
  .si-accounts-ui .login-card { display:block; min-height:0; }
  .si-accounts-ui .left-panel { padding:24px; }
  .si-accounts-ui .branding .logo-container { margin-bottom:12px; }
  .si-accounts-ui .ac-auth-wordmark { font-size:26px; }
  .si-accounts-ui .branding .subtitle { font-size:16px; margin:0; }
  .si-accounts-ui .feature-list { display:none; }
  .si-accounts-ui .right-panel { padding:26px 22px; }
  .si-accounts-ui .right-panel h2 { font-size:25px; }
  .si-accounts-ui .auth-section { padding:24px 16px; }
  .si-accounts-ui :is(.auth-card,.reset-card,.success-card,.cancel-card,.invitation-card) { padding:24px; }
  .si-accounts-ui :is(.reset-container,.success-container,.cancel-container,.invitation-container,.ac-message-card) { width:calc(100% - 32px); margin:24px auto; }
  .si-accounts-ui .ac-message-card { padding:24px !important; }
  .si-accounts-ui :is(.subscription-container,.terms-container) { width:calc(100% - 32px); margin:28px auto 20px; }
  .si-accounts-ui h1 { font-size:27px; }
  .si-accounts-ui .wizard-steps { gap:8px; margin-bottom:16px; }
  .si-accounts-ui .wizard-steps .step { flex-direction:column; align-items:flex-start; gap:8px; padding-top:12px; }
  .si-accounts-ui .wizard-steps .step-label { font-size:10px; }
  .si-accounts-ui :is(.wizard-content,.terms-content) { padding:22px 18px; }
  .si-accounts-ui .wizard-content h2 { font-size:20px; }
  .si-accounts-ui .form-row { grid-template-columns:minmax(0,1fr); gap:0; }
  .si-accounts-ui :is(.order-summary,.acceptance-section) { padding:18px; }
  .si-accounts-ui .terms-iframe { height:360px; }
  .si-accounts-ui :is(.action-buttons,.form-actions) { flex-direction:column; }
  .si-accounts-ui :is(.action-buttons,.form-actions) .btn { width:100%; }
  .si-accounts-ui .profile-container { margin:0; width:100%; }
  .si-accounts-ui .sidebar-card { position:relative; width:100%; height:auto; padding:20px 18px 12px; border-right:0; border-bottom:1px solid var(--suite-line); overflow:visible; }
  .si-accounts-ui .sidebar-card > .ac-brand { margin-bottom:16px; }
  .si-accounts-ui .profile-avatar { display:none; }
  .si-accounts-ui .ac-nav-label { display:none; }
  .si-accounts-ui .profile-nav { display:flex; flex-direction:row; gap:7px; overflow:auto; padding-bottom:6px; }
  .si-accounts-ui .profile-nav-link { flex-shrink:0; white-space:nowrap; padding:10px; font-size:11px; }
  .si-accounts-ui .profile-nav-link i { margin-right:6px; }
  .si-accounts-ui .profile-nav-link.logout { margin:0; border:0; }
  .si-accounts-ui .sidebar-footer { display:none; }
  .si-accounts-ui .main-content { padding:0 16px 24px; gap:16px; }
  .si-accounts-ui .ac-topbar { min-height:48px; margin:0 -16px; padding:14px 18px; }
  .si-accounts-ui .ac-topbar-caption { display:none; }
  .si-accounts-ui .ac-page-heading { padding:6px 0; }
  .si-accounts-ui .content-card { padding:20px; }
  .si-accounts-ui .content-card h2 { font-size:17px; }
  .si-accounts-ui .subscription-item { padding:18px; flex-direction:column; align-items:stretch; gap:16px; }
  .si-accounts-ui .subscription-actions { justify-content:flex-start; }
  .si-accounts-ui .ac-banner > div { flex-wrap:wrap; gap:16px; }
  .si-accounts-ui #referral-link { min-width:0 !important; width:100%; }
  .si-accounts-ui .info-item { flex-wrap:wrap; }
  .si-accounts-ui .info-value { text-align:left; }
}
@media (prefers-reduced-motion:reduce) { .si-accounts-ui *, .si-accounts-ui *::before, .si-accounts-ui *::after { animation-duration:.01ms !important; transition-duration:.01ms !important; } }
@media print { .si-accounts-ui :is(.sidebar-card,.ac-topbar,.ac-public-header,.ac-footer,.ac-skip) { display:none; } .si-accounts-ui .profile-container { margin:0; width:100%; } .si-accounts-ui .main-content { padding:0; } }
/* Keep all action/status variants in the same restrained palette. */
.si-accounts-ui .btn-info { background:#eaf4f3; border-color:#cce1de; color:#326c67; }
.si-accounts-ui .btn-info:hover { background:#dceeea; border-color:#a8cbc7; color:var(--suite-navy); }
.si-accounts-ui .bg-info { background:#e7f3f2 !important; color:#326c67 !important; }
.si-accounts-ui .bg-danger { background:#fae9ec !important; color:#8b3447 !important; }
.si-accounts-ui .bg-secondary { background:#eef1f5 !important; color:#526073 !important; }
.si-accounts-ui .branding { text-align:left; }
.si-accounts-ui .feature-item { justify-content:flex-start; }
.si-accounts-ui .left-panel { border-radius:0; }
.si-accounts-ui :is(.login-card,.left-panel,.right-panel,.feature-item,.success-card,.cancel-card) { animation:none; }
.si-accounts-ui .table-responsive:focus-visible { outline:2px solid #388b83; outline-offset:3px; }
@media (max-width:760px) {
  .si-accounts-ui :is(.form-input,.form-control,.form-select,.form-group input:not([type=checkbox])) { font-size:16px; }
}
.si-accounts-ui .ac-terms-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; margin:24px 0 14px; }
.si-accounts-ui .ac-terms-heading h2 { margin:0; font-size:18px; }
.si-accounts-ui .ac-terms-heading a { font-size:12px; }
/* Standalone recovery/result templates formerly centered the entire body. */
body.si-accounts-ui { align-items:stretch; justify-content:flex-start; }
.si-accounts-ui .ac-public-header { width:100%; }
.si-accounts-ui :is(.success-icon,.cancel-icon,.icon-container) svg { width:32px; height:32px; }
.si-accounts-ui :is(.success-icon,.cancel-icon,.icon-container) i { font-size:26px; }
.si-accounts-ui :is(.auth-card,.success-card,.cancel-card) { overflow-wrap:anywhere; }
.si-accounts-ui .card-header { color:white; }
.si-accounts-ui .card-header :is(h1,h2,h3,h4,h5) { color:inherit; }
.si-accounts-ui .btn-outline-secondary { background:white; border-color:#d8dee7; color:var(--suite-navy); }
@media (max-width:420px) {
  .si-accounts-ui .ac-public-nav { max-width:140px; justify-content:flex-end; gap:6px 12px; }
  .si-accounts-ui .ac-brand-caption { font-size:7px; letter-spacing:1.4px; }
}

/* App artwork uses white lettering; keep a consistent high-contrast stage. */
.si-accounts-ui .ac-app-logo { display:flex; align-items:center; justify-content:center; height:212px; padding:10px; background:var(--suite-navy); }
.si-accounts-ui .ac-app-logo img { width:190px; height:190px; max-width:100%; max-height:100%; object-fit:contain; }
/* SmartQuality artwork has less transparent padding than the other logos. */
.si-accounts-ui .ac-app-logo img.ac-app-logo-quality { width:150px; height:150px; transform:translateY(4px); }
.si-accounts-ui .additional-actions .btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:48px; text-decoration:none; }
.si-accounts-ui .ac-apps-empty { grid-column:1 / -1; padding:40px 24px; text-align:center; border:1px dashed var(--suite-line); border-radius:8px; background:var(--suite-surface); }
.si-accounts-ui .ac-apps-empty > i { display:block; font-size:32px; color:var(--suite-link); margin-bottom:16px; }
.si-accounts-ui .ac-apps-empty p { max-width:500px; margin:0 auto; color:var(--suite-muted); }

/* Full company name in every shared wordmark. */
.si-accounts-ui :is(.ac-wordmark,.ac-auth-wordmark) .ac-company-suffix { display:block; color:inherit; font-size:13px; font-weight:500; letter-spacing:1.7px; line-height:1.35; margin-top:4px; }
.si-accounts-ui .ac-auth-wordmark .ac-company-suffix { font-size:16px; }
