:root{--brand:#6b1f5c;--brand-deep:#3a0d32;--bs-body-font-family:"Be Vietnam Pro",system-ui,sans-serif;--bs-body-bg:#f5f0f4;
    --vs: #4b2971;
    --vs-ink: #241338;
    --vs-soft: #ded3ec;
}
body{font-size:14px}
.brand-bar{background:var(--brand)}
.brand-mark{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:6px;background:#fff;color:var(--brand);font-size:12px;margin-right:6px}
.hero{background:linear-gradient(135deg,var(--brand),var(--brand-deep))}
.btn-brand{background:var(--brand);border-color:var(--brand);color:#fff}
.btn-brand:hover{background:#57184b;color:#fff}
.login-wrap{position:relative;min-height:100vh;display:flex;align-items:flex-start;justify-content:flex-end;padding:24px;background:#160a24;overflow:hidden}
.login-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:100% 50%}
.login-card{position:relative;width:340px;max-width:100%;background:#4b2971}
.appcard{border:0;border-top:4px solid var(--c);transition:transform .15s,box-shadow .15s;text-decoration:none;color:inherit}
.appcard:hover{transform:translateY(-3px);box-shadow:0 .75rem 1.5rem rgba(58,13,50,.18)}
.appcard .ico{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--c);color:#fff;font-weight:600;font-size:12px}
.appcard .art{height:90px;background:color-mix(in srgb,var(--c) 10%,#fff);stroke:var(--c);fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.launcher{position:absolute;top:100%;left:0;margin-top:8px;min-width:240px;z-index:1050}
.rq-row{cursor:pointer}
.steps span{display:inline-block;padding:2px 10px;border-radius:99px;background:#eee;margin-right:6px;font-size:12px}
.steps .done{background:#e2f2e5;color:#2d7a3e}.steps .now{background:#fdf0d9;color:#b56a00}
.num{text-align:right;font-variant-numeric:tabular-nums}
#pwToggle{
	position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    border: 0;
    background: transparent;
    color: #5a4a70;
    font-size: 12.5px;
    font-weight: 600;
    padding: 5px 8px;
    border-radius: 6px;
}

#pwToggle:hover {
    color: var(--vs-ink);
    background: #efeaf5;
}
button.btn-brand{
	height: 44px;
    border: 0;
    border-radius: 8px;
    background: #fff;
    color: var(--vs);
    font-weight: 700;
    font-size: 14.5px;
	transition: background .15s;
}
button.btn-brand:hover{
	background: #ece6f5;
	color: var(--vs);
}
[hidden]{display:none!important}#pwd{padding-right:64px}.destination-card{cursor:pointer}.destination-card:has(input:checked){outline:2px solid var(--brand)}#redirectResult input,#redirectResult textarea{font-family:monospace}#passwordForm{max-width:540px}@media(prefers-reduced-motion:reduce){.login-video{display:none}.login-wrap{background:url(../assets/login-ship-poster.jpg) center/cover}}
