/* RS-UI-03: production-only extraction of the approved D-071 entry cascade.
 * Source order: clip-corners-v001, retrospace-ui-v001, b3-login-v001,
 * kontoeinstieg-v001, sprachwahl-v002. No preview controls or game selectors.
 * Runtime additions below cover real links, unavailable locales, errors and
 * a native progress value; the design reference files remain unchanged.
 */
.rs-cut-corners {
  --rs-corner-cut: 20px;
  min-inline-size: calc(2 * var(--rs-corner-cut));
  min-block-size: calc(2 * var(--rs-corner-cut));
  clip-path: polygon(
    var(--rs-corner-cut) 0,
    calc(100% - var(--rs-corner-cut)) 0,
    100% var(--rs-corner-cut),
    100% calc(100% - var(--rs-corner-cut)),
    calc(100% - var(--rs-corner-cut)) 100%,
    var(--rs-corner-cut) 100%,
    0 calc(100% - var(--rs-corner-cut)),
    0 var(--rs-corner-cut)
  );
}
:root{color-scheme:dark;--rs-bg:#0e0d15;--rs-surface:#201e2b;--rs-surface-raised:#292535;--rs-line:#51475f;--rs-text:#e8e3ec;--rs-muted:#b4aabc;--rs-accent:#c5a1e0;--rs-primary:#624088;--rs-focus:#dfc5f0;--rs-success:#a6cabb;--rs-warning:#dcc18a;--rs-error:#e3a8af;--rs-gap:16px;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5;background:var(--rs-bg);color:var(--rs-text)}
*{box-sizing:border-box}
body{margin:0}
button,input,select{font:inherit}
button,a,input,select{touch-action:manipulation}
button,input,select{min-block-size:44px}
a{color:var(--rs-accent);text-decoration-thickness:1px;text-underline-offset:3px}
h1,h2,h3,p{margin:0}
h1{font-size:clamp(1.7rem,3vw,2.8rem);line-height:1.2;font-weight:500}
small{font-size:.8rem;color:var(--rs-muted)}
.rs-panel{background:var(--rs-line);padding:1px;--rs-corner-cut:20px}
.rs-panel>.rs-surface{background:var(--rs-surface);padding:22px;min-block-size:100%;--rs-corner-cut:19.414214px}
.rs-button-wrap{display:inline-block;max-inline-size:100%}
.rs-button-wrap:focus-within{outline:2px solid var(--rs-focus);outline-offset:3px}
.rs-button{--rs-corner-cut:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:0;background:var(--rs-primary);color:var(--rs-text);font-weight:600;min-block-size:44px;max-inline-size:100%;text-align:center;white-space:normal}
.rs-button.secondary{background:#3e344c;box-shadow:inset 0 0 0 1px #756487}
.rs-button.ghost{background:#292535;color:var(--rs-accent);box-shadow:inset 0 0 0 1px var(--rs-line)}
.rs-button:hover{background:#7a539f}
.rs-button:active{background:#4b2e6d}
.rs-button:disabled{background:#292632;color:#c4b8cd}
.rs-button:focus-visible{outline:none}
.rs-button.full{inline-size:100%}
input,select{inline-size:100%;min-inline-size:0;border:1px solid #68596f;background:#14131c;color:var(--rs-text);padding:9px 12px;border-radius:0}
input::placeholder{color:#9c90a8}
input[aria-invalid=true]{border-color:var(--rs-error)}
input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--rs-focus);outline-offset:3px}
@media(max-width:700px){.rs-panel>.rs-surface{padding:20px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Approved B3 background, card and shared geometry. */
html,body{min-block-size:100%;background:#0b0a12}
body{min-block-size:100svh}
.b3-background{position:fixed;inset:0;z-index:0;overflow:hidden}
.b3-background img{inline-size:100%;block-size:100%;object-fit:cover;object-position:center top}
.b3-shade{position:fixed;inset:0;background:linear-gradient(180deg,rgba(7,6,13,.04),rgba(7,6,13,.16) 40%,rgba(7,6,13,.3));z-index:1}
.b3-page{position:relative;z-index:2;min-block-size:100svh}
.b3-main{display:grid;place-items:center;padding:40px 20px}
.b3-card{inline-size:min(390px,100%);background:#aa82c6;--rs-corner-cut:20px}
.b3-card>.rs-surface{background:#201e2bf5;padding:34px 28px 28px;--rs-corner-cut:19.414214px}
.b3-logo{inline-size:100%;max-inline-size:288px;block-size:auto;display:block;margin-inline:auto}
.b3-alpha{text-align:center;color:#c6a4df;font-size:.7rem;letter-spacing:.15em;margin-block:8px 20px;text-transform:uppercase}
.b3-card h1{font-size:1.3rem;text-align:center;margin-block-end:24px}
.b3-card .rs-button-wrap,.b3-card .rs-button{inline-size:100%}
.b3-card input{block-size:44px}
@media(max-width:700px){.b3-main{padding:24px 20px}.b3-card{inline-size:min(350px,100%)}.b3-card>.rs-surface{padding:28px 22px 24px}.b3-logo{max-inline-size:266px}.b3-card h1{margin-block-end:20px}}
@media(max-height:650px) and (orientation:landscape){.b3-main{padding-block:12px}.b3-card>.rs-surface{padding-block:20px}.b3-alpha{margin-block:5px 10px}.b3-card h1{margin-block-end:12px}}

/* Approved account form and state rules, without the review interface. */
button{cursor:pointer}
button:disabled{cursor:not-allowed}
[hidden]{display:none!important}
.b3-page{display:flex;flex-direction:column;min-block-size:100svh}
.b3-main{flex:1;min-block-size:0;padding:32px 20px 34px;display:grid;place-items:center}
.b3-card{inline-size:min(390px,100%);margin:0;filter:drop-shadow(0 18px 45px #080610b3)}
.b3-card>.rs-surface{padding:30px 28px 27px}
.b3-logo{max-inline-size:280px}
.b3-alpha{margin-block:9px 21px;font-size:10px;letter-spacing:.18em}
.b3-card h1{font-size:22px;font-weight:500;line-height:1.25;margin:0 0 22px;overflow-wrap:anywhere;text-wrap:balance}
.entry-form{display:grid;gap:17px;margin:0}
.entry-field{display:grid;gap:7px;font-size:13px;text-align:start}
.entry-field>span{color:#e4d9ed}
.entry-field input,.entry-field select{inline-size:100%;min-inline-size:0;block-size:46px;background:#15131e;border:1px solid #72607f;border-radius:0;padding:10px 12px;color:#f4eaf9;outline-offset:3px;text-align:start}
.entry-field input{direction:ltr}
.entry-field input::placeholder{color:#a498b1;opacity:1;font-size:13px}
.entry-field input[aria-invalid="true"],.entry-field select[aria-invalid="true"]{border-color:#d69ca8;border-inline-start-width:3px}
.entry-field small{font-size:11px;line-height:1.5;color:#c4b8cd}
.entry-field .field-error{color:#f0b5bf}
.entry-advice{font-size:12px;color:#cabed4;line-height:1.65;margin:0 0 20px;text-align:start;overflow-wrap:anywhere}
.entry-notice{padding:12px 13px;border:1px solid #776286;border-inline-start:3px solid #c5a1e0;background:#302639;color:#e5d9ed;font-size:12px;line-height:1.6;margin:0 0 20px;text-align:start;overflow-wrap:anywhere}
.entry-notice.error{border-color:#b87c89;border-inline-start-color:#e3a8af;background:#35252f;color:#f1c7cf}
.entry-notice.success{border-color:#6d9187;border-inline-start-color:#a6cabb;background:#24312f;color:#c6e1d6}
.entry-notice.warning{border-color:#a28a6e;border-inline-start-color:#dec19d;background:#332d29;color:#ead5bc}
.entry-check{display:flex;gap:10px;align-items:flex-start;font-size:11px;line-height:1.65;min-block-size:44px;text-align:start;color:#d1c6da}
.b3-card .entry-check input{inline-size:18px;block-size:18px;min-block-size:18px;min-inline-size:18px;margin:4px 0 0;accent-color:#b490d0}
.entry-link{color:#d5b3ed;text-decoration:underline;text-underline-offset:3px;border:0;background:none;padding:2px 0;display:inline;font:inherit;text-align:inherit;min-block-size:24px}
.entry-links{display:grid;text-align:center;margin-block-start:14px;gap:6px}
.entry-links .entry-link{min-block-size:44px;padding:10px 4px;line-height:1.5;font-size:12px}
.entry-submit{min-block-size:46px;white-space:normal;line-height:1.4;overflow-wrap:anywhere}
.entry-submit:disabled{opacity:1}
.entry-strength{display:grid;gap:7px;text-align:start;color:#c4b8cd;font-size:11px}
.entry-strength>div:first-child{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.entry-strength small{font-size:10px}
.entry-secondary{margin-block-start:12px!important}
.entry-fineprint{font-size:10px;color:#c2b5cd;line-height:1.65;text-align:center;margin:18px 0 0}
.entry-footer{display:flex;flex-direction:column;gap:4px;align-items:center;padding:4px 20px 18px;font-size:10px;color:#c7bbd1;text-shadow:0 1px 4px #000;text-align:center;position:relative}
.entry-footer>div{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.entry-footer a{display:inline-flex;align-items:center;color:inherit;border:0;background:none;min-block-size:44px;padding:5px 0;font-size:11px;text-decoration:underline;text-underline-offset:3px}
.entry-footer .origin-notice{max-inline-size:560px;line-height:1.5}
.entry-footer .origin-notice summary{cursor:pointer;min-block-size:44px;display:list-item;align-content:center}
.entry-footer .origin-notice p{margin:4px 0}
button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid #dfc5f0;outline-offset:4px}
.b3-card .rs-button-wrap{display:block}
.b3-card .rs-button-wrap:focus-within{outline:2px solid #dfc5f0;outline-offset:4px}
.b3-card [dir="rtl"] input{direction:ltr}
@media(min-width:701px) and (min-height:850px){.b3-main{padding-block:40px 70px}}
@media(max-width:700px){.b3-main{padding:20px 16px 26px}.b3-card{inline-size:min(350px,100%)}.b3-card>.rs-surface{padding:25px 22px 23px}.b3-logo{max-inline-size:266px}.b3-card h1{font-size:21px}.entry-footer{padding-block-end:14px}}
@media(max-width:359px){.b3-main{padding-inline:12px}.b3-card>.rs-surface{padding-inline:18px}.entry-form{gap:15px}}
@media(prefers-reduced-motion:no-preference){button{transition:background-color .12s,color .12s}}

/* Approved direct language chooser, bound to real current-page links. */
.entry-languages{position:relative;z-index:2;inline-size:min(1060px,calc(100% - 40px));margin:18px auto 0;padding:13px 16px 10px;background:#191521f5;border:1px solid #5d4c6b;color:#ded3e7}
.language-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-block-end:9px;font-size:11px;color:#d4c1e2}
.language-heading>span{letter-spacing:.06em}
.language-heading output{font-size:11px;color:#cfb0e8}
.language-options{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px}
.language-option{min-inline-size:0;min-block-size:57px;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;border:1px solid #65536f;background:#241c2e;color:#e7ddee;padding:7px 4px;line-height:1.3;cursor:pointer;text-decoration:none;text-align:center}
.language-option bdi{font-size:10px;white-space:normal;overflow-wrap:anywhere}
.language-option img{inline-size:24px;block-size:16px;display:block;flex-shrink:0;box-shadow:0 0 0 1px #d1c7df55}
.language-option:hover{background:#3a2947;border-color:#bd93db}
.language-option[aria-current=true]{background:#4c3265;border-color:#dfc0f3;color:#fff}
.language-selected{display:none;position:absolute;inset-inline-end:4px;inset-block-start:2px;color:#e7cef9;font-size:10px}
.language-option[aria-current=true] .language-selected{display:block}
.language-option:focus-visible{outline:2px solid #dfc5f0;outline-offset:3px}
.entry-languages>p{font-size:10px;line-height:1.5;color:#c3b4cd;margin-block-start:9px}
.b3-main{padding-block-start:26px}
@media(max-width:1050px){.entry-languages{inline-size:min(620px,calc(100% - 40px))}.language-options{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:700px){.entry-languages{inline-size:min(350px,calc(100% - 32px));padding:12px;margin-block-start:10px}.language-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.language-option{min-block-size:52px;padding-inline:3px}.language-option:last-child{grid-column:2}.language-option bdi{font-size:10px}.language-heading{gap:4px 10px;font-size:10px}.language-heading output{font-size:10px}.b3-main{padding-block-start:22px}}
@media(max-width:359px){.entry-languages{inline-size:calc(100% - 24px);padding:10px}.language-option bdi{font-size:9px}}

/* Product bindings: unavailable languages stay legible and non-interactive. */
.language-option:disabled,.language-option[aria-disabled=true]{background:#1b1821;border-color:#4b4055;color:#b9aec3;cursor:not-allowed;opacity:1}
.language-option small,.language-option .language-pending{font-size:9px;line-height:1.35;color:#b9aec3;white-space:normal;overflow-wrap:anywhere}
.entry-notice ul,.entry-errors{margin:0;padding-inline-start:1.35em}
.entry-notice li+li,.entry-errors li+li{margin-block-start:5px}
.entry-field,.entry-check,.entry-fineprint,.entry-footer{overflow-wrap:anywhere}
.entry-check>span{min-inline-size:0}
a.rs-button{text-decoration:none}

/* Width is the native 0..100 progress value, never a fixed preview percentage. */
progress[data-strength-meter]{--strength-color:#d798a5;appearance:none;display:block;inline-size:100%;block-size:5px;border:1px solid #655471;border-radius:0;overflow:hidden;background:#15131e;color:var(--strength-color)}
progress[data-strength-meter][data-strength=low]{--strength-color:#d798a5}
progress[data-strength-meter][data-strength=medium]{--strength-color:#dec19d}
progress[data-strength-meter][data-strength=high]{--strength-color:#a6cabb}
progress[data-strength-meter]::-webkit-progress-bar{background:#15131e}
progress[data-strength-meter]::-webkit-progress-value{background:var(--strength-color)}
progress[data-strength-meter]::-moz-progress-bar{background:var(--strength-color)}

/* Keep the login form named without a second visible heading beside it. */
.entry-visually-hidden{position:absolute!important;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* RS-START-INTEGRATION-01: approved start/lobby v004 only; game/wiki stay outside this scope. */
html body[data-start-entry]{--rs-bg:#0b0c18;--rs-surface:#242331;--rs-surface-raised:#302c3f;--rs-input:#141522;--rs-text:#eeedf5;--rs-muted:#c0bacf;--rs-line:#5a506e;--entry-soft:#3d374e;--rs-accent:#d7b5f4;--rs-primary:#67478e;--entry-button-hover:#7a54a5;--rs-focus:#f0d1ff;--rs-success:#acd7c4;--rs-error:#f0b0bb;--entry-hue:0deg;--entry-saturation:.82;--entry-brightness:.72;--entry-cut:16px;background:var(--rs-bg);color:var(--rs-text);font:15px/1.55 'Segoe UI',Tahoma,Arial,sans-serif}
html[data-skin=dark] body[data-start-entry]{--rs-bg:#070b15;--rs-surface:#0c1721;--rs-surface-raised:#101e2a;--rs-input:#070f18;--rs-text:#dce7ee;--rs-muted:#a4bac6;--rs-line:#416275;--entry-soft:#213746;--rs-accent:#7dcbd7;--rs-primary:#284c60;--entry-button-hover:#365e70;--rs-focus:#aff4ff;--entry-hue:-68deg;--entry-saturation:.55;--entry-brightness:.6}
html[data-skin=classic] body[data-start-entry]{--rs-bg:#0b1830;--rs-surface:#344767;--rs-surface-raised:#2e405f;--rs-input:#172a46;--rs-text:#edf2fa;--rs-muted:#c6d5e8;--rs-line:#7491b7;--entry-soft:#465e80;--rs-accent:#b8dcff;--rs-primary:#355477;--entry-button-hover:#46688e;--rs-focus:#e1f1ff;--entry-hue:-25deg;--entry-saturation:.55;--entry-brightness:.68}
html body[data-start-entry] .b3-main{inline-size:min(1200px,100%);margin-inline:auto;padding:28px 28px 60px;gap:60px;align-content:start}
html body[data-start-entry] .b3-card{inline-size:min(510px,100%);background:var(--rs-line);--rs-corner-cut:var(--entry-cut);filter:drop-shadow(0 24px 40px #03030b80)}
html body[data-start-entry] .b3-card>.rs-surface{display:block;padding:28px 40px 29px;background:linear-gradient(150deg,var(--rs-surface-raised),var(--rs-surface) 50%);--rs-corner-cut:calc(var(--entry-cut) - .6px);color:var(--rs-text)}
html body[data-start-entry] .b3-logo{display:block;inline-size:220px;max-inline-size:100%;block-size:auto;aspect-ratio:1;margin:0 auto 9px;object-fit:contain}
html body[data-start-entry] .b3-alpha{display:table;margin:0 auto 24px;padding:6px 15px;border-block:1px solid var(--entry-soft);color:var(--rs-accent);font-size:11px;letter-spacing:.15em}
html body[data-start-entry] .b3-card h1{font-weight:550}
html body[data-start-entry] .entry-advice{font-size:13px;line-height:1.6;color:var(--rs-muted);margin-block:0 24px}
html body[data-start-entry] .entry-form{gap:17px}
html body[data-start-entry] :is(input,select){background:var(--rs-input);color:var(--rs-text);border-color:var(--rs-line)}
html body[data-start-entry] .entry-field>span{color:var(--rs-text)}
html body[data-start-entry] .rs-button{background:linear-gradient(130deg,var(--entry-button-hover),var(--rs-primary));border:1px solid var(--rs-accent);border-radius:1px;color:var(--rs-text);font-size:14px;line-height:1.4;box-shadow:none;clip-path:none;text-decoration:none}
html body[data-start-entry] .rs-button.secondary{background:var(--rs-input);border-color:var(--rs-line);font-weight:500;box-shadow:none}
html body[data-start-entry] .rs-button:hover{background:var(--entry-button-hover)}
html body[data-start-entry] .rs-button:disabled{opacity:.6;cursor:not-allowed}
html body[data-start-entry] :is(button,a,input,select,summary):focus-visible{outline:3px solid var(--rs-focus);outline-offset:4px}
html body[data-start-entry] .entry-links{grid-template-columns:1fr 1fr;gap:18px;font-size:12px;margin-block-start:17px}
html body[data-start-entry] .entry-fineprint{font-size:12px;color:var(--rs-muted);margin-block-start:22px}
html body[data-start-entry] .start-gallery-link{margin-block:24px 0;font-size:13px}
html body[data-start-entry] .entry-languages{inline-size:min(1200px,100%);padding:20px 28px 10px;margin-inline:auto;border:0;background:none}
[data-start-entry] .language-heading{justify-content:center;margin-block-end:8px}
html body[data-start-entry] .language-options{grid-template-columns:repeat(10,minmax(0,1fr));gap:7px}
html body[data-start-entry] .language-option{min-block-size:56px;padding:7px 3px;gap:5px;background:#10131fe6;color:var(--rs-muted);border:1px solid var(--entry-soft)}
html body[data-start-entry] .language-option:last-child{grid-column:auto}
html body[data-start-entry] .language-option[aria-current=true]{color:var(--rs-text);border-color:var(--rs-accent);background:var(--rs-surface-raised)}
[data-start-entry] .language-scope{font-size:11px;text-align:center;margin-block-start:10px}
html body[data-start-entry] .entry-footer{inline-size:min(1200px,100%);padding:28px;margin-inline:auto;color:var(--rs-muted);border-block-start:1px solid var(--entry-soft)}
[data-start-entry] .public-voting{padding:25px;border:1px solid var(--rs-line);background:var(--rs-surface);margin-block-end:36px}
[data-start-entry] .public-vote-row{margin-block-start:22px}
@media(max-width:1000px){html body[data-start-entry] .language-options{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:650px){html body[data-start-entry]{--entry-cut:14px}html body[data-start-entry] .b3-main{padding:24px 18px 40px;gap:36px}html body[data-start-entry] .b3-card>.rs-surface{padding:24px 25px 25px}html body[data-start-entry] .b3-logo{inline-size:180px}html body[data-start-entry] .entry-languages{padding:16px 18px 0}html body[data-start-entry] .language-options{gap:5px}html body[data-start-entry] .language-option{min-block-size:65px;padding:6px 2px}html body[data-start-entry] .language-option bdi{font-size:10px;overflow-wrap:normal}html body[data-start-entry] .entry-footer{padding:28px 18px 25px}[data-start-entry] .public-voting{padding:22px 16px}}
@media(max-width:359px){html body[data-start-entry] .b3-main{padding-inline:12px}html body[data-start-entry] .b3-card>.rs-surface{padding-inline:18px}html body[data-start-entry] .entry-languages{padding-inline:12px}html body[data-start-entry] .entry-links{grid-template-columns:1fr}}

/* Fit the square approved mark into the compact form without changing its ratio. */
html body[data-start-entry]:not(.entry-lobby) .b3-logo{inline-size:180px}
html body[data-start-entry]:not(.entry-lobby) .b3-alpha{margin-block-end:16px}
html body[data-start-entry]:not(.entry-lobby) .entry-advice{margin-block-end:16px;text-align:center}
html body[data-start-entry]:not(.entry-lobby) .entry-fineprint{margin-block-start:12px}
html body[data-start-entry]:not(.entry-lobby) .start-gallery-link{margin-block-start:12px}
@media(max-width:650px){html body[data-start-entry]:not(.entry-lobby) .b3-logo{inline-size:160px}}

/* Login only: share the language tiles' available width and keep the compact mark.
   At 820px and below the existing stacked account-entry layout remains in use. */
@media(min-width:821px){
 html body[data-start-entry].entry-login-wide .b3-card{inline-size:100%}
 html body[data-start-entry].entry-login-wide .b3-card>.rs-surface{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center}
}

.start-beta-announcement{inline-size:min(1144px,calc(100% - 56px));margin:18px auto 0;padding:10px 14px;border:1px solid var(--rs-line);background:var(--rs-input);color:var(--rs-text);text-align:center;font-size:15px;line-height:1.7}
.start-beta-announcement>span{display:inline-block;max-inline-size:100%;vertical-align:middle}
.start-beta-announcement>span[aria-hidden]{margin-inline:5px;color:var(--rs-muted)}
.start-beta-announcement strong{color:var(--rs-accent)}
.start-beta-announcement bdi{white-space:nowrap}
@media(max-width:650px){.start-beta-announcement{inline-size:calc(100% - 36px);font-size:14px;padding:9px 10px}.start-beta-announcement>span[aria-hidden]{margin-inline:2px}}
@media(max-width:359px){.start-beta-announcement{inline-size:calc(100% - 24px)}}
