/* Account flows and narrow-screen constraints shared by public/admin pages. */
.password-generator{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0 18px;min-width:0}
.password-generator button{white-space:normal;line-height:1.5;min-height:44px}
.password-generator [role=status]{font-size:13px;line-height:1.6;color:#cabb9b;overflow-wrap:anywhere}
.registration-beta-notice{border-color:#806735;background:rgba(174,131,48,.09)}
.game-access-notice>div,.account-auth-card,.account-seal-fields{min-width:0}
.game-access-notice p,.account-auth-card p,.account-auth-card strong{overflow-wrap:anywhere}
.account-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px}
.account-detail-grid .rp-card,.account-facts dd{min-width:0;overflow-wrap:anywhere}
.account-facts{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 18px;font-size:13px;line-height:1.65}
.account-facts dt{color:#8f989e}.account-facts dd{margin:0}
.account-actions,.account-character-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.account-row-kind{display:block;color:#899299;margin-top:5px;font-size:11px}
#account-access-form label,#game-policy-form label{display:grid;gap:7px;font-size:13px}
#account-access-form textarea,#game-policy-form input{box-sizing:border-box;width:100%;min-width:0;background:#101215;border:1px solid #3c4249;border-radius:4px;color:#e6e6e6;padding:11px}
:is(#registration-controls,#game-access-controls) .rp-setting{align-items:flex-start;gap:20px;flex-wrap:wrap}
:is(#registration-controls,#game-access-controls) .rp-setting>div:first-child{flex:1 1 250px;min-width:0}
#game-policy-form{flex:1 1 280px;max-width:100%}
.rp-main,.rp-content,.rp-view,.rp-card,.gc-body,.rp-overview-grid>*{min-width:0}
.rp-table-scroll,.rp-table-wrap,.gc-table{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.rp-topbar .rp-crumb{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rp-topbar .rp-account{flex-shrink:0}
.profile-card>div{min-width:0}.profile-card h1,.profile-card p{overflow-wrap:anywhere}
@media(max-width:1024px){
 .account-detail-grid{grid-template-columns:1fr}
 .account-actions>.rp-button,.account-character-links>.rp-button{min-height:44px;white-space:normal;text-align:center}
 .account-auth-card button,.account-auth-card .player-primary,.account-auth-card .player-secondary{white-space:normal;max-width:100%;box-sizing:border-box;line-height:1.5}
 input:not([type=checkbox]):not([type=radio]):not([type=hidden]),textarea,select{font-size:16px!important;min-width:0;max-width:100%;box-sizing:border-box}
 fieldset{min-inline-size:0}
 .rp-toast{max-width:calc(100vw - 28px);box-sizing:border-box;overflow-wrap:anywhere}
 dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);box-sizing:border-box;overflow-y:auto}
}
@media(max-width:540px){
 .profile-card{flex-direction:column;align-items:flex-start;gap:18px}
 .profile-card h1{font-size:28px}
 .rp-topbar .rp-account>div{display:none}
 .rp-setting .account-actions{width:100%}
 .account-facts{grid-template-columns:1fr;gap:4px}.account-facts dd{margin-bottom:10px}
 .rp-heading>div{min-width:0}.rp-heading h1{overflow-wrap:anywhere}
}
.profile-reply,.profile-reply p,.profile-reply strong,.forum-box,.thread-body{overflow-wrap:anywhere}
.forum-layout>div,.forum-layout>aside,.forum-toolbar>div{min-width:0}
.forum-toolbar{flex-wrap:wrap}
@media(max-width:1100px){.player-main .forum-layout{grid-template-columns:minmax(0,1fr)}}
.rp-table-scroll,.rp-table-wrap{position:relative}
.password-generator button{border:1px solid #79623d;background:#29251f;color:#ead3a9;border-radius:4px;padding:11px 15px;font-family:inherit;font-size:13px;font-weight:600;line-height:1.5;cursor:pointer}
.password-generator button:hover{background:#393024;border-color:#b39259}
.password-generator button:focus-visible{outline:2px solid #edc580;outline-offset:3px}
#unified-account-detail>.rp-card,#unified-account-detail .account-detail-grid>.rp-card{padding:22px;margin-bottom:20px}
#unified-account-detail .account-detail-grid>.rp-card{margin-bottom:0}
#unified-account-detail .rp-card h2{margin:0 0 18px;font-size:18px}
#unified-account-detail .rp-card p{font-size:13px;line-height:1.7;margin:12px 0}
#unified-account-detail .rp-card p:last-child{margin-bottom:0}

/* Header application links remain paired on narrow screens. */
body:not(.admin-page) .site-header .header-applications{display:flex;align-items:center;gap:10px;flex:none}
body:not(.admin-page) .site-header .header-applications .beta-nav{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;box-sizing:border-box}
body:not(.admin-page) .site-header .header-applications .publisher-nav{color:#f1c7d7;border-color:#9b697e;background:linear-gradient(#4c3440,#30242c);box-shadow:inset 0 1px #efc3d51a}
body:not(.admin-page) .site-header .header-applications .publisher-nav:hover{background:#583d49;border-color:#c18ca2;color:#ffe1ec}
body:not(.admin-page) .site-header .header-applications a:focus-visible{outline:2px solid #edbfd2;outline-offset:3px}
@media(max-width:760px){body:not(.admin-page) .site-header .header-applications{order:5;flex:1 0 100%;width:100%;gap:10px}body:not(.admin-page) .site-header .header-applications .beta-nav{flex:1;min-width:0;padding:10px 6px;font-size:10px;white-space:normal;text-align:center}}
/* Password values stay in their original inputs; the eye only changes display. */
.secret-input{display:block;position:relative;width:100%;min-width:0}
.secret-input input{width:100%;box-sizing:border-box;padding-right:52px!important}
.secret-input .secret-toggle{position:absolute;right:1px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:0;margin:0;padding:10px;border:0;border-radius:4px;background:transparent;color:#c5b58e;cursor:pointer;box-shadow:none}
.secret-input .secret-toggle:hover{background:#ffffff09;color:#f0d6a4}
.secret-input .secret-toggle:focus-visible{outline:2px solid #d4b57b;outline-offset:-4px}
.secret-toggle svg{display:block;width:21px;height:21px;pointer-events:none}

/* Spacious public login and registration, scoped away from administrator forms. */
.account-entry{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);width:100%;max-width:1180px;margin:16px auto 50px;background:#181814;border:1px solid #51432d;border-top:2px solid #a98c56;align-items:start}
.account-entry-art{position:sticky;top:105px;min-height:650px;overflow:hidden;background:#121716;align-self:start}
.account-entry-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:22% 50%;opacity:.83}
.account-entry-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#101411 0%,#101411ed 15%,#10141155 60%,#10141110)}
.account-entry-art-copy{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;min-height:650px;box-sizing:border-box;padding:38px 30px}
.account-entry-art-copy .eyebrow{font-size:10px;letter-spacing:.19em;color:#c7ad78}
.account-entry-art-copy h2{font:600 clamp(27px,2.5vw,38px)/1.25 RonarkDisplay,Georgia,serif;color:#eadbc0;margin:15px 0 18px;text-wrap:balance}
.account-entry-art-copy p{font-size:14px;line-height:1.7;color:#bdbaaa;margin:0}
.account-entry-art-foot{display:flex;align-items:center;gap:12px;border-top:1px solid #8a74454d;margin-top:30px;padding-top:20px;color:#b5aa91;font-size:12px;line-height:1.65}.account-entry-art-foot svg{width:23px;height:23px;flex:none;color:#c2a36a}
.account-entry-content{min-width:0;padding:38px 36px;background:linear-gradient(135deg,#211d16,#171815 75%)}
.account-entry-form{width:100%;margin:0;padding:0;max-width:none;min-width:0}
.account-entry .admin-login.account-auth-card{box-sizing:border-box;width:100%;max-width:none;margin:0;padding:0;background:none;border:0;box-shadow:none;border-radius:0}
.account-entry .account-auth-card h1{font:600 clamp(28px,2.8vw,40px)/1.25 RonarkDisplay,Georgia,serif;margin:14px 0 16px;color:#e5d3b1}
.account-entry .account-auth-card>p{font-size:14px;line-height:1.75;color:#b7ac98;margin:0 0 24px}.account-entry .account-auth-card>.eyebrow{font-size:10px;letter-spacing:.12em}
.account-entry .admin-form{margin-top:24px;gap:20px}.account-entry .admin-form label{font-size:13px;line-height:1.5;color:#d3c6ae;gap:8px;min-width:0}
.account-entry .admin-form input:not([type=checkbox]):not([type=radio]){width:100%;box-sizing:border-box;min-width:0;min-height:48px;background:#0f120f;border:1px solid #584a33;border-radius:3px;color:#eee4d1;padding:12px 14px;font:16px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.account-entry .admin-form input:focus{outline:2px solid #b19560;outline-offset:2px}.account-entry .admin-form small{font-size:11px;line-height:1.6;color:#a99c84}
.account-entry .admin-form .button.primary{width:100%;min-height:49px;justify-content:center}.account-entry .account-auth-card>.text-link{font-size:13px;border-top:1px solid #4a3c27;padding-top:22px;margin-top:26px;line-height:1.7}
.account-entry-register #auth-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px}.account-entry-register #auth-form>label:nth-of-type(3),.account-entry-register #auth-form>:not(label){grid-column:1/-1}
.account-entry .account-seal-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:18px 16px;background:#11140f}.account-entry .account-seal-fields>p,.account-entry .account-seal-fields>.password-generator{grid-column:1/-1}
.account-entry .password-generator{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:0}.account-entry .password-generator button{font-size:12px;padding:11px 13px}.account-entry .field-note{font-size:11px;line-height:1.65;color:#a99c84;margin:0}
.account-entry .beta-registration-notice{margin:20px 0;font-size:12px}.account-entry .game-access-notice{padding:16px;gap:12px}.account-entry .game-access-notice p{font-size:12px;line-height:1.65}.account-entry .game-access-notice a{font-size:12px}
@media(max-width:1100px){.account-entry{grid-template-columns:minmax(230px,.7fr) minmax(0,1.3fr)}.account-entry-content{padding:30px 24px}.account-entry-art-copy{padding:30px 24px}.account-entry-register #auth-form{grid-template-columns:minmax(0,1fr)}.account-entry-register #auth-form>label{grid-column:1/-1}}
@media(max-width:800px){.account-entry{grid-template-columns:minmax(0,1fr);margin:0 auto 30px}.account-entry-art{position:relative;top:auto;min-height:220px}.account-entry-art-copy{min-height:220px;padding:26px}.account-entry-art>img{object-position:22% 48%}.account-entry-art:after{background:linear-gradient(90deg,#101411e8,#10141150)}.account-entry-art-copy h2{font-size:28px;max-width:350px;margin:10px 0}.account-entry-art-copy p{font-size:13px}.account-entry-art-foot{display:none}.account-entry-content{padding:28px 24px}.account-entry-register #auth-form{grid-template-columns:repeat(2,minmax(0,1fr))}.account-entry-register #auth-form>label{grid-column:auto}.account-entry-register #auth-form>label:nth-of-type(3){grid-column:1/-1}}
@media(max-width:540px){.account-entry-content{padding:26px 18px}.account-entry-art-copy{padding:22px 18px}.account-entry-art-copy h2{font-size:26px}.account-entry .account-auth-card h1{font-size:29px}.account-entry-register #auth-form,.account-entry .account-seal-fields{grid-template-columns:minmax(0,1fr)}.account-entry-register #auth-form>label{grid-column:1/-1}.account-entry .account-seal-fields{padding:16px 12px}.account-entry .password-generator button{width:100%}}

/* Registration, access policy and character startup are independent controls. */
:is(#registration-controls,#game-access-controls) .registration-guide{padding:24px 28px;background:#c8ab7210;border-bottom:1px solid var(--rp-line,#383d42)}
:is(#registration-controls,#game-access-controls) .registration-guide h2{font-size:18px;margin:8px 0 12px}
:is(#registration-controls,#game-access-controls) .registration-guide p{font-size:13px;line-height:1.75;margin:8px 0 0;color:#b7b9ba}
:is(#registration-controls,#game-access-controls) .registration-guide a{color:#dfc391;text-decoration:underline;text-underline-offset:3px}
:is(#registration-controls,#game-access-controls) .registration-setting{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,310px);gap:30px;align-items:start}
:is(#registration-controls,#game-access-controls) .registration-setting h2{margin:8px 0 12px;font-size:18px}
:is(#registration-controls,#game-access-controls) .registration-setting p{line-height:1.75;margin:8px 0;font-size:13px;max-width:680px}
:is(#registration-controls,#game-access-controls) .registration-state{color:#e6d3ae;border-left:2px solid #ad905c;padding-left:12px;font-weight:600}
:is(#registration-controls,#game-access-controls) .registration-action{min-width:0}
:is(#registration-controls,#game-access-controls) .registration-action .rp-button{width:100%;white-space:normal;text-align:center;justify-content:center;line-height:1.5;min-height:44px}
:is(#registration-controls,#game-access-controls) .registration-action>p{font-size:12px}
:is(#registration-controls,#game-access-controls) .registration-action label{display:grid;gap:8px;font-size:12px}
:is(#registration-controls,#game-access-controls) .registration-action input{min-width:0;width:100%;box-sizing:border-box;font-size:16px}
:is(#registration-controls,#game-access-controls) .registration-action .account-actions{display:grid;gap:10px}
:is(#registration-controls,#game-access-controls) .rp-button[aria-pressed=true]{border-color:#8c7953;background:#af95591a;color:#dcc89f;opacity:1}
:is(#registration-controls,#game-access-controls) .registration-guide-foot{background:none}
@media(max-width:1100px){:is(#registration-controls,#game-access-controls) .registration-setting{grid-template-columns:minmax(0,1fr);gap:16px}:is(#registration-controls,#game-access-controls) .registration-action{max-width:440px;width:100%}}
@media(max-width:540px){:is(#registration-controls,#game-access-controls) .registration-guide{padding:22px}:is(#registration-controls,#game-access-controls) .registration-setting p{font-size:12px}}
