:root { --ink:#0f172a; --muted:#64748b; --line:#e7edf4; --brand:#6366f1; --cyan:#06b6d4; }
html, body { font-family:'Segoe UI Variable','Segoe UI',sans-serif; color:var(--ink); background:#f4f7fb; }

a, .btn-link {
    color: #006bb7;
}

.btn { border-radius:.55rem; font-weight:650; font-size:.78rem; padding:.48rem .8rem; transition:transform .16s ease,box-shadow .16s ease,background .16s ease; }
.btn-primary { color:#fff; background:linear-gradient(135deg,#6366f1,#4f46e5); border:0; box-shadow:0 5px 14px rgba(79,70,229,.2); }
.btn-primary:hover { background:linear-gradient(135deg,#5558e8,#4338ca); transform:translateY(-1px); }

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

.content { max-width:1320px; margin:0 auto; }
h1 { font-size:1.5rem; font-weight:800; letter-spacing:-.035em; margin-bottom:.25rem; }
h2 { font-weight:700; letter-spacing:-.02em; }
.lead { color:var(--muted); font-size:.84rem; }
.card { border:1px solid var(--line); border-radius:.85rem; box-shadow:0 6px 24px rgba(15,23,42,.04)!important; }
.card-body { padding:1.1rem; }
.form-control,.form-select { min-height:2.35rem; border-color:#dbe3ed; border-radius:.52rem; padding:.5rem .65rem; font-size:.8rem; }
.form-control:focus,.form-select:focus { border-color:#818cf8; box-shadow:0 0 0 3px rgba(99,102,241,.12); }
.form-label { color:#475569; font-size:.7rem; font-weight:750; margin-bottom:.32rem; }
.table { --bs-table-bg:transparent; border-color:#edf1f5; }
.table thead th { color:#94a3b8; font-size:.67rem; letter-spacing:.07em; text-transform:uppercase; border-bottom-width:1px; padding:.85rem; }
.table tbody td { color:#334155; font-size:.78rem; padding:.72rem .75rem; }
.badge { border-radius:2rem; padding:.32rem .55rem; font-size:.62rem; }
.alert { border:0; border-radius:.68rem; font-size:.77rem; }
code { color:#4f46e5; background:#eef2ff; border-radius:.3rem; padding:.12rem .35rem; }
.page-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; margin-bottom:1.15rem; }
.eyebrow { color:#6366f1; font-size:.61rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; margin-bottom:.3rem; }
.metric-card { position:relative; overflow:hidden; min-height:112px; }
.metric-card::after { content:""; position:absolute; width:110px; height:110px; border-radius:50%; right:-35px; top:-40px; background:var(--glow,rgba(99,102,241,.09)); }
.metric-label { color:#64748b; font-size:.78rem; font-weight:600; }
.metric-value { font-size:1.65rem; font-weight:800; letter-spacing:-.05em; margin-top:.45rem; }
.metric-note { color:#94a3b8; font-size:.72rem; margin-top:.25rem; }
.section-card-header { padding:.9rem 1.1rem; border-bottom:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; }
.section-card-header h2 { font-size:.86rem; margin:0; }
.backend-panel { background:#f8fafc; border-color:#e5eaf1!important; border-radius:.75rem!important; }
.form-text { color:#8492a6; font-size:.65rem; line-height:1.4; margin-top:.32rem; }
.help-panel { color:#475569; background:#eef6ff; border-left:3px solid #60a5fa; line-height:1.5; margin-bottom:1.1rem; }
.alert-light.help-panel { background:#f8fafc; border-left-color:#94a3b8; }
.routing-explainer { color:#475569; background:#f1f5ff; border:1px solid #e0e7ff; border-radius:.7rem; padding:.8rem 1rem; font-size:.78rem; line-height:1.5; }
.workflow-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.workflow-grid>div { position:relative; padding-left:2.7rem; }
.workflow-grid span { position:absolute; left:0; top:0; display:grid; place-items:center; width:1.9rem; height:1.9rem; border-radius:.55rem; color:#fff; background:#6366f1; font-size:.72rem; font-weight:800; }
.workflow-grid strong { display:block; font-size:.82rem; margin-bottom:.35rem; }
.workflow-grid p { color:#7c899b; font-size:.74rem; line-height:1.5; margin:0; }
@media(max-width:767px) { .page-heading { align-items:flex-start; flex-direction:column; } .workflow-grid { grid-template-columns:1fr; } }
.token-check-row { display:flex; align-items:center; flex-wrap:wrap; gap:.85rem; min-height:2.6rem; }
.token-result { display:flex; align-items:center; gap:.55rem; padding:.5rem .85rem; border-radius:.65rem; font-size:.78rem; font-weight:650; animation:statusSlideIn .38s cubic-bezier(.2,.9,.25,1.2) both; }
.token-result-success { color:#087443; background:#eafaf1; border:1px solid #b9ebce; box-shadow:0 5px 18px rgba(22,163,74,.1); }
.token-result-error { color:#b42318; background:#fff1f0; border:1px solid #fecaca; }
.result-icon { display:grid; place-items:center; width:1.35rem; height:1.35rem; flex:none; color:white; border-radius:50%; font-size:.78rem; font-weight:900; }
.token-result-success .result-icon { background:#16a34a; animation:successPulse 1.8s ease-in-out .35s infinite; }
.token-result-error .result-icon { background:#dc2626; }
.button-spinner { display:inline-block; width:.85rem; height:.85rem; margin-right:.35rem; vertical-align:-.1rem; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; animation:spin .7s linear infinite; }
@keyframes statusSlideIn { from { opacity:0; transform:translateX(-12px) scale(.96); } to { opacity:1; transform:translateX(0) scale(1); } }
@keyframes successPulse { 0%,100% { box-shadow:0 0 0 0 rgba(22,163,74,.25); } 50% { box-shadow:0 0 0 6px rgba(22,163,74,0); } }
@keyframes spin { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion:reduce) { .token-result,.token-result-success .result-icon,.button-spinner { animation:none; } }
.dns-result { display:flex; align-items:center; gap:.85rem; margin-top:1rem; padding:.8rem 1rem; border-radius:.75rem; animation:statusSlideIn .4s cubic-bezier(.2,.9,.25,1.2) both; }
.dns-result-success { color:#087443; background:#eafaf1; border:1px solid #b9ebce; }
.dns-result-error { color:#b42318; background:#fff1f0; border:1px solid #fecaca; }
.dns-result strong,.dns-result small { display:block; }
.dns-result strong { font-size:.8rem; }
.dns-result small { opacity:.76; font-size:.69rem; margin-top:.18rem; overflow-wrap:anywhere; }
.dns-animation { position:relative; display:grid; place-items:center; width:1.7rem; height:1.7rem; flex:none; }
.dns-animation .result-icon { position:relative; z-index:1; }
.dns-result-success .result-icon { background:#16a34a; }
.dns-result-error .result-icon { background:#dc2626; }
.dns-result-success .dns-ring { position:absolute; inset:0; border:2px solid #22c55e; border-radius:50%; animation:dnsRipple 1.8s ease-out infinite; }
@keyframes dnsRipple { 0% { opacity:.65; transform:scale(.65); } 75%,100% { opacity:0; transform:scale(1.7); } }
@media (prefers-reduced-motion:reduce) { .dns-result,.dns-ring { animation:none!important; } }
.editor-heading { display:flex; align-items:end; justify-content:space-between; gap:1rem; margin:1.5rem 0 .8rem; padding-top:1.15rem; border-top:1px solid var(--line); }
.editor-heading.compact { margin:1rem 0 .7rem; padding-top:0; border-top:0; }
.editor-heading h2 { font-size:1rem; margin:0 0 .25rem; }
.editor-heading p { color:#7c899b; font-size:.74rem; margin:0; }
.deployment-card { padding:.8rem; border:1px solid #dfe6f0; border-radius:.72rem; background:linear-gradient(145deg,#fff,#f8faff); }
.deployment-title { display:flex; align-items:center; gap:.65rem; }
.deployment-title .form-control { border:0; background:transparent; box-shadow:none; padding:.25rem; font-weight:750; }
.deployment-dot { width:.65rem; height:.65rem; flex:none; border-radius:50%; background:#6366f1; box-shadow:0 0 0 5px rgba(99,102,241,.1); }
.icon-button { display:grid; place-items:center; width:2rem; height:2rem; flex:none; border:0; border-radius:.5rem; color:#94a3b8; background:transparent; font-size:1.25rem; line-height:1; }
.icon-button:hover { color:#dc2626; background:#fff1f2; }
.route-card { overflow:hidden; border:1px solid #dfe6f0; border-radius:.78rem; background:#fff; box-shadow:0 3px 12px rgba(15,23,42,.025); }
.route-card-header { display:flex; align-items:center; justify-content:space-between; padding:.65rem .8rem; background:#f8fafc; border-bottom:1px solid #e8edf3; }
.route-name { display:flex; align-items:center; gap:.7rem; width:min(420px,80%); }
.route-name .form-control { border:0; background:transparent; box-shadow:none; padding:.2rem; font-weight:750; }
.route-method { padding:.3rem .45rem; color:#4f46e5; background:#e9eaff; border-radius:.35rem; font-size:.6rem; font-weight:850; letter-spacing:.06em; }
.backend-list { padding:.8rem; background:#fbfcfe; border-top:1px solid #edf1f5; }
.backend-list-title { display:flex; align-items:baseline; gap:.75rem; margin-bottom:.75rem; font-size:.78rem; }
.backend-list-title span { color:#94a3b8; font-size:.68rem; }
.backend-row { padding:.6rem; margin:0 0 .5rem; border:1px solid #e5eaf1; border-radius:.62rem; background:#fff; }
.empty-backend { display:flex; flex-direction:column; align-items:center; gap:.2rem; margin-top:.75rem; padding:1.25rem; color:#64748b; border:1px dashed #cbd5e1; border-radius:.7rem; text-align:center; }
.empty-backend span { color:#94a3b8; font-size:.72rem; }
.editor-actions { display:flex; align-items:center; flex-wrap:wrap; margin-top:1.15rem; padding-top:1rem; border-top:1px solid var(--line); }
.host-wizard { display:flex; align-items:center; justify-content:center; max-width:700px; margin-inline:auto; }
.wizard-step { display:flex; align-items:center; gap:.65rem; color:#94a3b8; min-width:145px; }
.wizard-step>span { display:grid; place-items:center; width:1.9rem; height:1.9rem; flex:none; border:2px solid #dbe3ed; border-radius:50%; background:#fff; font-size:.7rem; font-weight:800; transition:.3s ease; }
.wizard-step strong,.wizard-step small { display:block; }
.wizard-step strong { color:#64748b; font-size:.78rem; }
.wizard-step small { margin-top:.1rem; font-size:.66rem; }
.wizard-step.active>span { color:#fff; border-color:#6366f1; background:#6366f1; box-shadow:0 0 0 6px rgba(99,102,241,.11); transform:scale(1.05); }
.wizard-step.active strong { color:#3730a3; }
.wizard-step.done>span { color:#fff; border-color:#16a34a; background:#16a34a; }
.wizard-line { width:70px; height:2px; margin:0 .75rem; background:#e2e8f0; transition:.35s ease; }
.wizard-line.done { background:#22c55e; }
.wizard-panel { max-width:820px; margin:0 auto; padding:1.15rem; border:1px solid #e2e8f0; border-radius:.85rem; background:linear-gradient(145deg,#fff,#fafbff); animation:wizardIn .35s ease both; }
.wizard-panel h2 { font-size:1.25rem; }
.wizard-domain-input .form-control { font-size:1rem; }
.wizard-result { display:flex; align-items:center; gap:.8rem; padding:.85rem 1rem; border-radius:.75rem; animation:statusSlideIn .4s cubic-bezier(.2,.9,.25,1.2) both; }
.wizard-result.success { color:#087443; background:#eafaf1; border:1px solid #b9ebce; }
.wizard-result.danger { color:#b42318; background:#fff1f0; border:1px solid #fecaca; }
.wizard-result.success .result-icon { background:#16a34a; animation:successPulse 1.8s ease-in-out infinite; }
.wizard-result.danger .result-icon { background:#dc2626; }
.config-summary { display:grid; grid-template-columns:auto 1fr; gap:.35rem .8rem; height:100%; padding:.8rem 1rem; border:1px solid #e2e8f0; border-radius:.7rem; background:#f8fafc; font-size:.72rem; }
.config-summary span { color:#94a3b8; }.config-summary strong { color:#475569; overflow-wrap:anywhere; }
.production-confirm { padding:.8rem 1rem .8rem 2.3rem; color:#92400e; border:1px solid #fde68a; border-radius:.7rem; background:#fffbeb; font-size:.78rem; }
.certificate-progress { overflow:hidden; border:1px solid #e2e8f0; border-radius:.75rem; }
.progress-row { display:flex; align-items:center; gap:.75rem; padding:.7rem .85rem; border-bottom:1px solid #edf1f5; font-size:.76rem; animation:statusSlideIn .3s ease both; }.progress-row:last-child{border-bottom:0}
.progress-row small { display:block; color:#94a3b8; margin-top:.15rem; }.progress-symbol { display:grid; place-items:center; width:1.45rem; height:1.45rem; flex:none; border-radius:50%; color:#fff; background:#6366f1; font-weight:800; }
.progress-row.running .progress-symbol { border:2px solid #c7d2fe; border-right-color:#4f46e5; background:transparent; animation:spin .7s linear infinite; }
.progress-row.success .progress-symbol { background:#16a34a; }.progress-row.error .progress-symbol { background:#dc2626; }
@keyframes wizardIn { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@media(max-width:767px) { .host-wizard { align-items:flex-start; }.wizard-step { min-width:auto; flex-direction:column; text-align:center; }.wizard-step div { display:none; }.wizard-line { width:38px; margin-top:1rem; }.wizard-panel { padding:1rem; } }
@media(prefers-reduced-motion:reduce) { .wizard-panel,.wizard-result,.progress-row,.progress-row.running .progress-symbol { animation:none!important; } }
.step3-overview { display:flex; align-items:center; flex-wrap:wrap; gap:.45rem; padding:.65rem; border:1px solid #e2e8f0; border-radius:.7rem; background:#f8fafc; }
.step3-overview>div { min-width:105px; padding:.35rem .65rem; border-right:1px solid #e2e8f0; }.step3-overview>div:last-child{border-right:0}
.step3-overview .overview-label { display:block; color:#94a3b8; font-size:.58rem; font-weight:750; letter-spacing:.06em; text-transform:uppercase; }.step3-overview strong{font-size:.75rem;color:#334155}.step3-overview .overview-cert strong{color:#15803d}
.section-kicker { display:flex; align-items:center; gap:.7rem; padding:.65rem .8rem; border-radius:.65rem; background:#f1f5ff; }
.section-kicker>span { display:grid; place-items:center; width:1.65rem; height:1.65rem; flex:none; color:#fff; border-radius:.48rem; background:#6366f1; font-size:.68rem; font-weight:850; }.section-kicker strong,.section-kicker small{display:block}.section-kicker strong{font-size:.76rem}.section-kicker small{margin-top:.1rem;color:#7c899b;font-size:.65rem}
.route-basics { background:#fff; }.switch-line{margin:1rem 0 0;font-size:.75rem}
.advanced-options { border-top:1px solid #edf1f5; background:#fafbfc; }
.advanced-options summary { cursor:pointer; padding:.62rem .85rem; color:#4f46e5; font-size:.68rem; font-weight:750; list-style:none; user-select:none; }.advanced-options summary::-webkit-details-marker{display:none}.advanced-options summary::before{content:"›";display:inline-block;margin-right:.45rem;transition:transform .18s ease}.advanced-options[open] summary::before{transform:rotate(90deg)}.advanced-options summary span{margin-left:.35rem;color:#94a3b8;font-weight:500}
.advanced-options-body { padding:.2rem .85rem .85rem; }
@media(max-width:767px){.step3-overview>div{min-width:calc(50% - .25rem);border-right:0}.advanced-options summary span{display:block;margin:.15rem 0 0 1rem}}
.confirm-overlay { position:fixed; inset:0; z-index:1050; display:grid; place-items:center; padding:1rem; background:rgba(15,23,42,.52); backdrop-filter:blur(5px); animation:overlayIn .18s ease both; }
.confirm-dialog { width:min(440px,100%); padding:1.35rem; border:1px solid rgba(255,255,255,.65); border-radius:.9rem; background:#fff; box-shadow:0 24px 70px rgba(15,23,42,.28); animation:dialogIn .22s cubic-bezier(.2,.9,.3,1.08) both; }
.confirm-dialog h2 { margin:.15rem 0 .55rem; font-size:1.15rem; overflow-wrap:anywhere; }.confirm-dialog p{color:#64748b;font-size:.75rem;line-height:1.55}
.confirm-danger-icon { display:grid; place-items:center; width:2.25rem; height:2.25rem; margin-bottom:.8rem; color:#fff; border-radius:.65rem; background:#dc2626; box-shadow:0 0 0 6px #fee2e2; font-size:1rem; font-weight:900; }
.delete-domain-box { display:flex; align-items:center; justify-content:space-between; gap:.75rem; margin:.9rem 0; padding:.65rem .75rem; border:1px solid #fecaca; border-radius:.6rem; background:#fff7f7; font-size:.67rem; }.delete-domain-box span{color:#94a3b8}.delete-domain-box code{max-width:65%;overflow-wrap:anywhere;text-align:right}
.confirm-actions { display:flex; justify-content:flex-end; gap:.55rem; margin-top:1rem; padding-top:.9rem; border-top:1px solid #edf1f5; }
@keyframes overlayIn{from{opacity:0}to{opacity:1}}@keyframes dialogIn{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.confirm-overlay,.confirm-dialog{animation:none}}
.list-overview { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.65rem; }
.list-overview>div { display:flex; align-items:center; justify-content:space-between; padding:.7rem .85rem; border:1px solid #e2e8f0; border-radius:.68rem; background:#fff; box-shadow:0 3px 12px rgba(15,23,42,.025); }.list-overview span{color:#7c899b;font-size:.67rem}.list-overview strong{font-size:.95rem}
.empty-hosts { display:flex; flex-direction:column; align-items:center; margin-top:1rem; padding:2.5rem 1rem; border:1px dashed #cbd5e1; border-radius:.8rem; background:rgba(255,255,255,.55); text-align:center; }.empty-hosts h2{font-size:.95rem}.empty-hosts p{max-width:430px;color:#7c899b;font-size:.72rem}.empty-host-icon{display:grid;place-items:center;width:2.4rem;height:2.4rem;margin-bottom:.7rem;color:#fff;border-radius:.7rem;background:#6366f1;font-weight:850}
@media(max-width:767px){.list-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}
.certificate-manager .section-card-header small{display:block;margin-top:.15rem;color:#94a3b8;font-size:.63rem;font-weight:500}
.mini-steps{display:flex;align-items:center;gap:1.5rem;color:#94a3b8;font-size:.68rem;font-weight:700}.mini-steps div{display:flex;align-items:center;gap:.45rem}.mini-steps span{display:grid;place-items:center;width:1.45rem;height:1.45rem;border:1px solid #dbe3ed;border-radius:50%;background:#fff;font-size:.6rem}.mini-steps .active{color:#4f46e5}.mini-steps .active span{color:#fff;border-color:#6366f1;background:#6366f1;box-shadow:0 0 0 4px rgba(99,102,241,.09)}.mini-steps .done span{color:#fff;border-color:#16a34a;background:#16a34a}
.manager-preview{display:flex;align-items:center;justify-content:space-between;padding:.65rem .8rem;border:1px solid #e2e8f0;border-radius:.62rem;background:#f8fafc;font-size:.7rem}.manager-preview span{color:#94a3b8}.manager-preview strong{color:#334155}
.request-summary{display:grid;grid-template-columns:2fr 1fr 1fr;gap:.6rem}.request-summary>div{padding:.65rem .75rem;border:1px solid #e2e8f0;border-radius:.62rem;background:#f8fafc}.request-summary span,.request-summary strong{display:block}.request-summary span{color:#94a3b8;font-size:.58rem;text-transform:uppercase;letter-spacing:.06em}.request-summary strong{margin-top:.18rem;font-size:.73rem;overflow-wrap:anywhere}
@media(max-width:767px){.request-summary{grid-template-columns:1fr}.certificate-manager .section-card-header{align-items:flex-start;gap:.5rem}}
.section-subtitle{display:block;margin-top:.15rem;color:#94a3b8;font-size:.62rem;font-weight:500}
.tls-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}.tls-status-grid>div{display:flex;align-items:center;justify-content:space-between;padding:.65rem .75rem;border:1px solid #e2e8f0;border-radius:.62rem;background:#f8fafc}.tls-status-grid span{color:#7c899b;font-size:.67rem}.tls-status-grid strong{font-size:.88rem}
.tls-toggle{display:flex;align-items:flex-start;gap:.6rem;margin:1.35rem 0 0;padding:.68rem .75rem;border:1px solid #e2e8f0;border-radius:.62rem;background:#fafbfc}.tls-toggle .form-check-input{flex:none;margin:.1rem 0 0}.tls-toggle span,.tls-toggle strong,.tls-toggle small{display:block}.tls-toggle strong{font-size:.72rem}.tls-toggle small{margin-top:.15rem;color:#8492a6;font-size:.63rem;line-height:1.4}
@media(max-width:767px){.tls-status-grid{grid-template-columns:1fr}.tls-toggle{margin-top:0}}
.setup-layout-page{min-height:100vh;padding:2rem;background:radial-gradient(circle at 15% 15%,rgba(99,102,241,.1),transparent 30%),#f4f7fb}.setup-shell{min-height:calc(100vh - 4rem);display:grid;place-items:center;align-content:center;gap:1rem;max-width:760px;margin:0 auto}.setup-brand{display:flex;align-items:center;gap:.65rem}.setup-brand strong,.setup-brand small{display:block}.setup-brand strong{font-size:.85rem}.setup-brand small{color:#94a3b8;font-size:.58rem;letter-spacing:.1em;text-transform:uppercase}.setup-card{width:100%;max-width:680px}.setup-card .card-body{padding:1.5rem}.setup-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin:1.2rem 0}.setup-flow>div{display:grid;grid-template-columns:auto 1fr;column-gap:.5rem;padding:.65rem;border:1px solid #e2e8f0;border-radius:.65rem;background:#fafbfc}.setup-flow span{grid-row:1/3;display:grid;place-items:center;width:1.55rem;height:1.55rem;border:1px solid #dbe3ed;border-radius:50%;font-size:.62rem;font-weight:800}.setup-flow strong,.setup-flow small{display:block}.setup-flow strong{font-size:.67rem}.setup-flow small{color:#94a3b8;font-size:.58rem}.setup-flow .done span{color:#fff;border-color:#16a34a;background:#16a34a}.setup-flow .active{border-color:#c7d2fe;background:#f5f5ff}.setup-flow .active span{color:#fff;border-color:#6366f1;background:#6366f1}.setup-success-icon{display:grid;place-items:center;width:3rem;height:3rem;margin-bottom:1rem;color:#fff;border-radius:.85rem;background:#16a34a;box-shadow:0 0 0 8px #dcfce7;font-size:1.2rem;font-weight:900}.setup-url{padding:.85rem 1rem;border:1px solid #c7d2fe;border-radius:.65rem;color:#3730a3;background:#f5f5ff;font-size:.9rem;font-weight:750;overflow-wrap:anywhere}
.setup-flow.setup-flow-four{grid-template-columns:repeat(4,1fr)}.setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.setup-progress{overflow:hidden;border:1px solid #e2e8f0;border-radius:.72rem;background:#fff}.setup-progress-row{display:flex;align-items:center;gap:.7rem;padding:.65rem .8rem;border-bottom:1px solid #edf1f5;font-size:.72rem}.setup-progress-row:last-child{border-bottom:0}.setup-progress-row>span{display:grid;place-items:center;width:1.4rem;height:1.4rem;flex:none;color:#fff;border-radius:50%;background:#94a3b8;font-weight:850}.setup-progress-row small{display:block;margin-top:.1rem;color:#94a3b8}.setup-progress-row.success>span{background:#16a34a}.setup-progress-row.error>span{background:#dc2626}.setup-progress-row.running>span{background:#6366f1;animation:successPulse 1.4s ease-in-out infinite}
@media(max-width:767px){.setup-layout-page{padding:1rem}.setup-shell{min-height:calc(100vh - 2rem);align-content:start}.setup-card .card-body{padding:1rem}.setup-flow{grid-template-columns:1fr}}
@media(max-width:767px){.setup-flow.setup-flow-four,.setup-grid{grid-template-columns:1fr}}
.auth-card{max-width:440px}.auth-divider{display:flex;align-items:center;gap:.75rem;margin:1rem 0;color:#94a3b8;font-size:.65rem;text-transform:uppercase}.auth-divider::before,.auth-divider::after{content:"";height:1px;flex:1;background:#e2e8f0}
.auth-brand{display:flex;align-items:center;gap:.8rem}.auth-brand img{width:105px;height:auto}.auth-brand>span{width:1px;height:1.8rem;background:#dbe3ed}.auth-brand strong,.auth-brand small{display:block}.auth-brand strong{font-size:.85rem}.auth-brand small{color:#94a3b8;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}.nav-company-logo{width:58px;height:auto;flex:none;filter:brightness(0) invert(1);opacity:.96}
.sso-enable-row{display:flex;align-items:center;gap:.75rem;padding:.75rem .85rem;border:1px solid #e2e8f0;border-radius:.72rem;background:#fafbfc;cursor:pointer}.sso-enable-row>span:nth-child(2){flex:1}.sso-enable-row strong,.sso-enable-row small{display:block}.sso-enable-row strong{font-size:.76rem}.sso-enable-row small{margin-top:.12rem;color:#8492a6;font-size:.63rem}.sso-enable-row .form-check-input{margin:0}.sso-provider-icon{display:grid;place-items:center;width:2rem;height:2rem;color:#4f46e5;border-radius:.55rem;background:#e9eaff;font-size:.58rem;font-weight:900;letter-spacing:.04em}.sso-section{margin-top:1rem;padding:1rem;border:1px solid #e5eaf1;border-radius:.75rem;background:#fff}.sso-section-title{display:flex;align-items:center;gap:.65rem;margin-bottom:.85rem}.sso-section-title>span{display:grid;place-items:center;width:1.55rem;height:1.55rem;flex:none;color:#fff;border-radius:.45rem;background:#6366f1;font-size:.62rem;font-weight:850}.sso-section-title strong,.sso-section-title small{display:block}.sso-section-title strong{font-size:.76rem}.sso-section-title small{margin-top:.08rem;color:#94a3b8;font-size:.61rem}.sso-redirect{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.85rem;padding:.65rem .75rem;border:1px solid #dbeafe;border-radius:.6rem;background:#f5f9ff}.sso-redirect span,.sso-redirect code{display:block}.sso-redirect span{margin-bottom:.12rem;color:#64748b;font-size:.58rem;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.sso-redirect code{font-size:.68rem;overflow-wrap:anywhere}.sso-advanced{margin-top:1rem;border:1px solid #e5eaf1;border-radius:.7rem}.sso-advanced .advanced-options-body{padding:0 1rem 1rem}
@media(max-width:767px){.sso-redirect{align-items:flex-start;flex-direction:column}.sso-redirect .btn{width:100%}}
.renewal-schedule{display:grid;grid-template-columns:1.35fr .65fr .8fr;gap:1rem;align-items:center;padding:.85rem;border:1px solid #dbeafe;border-radius:.72rem;background:#f8fbff}.renewal-toggle{display:flex;align-items:flex-start;gap:.65rem;margin:0}.renewal-toggle .form-check-input{flex:none;margin-top:.12rem}.renewal-toggle strong,.renewal-toggle small{display:block}.renewal-toggle strong{font-size:.73rem}.renewal-toggle small{margin-top:.12rem;color:#8492a6;font-size:.62rem}.renewal-summary{padding-left:1rem;border-left:1px solid #dbeafe}.renewal-summary span,.renewal-summary strong{display:block}.renewal-summary span{color:#94a3b8;font-size:.58rem;text-transform:uppercase;letter-spacing:.06em}.renewal-summary strong{margin-top:.15rem;color:#334155;font-size:.75rem}
@media(max-width:767px){.renewal-schedule{grid-template-columns:1fr}.renewal-summary{padding:.7rem 0 0;border-top:1px solid #dbeafe;border-left:0}}
.content-mode-picker{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.content-mode-option{display:flex;align-items:center;gap:.75rem;padding:.8rem;text-align:left;color:#475569;border:1px solid #dfe6f0;border-radius:.72rem;background:#fff;transition:.18s ease}.content-mode-option:hover{border-color:#c7d2fe;background:#fafaff}.content-mode-option.active{color:#3730a3;border-color:#818cf8;background:#f5f5ff;box-shadow:0 0 0 3px rgba(99,102,241,.08)}.content-mode-option strong,.content-mode-option small{display:block}.content-mode-option strong{font-size:.76rem}.content-mode-option small{margin-top:.12rem;color:#8492a6;font-size:.62rem}.content-mode-icon{display:grid;place-items:center;width:1.8rem;height:1.8rem;flex:none;color:#fff;border-radius:.5rem;background:#6366f1;font-size:.72rem;font-weight:850}.static-host-panel{padding:1rem;border:1px solid #e2e8f0;border-radius:.8rem;background:linear-gradient(145deg,#fff,#fafbff)}
@media(max-width:767px){.content-mode-picker{grid-template-columns:1fr}}

h1:focus {
    outline: none;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}
