@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#111410;--panel:#192116;--line:#4a513e;--lime:#c6ed73;--white:#f4f1e6;--muted:#b2b7a8;--font:'DM Sans',Arial,sans-serif;--font-condensed:'Barlow Condensed',Impact,'Arial Narrow',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--white);font:14px/1.5 var(--font)}button,input,a{font:inherit}a{color:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait}input{min-width:0}svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--lime);outline-offset:4px}.entry-skip{position:absolute;top:-100px;left:16px;z-index:20;background:#111410;padding:12px}.entry-skip:focus{top:12px}
/* Game button rules copied in cascade order; game stylesheet stays unchanged. */
.entry-primary {background:var(--lime);color:#202918;border:1px solid var(--lime);--control-edge:#bacd8c;--control-body:#151e12;--control-cut:6px;isolation:isolate;text-decoration:none;box-shadow:none;}

@media(hover: hover) and (pointer: fine) {
.entry-primary:hover {border-color:#daf5a2;}

}

.entry-primary span {font-size:16px;line-height:1;}

.entry-primary {position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:14px;min-height:44px;padding:8px 12px 8px 16px;background:transparent;border:0;border-radius:0;color:var(--white);font-family:var(--font-condensed);font-size:16px;font-weight:700;line-height:1.1;letter-spacing:1.1px;text-transform:uppercase;text-align:left;transition:transform .15s,color .15s;}

.entry-outline {--control-cut:6px;position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:space-between;gap:14px;min-height:44px;padding:8px 12px 8px 16px;background:transparent;border:0;border-radius:0;color:var(--white);font-family:var(--font-condensed);font-weight:700;line-height:1.1;text-transform:uppercase;text-align:left;text-decoration:none;transition:transform .15s,color .15s;box-shadow:none;--control-body:#161d13;letter-spacing:.9px;}

.entry-primary::before, .entry-outline::before, .entry-primary::after, .entry-outline::after {content:'';position:absolute;pointer-events:none;clip-path:polygon(var(--control-cut) 0,calc(100% - var(--control-cut)) 0,100% var(--control-cut),100% calc(100% - var(--control-cut)),calc(100% - var(--control-cut)) 100%,var(--control-cut) 100%,0 calc(100% - var(--control-cut)),0 var(--control-cut));}

.entry-primary::before, .entry-outline::before {inset:0;z-index:-2;background:var(--control-edge);}

.entry-primary::after {inset:1px;z-index:-1;background:linear-gradient(45deg,var(--lime),var(--lime)) left bottom/28px 3px no-repeat,linear-gradient(110deg,#25311d,var(--control-body) 76%);}

.entry-outline::after {inset:1px;z-index:-1;}

@media(hover: hover) and (pointer: fine) {
.entry-primary:hover, .entry-outline:hover {background:transparent;border:0;color:#fff;--control-edge:var(--lime);}

}

@media(hover: hover) and (pointer: fine) {
.entry-primary:hover::after {background:linear-gradient(45deg,var(--lime),var(--lime)) left bottom/36px 3px no-repeat,linear-gradient(110deg,#2d3a22,#192315 76%);}

}

.entry-primary:active:not(:disabled), .entry-outline:active:not(:disabled) {transform:translateY(1px);--control-edge:#e8eddf;}

.entry-primary:active:not(:disabled)::after, .entry-outline:active:not(:disabled)::after {background:linear-gradient(45deg,#e8eddf,#e8eddf) left bottom/28px 3px no-repeat,#0e150c;}

body:not(.pointer-input) .entry-primary:focus-visible, body:not(.pointer-input) .entry-outline:focus-visible {outline:2px solid var(--lime);outline-offset:4px;}

.button-icon {display:inline-grid;place-items:center;flex:0 0 26px;width:26px;height:26px;min-width:26px;min-height:26px;margin:0;padding:0;border:1px solid #9fae8c;border-radius:50%;color:var(--lime);vertical-align:middle;line-height:1;font-size:0;transition:background .15s,color .15s,border-color .15s;}

.ui-arrow, .ui-check {display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;}

.entry-primary .button-icon {background:var(--lime);color:#14200d;border-color:var(--lime);}

.entry-primary:active:not(:disabled) .button-icon {background:#eff1e7;border-color:#eff1e7;color:#182011;}

.entry-primary:disabled, .entry-outline:disabled {opacity:1;background:transparent;border:0;color:#88927f;cursor:default;--control-edge:#515b47;--control-body:#151b12;transform:none;}

.entry-primary:disabled::after, .entry-outline:disabled::after {background:linear-gradient(45deg,#67725a,#67725a) left bottom/28px 3px no-repeat,linear-gradient(110deg,#1e2618,#12190f);}

.entry-primary:disabled .button-icon, .entry-outline:disabled .button-icon {background:#626d56;color:#1a2315;border-color:#626d56;}

.entry-outline {--control-edge:#8d9981;width:100%;font-size:15px;}

.entry-outline::after {background:linear-gradient(110deg,#222b1b,var(--control-body) 76%);}

@media(hover: hover) and (pointer: fine) {
.entry-outline:hover::after {background:linear-gradient(110deg,#2b3623,#182015);}

}

.entry-outline .button-icon {background:transparent;color:#e0e5d6;border-color:#9eaa90;}

@media(hover: hover) and (pointer: fine) {
.entry-outline:hover .button-icon {border-color:var(--lime);color:var(--lime);}

}

@media(max-width:899px) {
.entry-outline {font-size:15px;}

}

@media(prefers-reduced-motion:reduce) {
.entry-primary, .entry-outline, .button-icon {transition:none!important;}

}

.entry-shell{max-width:1680px;margin:auto;position:relative;overflow:clip;background:var(--bg)}.entry-header{height:66px;position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 4.5%;border-bottom:1px solid #56604255;background:#0d130eed}.entry-brand{display:inline-flex;gap:10px;align-items:center;text-decoration:none;color:var(--white);font:800 23px/.95 var(--font-condensed);letter-spacing:.4px;flex-shrink:0}.entry-monogram{width:44px;height:48px;display:grid;place-items:center;border:2px solid var(--white);font:700 32px/1 var(--font-condensed);letter-spacing:-1.7px}.entry-header-back{display:none!important}.entry-header .entry-outline{width:auto;min-width:104px;justify-content:center;gap:10px;font-size:17px}.entry-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,400px);position:relative}.entry-hero{grid-area:1/1/2/3;position:relative;isolation:isolate;display:flex;align-items:center;min-height:650px;background:#172015 url('assets/paradise-hero-v2.png') center 42%/cover no-repeat}.entry-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#09100be0 0,#09100b99 30%,#09100b05 62%),linear-gradient(0deg,#0e160f80,transparent 35%)}.entry-hero-copy{padding:40px 5%;max-width:calc(100% - 390px);width:100%}.entry-kicker{font:700 12px/1.5 var(--font-condensed);letter-spacing:3.2px;color:var(--lime);margin:0 0 10px}.entry-hero h1{font:800 clamp(50px,5vw,84px)/.94 var(--font-condensed);letter-spacing:-.7px;margin:0 0 18px}.entry-hero h1 em{font-style:normal;color:var(--lime)}.entry-hero-description{font-size:14px;line-height:1.6;margin:0 0 20px;max-width:490px}.entry-hero-actions{display:flex;gap:12px;align-items:center;max-width:370px}.entry-hero-actions .entry-outline{display:none}.entry-hero-actions .entry-primary{min-height:48px;font-size:20px;min-width:235px}.entry-explore{display:inline-flex;align-items:center;gap:14px;margin-top:15px;text-underline-offset:5px;font-size:13px}.entry-explore span{font-size:22px;color:var(--lime)}.entry-hero-caption{margin:45px 0 0;color:#cbd0c0;font-size:11px}.entry-mobile{display:none}.entry-account{grid-area:1/2/2/3;z-index:1;align-self:center;margin:26px 24px 26px 0;border:1px solid #7d7950;border-radius:10px;background:#0d150deb;box-shadow:0 15px 45px #0004}.entry-account-banner{display:none}.entry-account-inner{padding:24px}.entry-account-heading h2{font:800 40px/1 var(--font-condensed);margin:5px 0 9px;letter-spacing:-.4px}.entry-account-heading>p:last-child{font-size:13px;margin:0 0 18px;color:#d8dccf}.entry-account-heading .entry-kicker{font-size:10px;letter-spacing:1.8px;margin:0}.entry-tabs{display:flex;border-bottom:1px solid #747665;margin:15px 0 18px}.entry-tabs button{flex:1;padding:10px 3px 12px;background:none;border:0;border-bottom:3px solid transparent;margin-bottom:-1px;color:#b7bcad;text-transform:uppercase;font:700 14px/1.2 var(--font-condensed);letter-spacing:1.4px;min-height:44px}.entry-tabs button[aria-current=page]{color:var(--lime);border-bottom-color:var(--lime)}.entry-form{display:grid;grid-template-columns:minmax(0,1fr);gap:0}.entry-form label{display:block;font-size:11px;line-height:1.4;color:var(--white);margin:12px 0 6px}.entry-form>label:first-child{margin-top:0}.entry-input-wrap{position:relative;min-width:0}.entry-input-wrap>svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:20px;height:20px;pointer-events:none;color:#d8ddce}.entry-input-wrap input{display:block;width:100%;height:42px;border:1px solid #777c6a;border-radius:5px;background:#26302155;color:var(--white);padding:0 12px;font-size:13px}.entry-input-wrap>svg+input{padding-left:40px}.entry-input-wrap input[type=password],.entry-input-wrap input[data-revealable]{padding-right:44px}.entry-input-wrap input::placeholder{color:#b0b7a3;opacity:1}.entry-input-wrap input:focus{border-color:var(--lime);outline:2px solid #c6ed7340;outline-offset:1px}.entry-reveal{position:absolute;top:0;right:0;width:44px;height:100%;display:grid;place-items:center;border:0;background:none;color:#d9dfce;padding:10px}.entry-reveal svg{width:21px;height:21px}.entry-reveal[aria-pressed=true]{color:var(--lime)}.entry-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.entry-field-row label{margin-top:0}.entry-text-button,.entry-switch button{border:0;background:none;padding:0;color:var(--lime);text-decoration:underline;text-underline-offset:3px}.entry-text-button{font-size:12px;min-height:44px}.entry-forgot{justify-self:end;margin:0 0 2px}.entry-form .entry-primary{width:100%;min-height:48px;margin-top:18px;font-size:21px}.entry-primary>span:first-child{font-size:inherit;line-height:1.1}.entry-form .entry-forgot+.entry-primary{margin-top:4px}.entry-switch{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:5px;margin:16px 0 0;font-size:11px;text-align:center}.entry-switch::before,.entry-switch::after{content:'';height:1px;flex:1;background:#717460;min-width:15px}.entry-switch button{font-size:inherit;font-weight:600;min-height:30px}.entry-password-note{color:#b1b8a4;font-size:10px;line-height:1.5;margin:10px 0 -3px}.entry-back{justify-self:center;margin-top:12px}.entry-verification{display:grid;gap:14px;font-size:13px}.entry-verification .entry-primary{width:100%}.entry-message{padding:12px;border:1px solid #657e43;background:#26341b;font-size:12px;line-height:1.6;border-radius:4px;margin-bottom:16px;overflow-wrap:anywhere}.entry-message.is-error{border-color:#b8805b;background:#34261d;color:#ffdcc5}.entry-account-promo{display:none}.entry-preview{font-size:11px;color:var(--muted);border:1px solid #647146;padding:10px;margin-top:18px}.entry-preview p{margin:6px 0}.entry-stats{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1.5fr;align-items:center;text-align:center;border-block:1px solid #64613d;padding:17px 4%;font:600 17px/1.2 var(--font-condensed);letter-spacing:2px}.entry-stats span+span{border-left:1px solid #50543c}.entry-stats b{font-weight:700}.entry-features{grid-column:1/-1;padding:32px 4.5% 25px}.entry-features h2{font:800 clamp(28px,3.2vw,45px)/1.05 var(--font-condensed);margin:4px 0 7px}.entry-features-intro{font-size:13px;margin:0 0 17px;color:#d7dccd}.entry-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.entry-feature{border:1px solid #6e714f;border-radius:8px;overflow:hidden;min-width:0;background:#131b12}.entry-feature-art{height:170px;background-size:cover;background-position:center}.feature-crimes .entry-feature-art{background-image:url('assets/crimes/pickpocket-fixed.png');background-position:center 42%}.feature-reputation .entry-feature-art{background-image:radial-gradient(ellipse,#59714455,transparent 70%),url('assets/ranks/ui/badges/20-untouchable.webp');background-repeat:no-repeat;background-size:cover,contain;background-color:#12190e}.feature-fortune .entry-feature-art{background-image:url('assets/bank/paradise-vault-v8.webp');background-position:65% center}.entry-feature-copy{padding:12px 14px}.entry-feature h3{font:700 22px/1.05 var(--font-condensed);letter-spacing:.8px;margin:0 0 6px}.entry-feature p{font-size:12px;line-height:1.45;margin:0;color:#e0e3d7}.entry-closing{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:28px;padding:22px 4%;background:linear-gradient(90deg,#11141066,#111410b3),url('assets/paradise-hero-v2.png') center 40%/cover;border-top:1px solid #5f6847}.entry-closing h2{font:800 35px/1 var(--font-condensed);margin:0}.entry-closing .entry-primary{min-width:220px}.entry-closing>span{margin-left:auto;font:700 15px/1 var(--font-condensed);letter-spacing:2px}.entry-footer{display:none;text-align:center;font:500 10px/1.4 var(--font-condensed);letter-spacing:4px;padding:12px 0;color:#afb4a4}
[data-initial-screen=account] .entry-header-signin{display:none!important}[data-initial-screen=account] .entry-header-back{display:inline-flex!important}[data-initial-screen=account] .entry-hero{background-image:url('assets/crimes/south-side.png');min-height:calc(100svh - 66px)}[data-initial-screen=account] .entry-hero-copy{max-width:calc(100% - 430px)}[data-initial-screen=account] .entry-hero-actions,[data-initial-screen=account] .entry-hero-caption,[data-initial-screen=account] .entry-explore,[data-initial-screen=account] .entry-stats,[data-initial-screen=account] .entry-features,[data-initial-screen=account] .entry-closing{display:none}[data-initial-screen=account] .entry-account{margin-block:38px}
@media(min-width:1000px){[data-initial-screen=landing] .entry-tabs [data-entry-view=register]{order:-1}}
@media(max-width:1199px) and (min-width:1000px){.entry-layout{grid-template-columns:minmax(0,1fr) 360px}.entry-hero-copy{max-width:calc(100% - 350px);padding-left:4%}.entry-hero h1{font-size:55px}.entry-account-inner{padding:20px}.entry-account{margin-right:20px}.entry-closing>span{display:none}}
@media(max-width:999px){.entry-shell{max-width:560px;min-height:100svh;overflow:clip}.entry-header{height:76px;position:absolute;inset:0 0 auto;padding:14px 5%;border:0;background:linear-gradient(#0d130e88,transparent)}.entry-brand{font-size:21px;gap:10px}.entry-monogram{width:38px;height:43px;font-size:29px}.entry-header .entry-outline{min-width:82px;min-height:39px;padding:7px 12px;font-size:16px}.entry-layout{display:block}.entry-mobile{display:inline}.entry-desktop{display:none!important}.entry-hero{min-height:clamp(520px,150vw,740px);align-items:flex-end;background-position:78% top}.entry-hero-shade{background:linear-gradient(0deg,#111410 0,#111410d9 14%,#11141035 37%,transparent 64%)}.entry-hero-copy{max-width:none;padding:0 5% 17px}.entry-kicker{font-size:12px;letter-spacing:3.1px;margin-bottom:5px}.entry-hero h1{font-size:clamp(39px,10.7vw,62px);line-height:.97;letter-spacing:-.2px;margin:0 0 10px}.entry-hero-description{font-size:14px;line-height:1.4;margin:0 0 14px}.entry-hero-actions{max-width:none;gap:10px;align-items:stretch}.entry-hero-actions .entry-primary{min-width:0;flex:1;min-height:45px;font-size:20px;padding-left:14px}.entry-hero-actions .entry-outline{display:inline-flex;justify-content:center;flex:0 0 28%;width:auto;font-size:18px;padding-inline:10px}.entry-explore,.entry-hero-caption,.entry-stats,.entry-closing{display:none}.entry-account{margin:0;border:0;border-radius:0;box-shadow:none;background:none}.entry-account-inner{padding:18px 5% 22px}.entry-account-heading .entry-kicker{font-size:12px;letter-spacing:3px}.entry-account-heading h2{font-size:clamp(42px,11.6vw,62px);line-height:1.01;margin:5px 0 6px}.entry-account-heading>p:last-child{font-size:15px;margin:6px 0 12px;line-height:1.45}.entry-tabs{margin:10px 0 17px}.entry-tabs button{font-size:15px;letter-spacing:1.5px;min-height:44px}.entry-form label{font-size:12px;margin-top:15px}.entry-input-wrap input{height:48px;font-size:16px;padding-left:13px}.entry-input-wrap>svg+input{padding-left:45px}.entry-input-wrap>svg{left:13px;width:22px;height:22px}.entry-form .entry-primary{min-height:48px;font-size:23px;margin-top:20px}.entry-form .entry-forgot+.entry-primary{margin-top:7px}.entry-field-row{grid-template-columns:1fr;gap:0}.entry-field-row>div+div label{margin-top:15px}.entry-password-note{font-size:11px}.entry-switch{font-size:12px;margin-top:16px}.entry-text-button{font-size:13px}.entry-switch button{min-height:34px}.entry-account-promo{display:flex;align-items:center;min-height:112px;margin-top:12px;border:1px solid #ac9555;border-radius:6px;overflow:hidden;background:linear-gradient(90deg,#0b130fe0,#0b130f80 50%,#0b130f05),url('assets/crimes/south-side.png') center 52%/cover}.entry-account-promo p{font:800 21px/.98 var(--font-condensed);margin:16px}.entry-features{padding:0 3% 0}.entry-features h2{text-align:center;font:600 17px/1.2 var(--font-condensed);letter-spacing:3px;padding-top:12px;border-top:1px solid #9ca389;margin:0 2% 12px}.entry-features-intro{display:none}.entry-feature-grid{gap:8px}.entry-feature-art{height:76px}.entry-feature-copy{padding:7px 8px 10px}.entry-feature h3{font-size:17px;letter-spacing:0;line-height:1.03;margin-bottom:5px}.entry-feature p{font-size:10px;line-height:1.3}.feature-crimes .entry-feature-art{background-image:url('assets/crimes/south-side.png');background-position:25% center}.feature-reputation .entry-feature-art{background-image:url('assets/crimes/roster-v1/luxury-vehicle-theft.webp');background-size:cover;background-position:center 55%}.feature-fortune .entry-feature-art{background-position:26% center}.entry-footer{display:block;margin-inline:5%;border-top:1px solid #666d59;margin-top:12px;padding-bottom:max(12px,env(safe-area-inset-bottom))}[data-initial-screen=landing] .entry-account{display:none}[data-initial-screen=account] .entry-hero{display:none}[data-initial-screen=account] .entry-account{margin:0}[data-initial-screen=account] .entry-account-banner{display:block;height:clamp(210px,58vw,300px);background:linear-gradient(0deg,#11141033,transparent 25%),url('assets/crimes/south-side.png') center 45%/cover}[data-initial-screen=account] .entry-header{background:linear-gradient(#0d130ef2,#0d130e55 80%,transparent)}[data-initial-screen=account] .entry-footer{display:none}}
@media(max-width:359px){.entry-brand{font-size:18px;gap:8px}.entry-monogram{width:33px;height:38px;font-size:26px}.entry-header{height:67px}.entry-header .entry-outline{min-width:72px;padding-inline:8px}.entry-hero h1{font-size:39px}.entry-hero-description{font-size:12px}.entry-hero-actions .entry-primary{font-size:18px;gap:8px}.entry-feature-grid{gap:6px}.entry-feature-copy{padding-inline:6px}.entry-feature h3{font-size:15px}.entry-feature p{font-size:10px}.entry-account-heading h2{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Match the server-selected form before deferred JavaScript initializes. */
[data-initial-view=register] #login-form,[data-initial-view=verification] #login-form{display:none!important}
[data-initial-view=register] #register-form[hidden],[data-initial-view=verification] #verification-panel[hidden]{display:grid!important}
@media(max-width:999px){.entry-header{padding-top:max(14px,env(safe-area-inset-top));height:calc(76px + env(safe-area-inset-top))}.entry-header .entry-outline{min-height:44px}.entry-account-inner{padding-bottom:max(22px,env(safe-area-inset-bottom))}.entry-account-heading h2{font-size:clamp(42px,14vw,68px)}.entry-switch button{min-height:44px}}

/* Keep the shared portrait subjects clear of the desktop account panel. */
@media(min-width:1000px){[data-initial-screen=landing] .entry-hero{background-size:max(calc(100% - 260px),1155px) auto;background-position:right 260px center}}
