/* LuckStar identity. The supplied 48 × 48 logo is used unchanged. */
:root {
  --brand-navy: #1e2469;
  --brand-primary: #29358e;
  --brand-light: #eef2fb;
  --bg: #f4f6fb;
  --ink: #202b48;
  --blue: var(--brand-primary);
  --pale: var(--brand-light);
  --line: #e3e8f2;
}
.brand-logo {width:48px;height:48px;object-fit:contain;flex-shrink:0;display:block}
.brand-wordmark {display:block;font-size:23px;font-weight:650;letter-spacing:2px;line-height:1.2}
.brand .brand-wordmark small,.auth-brand .brand-wordmark small {display:block;font-size:11px;letter-spacing:2px;margin:7px 0 0;font-weight:400;line-height:1.2;color:inherit;opacity:.65}
.sidebar {width:228px;background:var(--brand-navy);border:0;padding:28px 16px;color:#e9ecfa}
.sidebar .brand {padding:0 9px;gap:12px;margin-bottom:40px;color:#fff}
.sidebar .brand-wordmark {font-size:23px;letter-spacing:2px}
.sidebar .nav-caption {color:#a6afd1;letter-spacing:2px;font-size:10px;margin-bottom:14px}
.sidebar nav {gap:7px}
.sidebar nav a {color:#bbc4e2;min-height:47px;padding:13px 15px;font-size:13px;border-radius:8px;position:relative}
.sidebar nav a:hover {background:#ffffff0c;color:#fff}
.sidebar nav a.active {color:#202d7e;background:#f4f6ff;font-weight:600;box-shadow:0 3px 10px #10143c17}
.sidebar nav a.active span {color:#2a3b91}
.sidebar nav a b {background:#ffffff12;color:#cdd5f0;border-radius:5px}
.sidebar nav a.active b {background:#e3e8f8;color:#455591}
.sidebar-bottom {border-color:#ffffff18;color:#ccd4ee;padding:22px 13px 0}
.sidebar-bottom p {color:#9ba7ce;font-size:11px;line-height:2}
.sidebar-bottom .version-label {color:#7787b5;font-size:10px;letter-spacing:1px}
.sidebar-bottom .status-dot.ok {background:#83d9bc}
.workspace {margin-left:228px}
.topbar {background:#fff;border-bottom:1px solid #e6eaf3;height:68px}
.breadcrumb {color:#929bb0}
.breadcrumb b {color:#47536f;font-weight:500}
.avatar {color:#455593;background:#edf1fa}
.top-actions .text-button {color:#707b93}
.mobile-brand-logo {display:none}
main {padding-top:30px}
h1 {color:#222e4b;font-weight:650}
.page-head p:not(.eyebrow) {color:#7d879c}
.btn.primary {background:var(--brand-primary);border-color:var(--brand-primary);box-shadow:0 3px 7px #28358d18}
.btn.primary:hover {background:#1d2775;border-color:#1d2775}
.btn.soft {background:#edf1fb;color:#354792}
.btn:hover {border-color:#9aa9d3;color:#293b88}
.btn.primary:hover {color:#fff}
button:focus-visible,a:focus-visible {outline-color:#9aabd9}
.card {border-color:#e2e7f1;box-shadow:0 3px 12px #24366703}
.campaign-summary>div {border-color:#e2e7f1;border-radius:12px}
.summary-icon {color:#40559d;background:#eef2fc}
.summary-icon.green {background:#edf7f2;color:#4a9c7e}
.summary-icon.violet {background:#eff3f9;color:#647da3}
.campaign-summary strong {color:#27375c}
.status-tabs button.selected {color:#34458d}
.status-tabs button.selected span {background:#e8edfa;color:#4b5f9b}
.campaign-card {border-top:2px solid #d3dbef}
.campaign-symbol {color:#43589c;background:#edf1fb;border:1px solid #e6ebf7}
.campaign-identity h2 {color:#283553}
.campaign-note {color:#818b9e}
.inner-summary {background:#f7f9fd;border-color:#eaf0f8}
.inner-preview {border-color:#e5ebf5}
.inner-preview strong {color:#50607b}
.target-address {color:#7e8ca6}
.inner-heading {color:#6f7d96}
.inner-limit {color:#7a88a0}
.inner-limit small {color:#8c99ae}
.campaign-numbers strong {color:#314364}
.campaign-card-foot {background:#fcfdff;border-color:#edf1f7}
.more-inner summary {color:#5369a4}
.entry-url {color:#465c9b}
.entry-card .card-head {background:#fcfdff}
.metric-blue {background:#283780;color:#fff}
.metric-blue .metric-top,.metric-blue p {color:#dfe6fa}
.metric-blue .metric-icon {background:#ffffff18;color:#fff}
.bar i {background:#637cb9}
.rank-index.first,.code-icon {background:#edf1fb;color:#4c639f}
.metric-icon {background:#edf1fb;color:#5268a1}
.notice {background:#f0f4fb;border-color:#e4ebf6;color:#6f7f9c}
.modal-head .eyebrow {color:#8190ac}
.editor-intro>span {background:#eaf0fb;color:#566da8}
.editor-section h3 b {background:#edf2fc;color:#5c6fa5}
.inline-target>.section-label>strong {color:#4f6496}
.assignment-row.inline-target {background:#f9fbfe;border-color:#e1e8f3}
.password-card {max-width:460px;border:1px solid #dde5f2;box-shadow:0 18px 65px #2437770a;border-radius:18px}
.password-screen {background:radial-gradient(ellipse at 50% 0%,#e7ecf9 0%,#f4f6fb 65%)}
.auth-brand {display:flex;align-items:center;gap:12px;margin-bottom:32px;color:#242d6e}
.auth-brand .brand-logo {width:44px;height:44px}
.auth-brand .brand-wordmark {font-size:24px;letter-spacing:2px}
.auth-brand .brand-wordmark small {letter-spacing:2px;font-size:11px}
.password-card>.eyebrow {padding-top:24px;border-top:1px solid #e7ebf4;letter-spacing:1px;color:#8b97af}
.password-card h2 {font-size:22px;color:#293858}
.password-card .muted {font-size:13px}
/* Auth page: a quiet indigo brand panel, white form, orbit geometry echoes the mark. */
.login-screen {grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100dvh;background:#fff}
.login-visual {background:var(--brand-navy);padding:40px 50px;min-height:100dvh;position:relative;overflow:hidden;color:#fff}
.login-visual .brand {color:#fff;gap:14px;font-size:24px;position:relative;z-index:1}
.login-visual .brand small {display:block;color:#c1c9e6;margin-left:0}
.login-story {position:relative;z-index:1;padding:28px 0 38px;max-width:430px}
.login-story .login-overline {font-size:11px!important;letter-spacing:2px;color:#b8c4eb!important;margin-bottom:16px}
.login-story h1 {color:#fff;font-size:40px;line-height:1.45;letter-spacing:2px;font-weight:550;margin-bottom:20px}
.login-visual .login-story>p:not(.login-overline) {font-size:13px;color:#aebcdf;line-height:2}
.login-features {display:flex;gap:22px;margin-top:30px;color:#c3cfee;font-size:11px;letter-spacing:1px}
.login-features span {display:flex;align-items:center;gap:7px}
.login-features span:before {content:'';width:4px;height:4px;background:#7f96d5;transform:rotate(45deg)}
.login-brand-footer {display:flex;justify-content:space-between;gap:16px;font-size:10px;letter-spacing:.5px;color:#899aca;position:relative;z-index:1}
.brand-orbit {height:154px;width:190px;position:relative;display:grid;place-items:center;margin:0 0 28px 0}
.orbit-ring {position:absolute;width:148px;height:148px;border:1px solid #a9b9e423;border-radius:50%;transform:rotate(-20deg) scaleX(1.18)}
.orbit-ring.inner {width:108px;height:108px;transform:rotate(32deg) scaleX(1.12);border-color:#a9b9e42b}
.orbit-core {padding:15px;border:1px solid #c9d3ee25;background:#ffffff06;border-radius:50%;box-shadow:0 0 48px #7f92e317}
.orbit-core .brand-logo {width:48px;height:48px}
.orbit-star {position:absolute;color:#cbd5f4;font-style:normal;line-height:1}
.star-one {left:16px;top:35px;font-size:15px}
.star-two {right:13px;bottom:32px;font-size:23px;color:#98aad5}
.orbit-dot {position:absolute;right:45px;top:9px;width:5px;height:5px;border-radius:50%;background:#a9b8df}
.login-panel {display:flex;flex-direction:column;align-items:center;min-height:100dvh;position:relative;padding:40px 45px}
.login-form {width:360px;max-width:100%;padding:30px 0;margin:auto}
.login-form .auth-brand {display:none}
.login-form>.eyebrow {font-size:11px;letter-spacing:2px;color:#8290ae;margin-bottom:12px}
.login-form h2 {font-size:28px;font-weight:600;letter-spacing:.5px;color:#273353;margin-bottom:12px}
.login-form>.muted {font-size:13px;color:#8b95a8}
.login-form label {margin-top:25px;font-size:12px;color:#606f8c;gap:10px}
.login-form input {height:46px;padding:12px 14px;background:#fcfdff;border-color:#dfe5f0;border-radius:8px}
.login-form .btn {height:46px;border-radius:8px;font-size:13px;margin-top:26px;justify-content:center;position:relative}
.login-form .btn span {position:absolute;right:16px;color:#c7d2f0}
.login-form>.small {font-size:11px;color:#98a2b5;margin-top:20px}
.auth-footer {font-size:10px;color:#a2abbd;letter-spacing:.5px;text-align:center;padding-top:24px}
.demo-card>.auth-brand {margin-bottom:25px}
@media(max-height:760px) and (min-width:761px){.login-visual{padding:32px 44px}.brand-orbit{height:120px;margin-bottom:20px}.orbit-ring{width:116px;height:116px}.orbit-ring.inner{width:90px;height:90px}.orbit-core{padding:10px}.login-story{padding:20px 0}.login-story h1{font-size:35px}.login-features{margin-top:24px}}
@media(max-width:1050px) and (min-width:761px){.sidebar{width:212px;padding:28px 12px}.sidebar .brand{gap:9px}.sidebar .brand-wordmark{font-size:22px}.workspace{margin-left:212px}.login-visual{padding:32px}.login-panel{padding:32px}.login-story h1{font-size:32px}.login-features{gap:14px}.login-brand-footer>span:last-child{display:none}}
@media(max-width:760px){
 .sidebar{width:228px;padding:28px 16px;background:var(--brand-navy)}
 .sidebar .brand{margin-bottom:35px;padding-left:8px;font-size:23px}
 .sidebar .brand-logo{width:44px;height:44px}
 .sidebar .brand .brand-wordmark small{display:block;margin:7px 0 0}
 .sidebar nav a{font-size:13px}
 .sidebar .sidebar-bottom{color:#ccd4ee}
 .workspace{margin-left:0}
 .topbar{height:62px;gap:8px;padding:0 14px}
 .mobile-brand-logo{display:block;width:26px;height:26px;border-radius:50%;margin-right:2px}
 .topbar .breadcrumb{font-size:0!important;gap:0}
 .topbar .breadcrumb b{font-size:12px;color:#455373;white-space:nowrap}
 #mobile-menu{width:29px;height:30px;background:#eff2fa;color:#64759d}
 .top-actions{gap:5px}.top-actions>.avatar{display:none}.top-actions>.text-button{font-size:11px;padding:4px}
 .login-screen{display:block;background:#f4f6fb}
 .login-visual{display:none}
 .login-panel{min-height:100dvh;padding:35px 26px;background:linear-gradient(180deg,#e9edf8 0,#f7f9fd 30%,#fff 100%)}
 .login-form{max-width:360px;width:100%;padding:20px 0}
 .login-form .auth-brand{display:flex;margin-bottom:42px}
 .login-form .auth-brand .brand-logo{width:48px;height:48px}
 .login-form h2{font-size:25px}
 .login-form>.eyebrow{font-size:10px}
 .login-form input{height:48px;font-size:16px}
 .login-form .btn{height:47px}
 .auth-footer{font-size:10px;padding-top:30px}
 .password-card{padding:27px 22px;border-radius:15px}
 .password-card .auth-brand{margin-bottom:24px}
 .password-card h2{font-size:20px}
 .password-card input{font-size:16px}
}
