/* Night visual audit: accessible entry points and readable article links. */
.mobile-quick-nav{display:none}
#center-content .BoxContent a.papyrus-button{display:inline-block;max-width:100%;white-space:normal;text-align:center;vertical-align:middle;color:#2a1b0b;text-shadow:none;text-decoration:none;min-height:42px;padding:10px 14px;box-sizing:border-box;line-height:1.5}
#center-content .BoxContent a.papyrus-button:hover{color:#1a1006;background:linear-gradient(#fff0cd,#d8b77e)}
#center-content .BoxContent a.papyrus-button:focus-visible{outline:3px solid #badeba;outline-offset:3px}
.repera-welcome{position:relative;overflow:hidden;padding:25px 23px;margin-bottom:14px;border:1px solid #9a7643;border-radius:9px;background:radial-gradient(ellipse at 95% 10%,#315b414d,transparent 60%),linear-gradient(130deg,#21170f,#141c18);box-shadow:0 8px 22px #0005;color:#eddfc5}
.repera-welcome:after{content:"";position:absolute;right:-35px;top:-80px;width:190px;height:190px;border:1px solid #9cc28b38;border-radius:50%;box-shadow:0 0 45px #70ba7030,inset 0 0 32px #70ba7020;pointer-events:none;animation:rift-breathe 6s ease-in-out infinite}
.welcome-kicker{font:700 10px/1.5 Verdana,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#aacaac}
.repera-welcome h1{position:relative;margin:8px 0;font:700 32px/1.2 Georgia,serif;color:#f6d494;z-index:1}
.repera-welcome p{position:relative;max-width:440px;margin:0 0 18px;font:14px/1.7 Verdana,sans-serif;z-index:1}
.welcome-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;position:relative;z-index:1}
.welcome-actions a{display:inline-flex;align-items:center;gap:20px;min-height:42px;box-sizing:border-box;padding:8px 12px;border-radius:5px;color:#dfc49a;text-decoration:none;font:700 12px/1.5 Verdana,sans-serif;transition:background .18s,box-shadow .18s}
.welcome-actions .welcome-play{color:#24170b;background:linear-gradient(#efd59c,#c5a46b);border:1px solid #f0d7a5}
.welcome-actions a:hover{box-shadow:0 0 15px #e6b76040;background-color:#473623}
.welcome-actions a:focus-visible,.mobile-quick-nav a:focus-visible,.news-actions a:focus-visible{outline:3px solid #badeba;outline-offset:3px}
#center-content .BoxContent p a{display:inline;margin:0}
#center-content .news-entry-body .news-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
#center-content .news-entry-body .news-actions a{display:inline-flex;padding:6px 9px;border:1px solid #735534;border-radius:4px;background:#21190f;font-size:11px;line-height:1.6;text-decoration:none}
#center-content .news-entry-body .news-actions a:hover{border-color:#d6ad68;background:#392817}
.news-box .BoxContent{height:auto;max-height:none}
@keyframes rift-breathe{50%{opacity:.5;transform:scale(1.06)}}
@media(max-width:980px){.mobile-quick-nav{display:flex;position:sticky;top:0;z-index:20;gap:4px;justify-content:center;padding:7px;margin:0 9px 12px;background:#1b1712f5;border:1px solid #76542f;border-radius:6px;box-shadow:0 4px 14px #0007}.mobile-quick-nav a{padding:10px 9px;color:#ecd2a1;font:700 11px Verdana,sans-serif;text-decoration:none;border-radius:4px}.mobile-quick-nav a:hover{background:#49311c}.center-column{scroll-margin-top:60px}}
@media(max-width:620px){.repera-welcome{padding:20px 17px}.repera-welcome h1{font-size:28px}.repera-welcome p{font-size:13px}.mobile-quick-nav{gap:0}.mobile-quick-nav a{flex:1;text-align:center;padding:10px 3px}.news-entry-body h2{font-size:17px}}
@media(prefers-reduced-motion:reduce){.repera-welcome:after{animation:none}.welcome-actions a,.left-column .BoxContent a,.right-column .BoxContent a{transition:none}.left-column .BoxContent a:hover,.right-column .BoxContent a:hover{transform:none}}

/* Public profiles share a single layout and never expose private account data. */
.character-page{line-height:1.6;overflow-wrap:anywhere;color:#efdfc3}
.character-page .wiki-back{display:inline-block;margin:0 0 16px;text-decoration:none}
.character-hero{padding:18px;border:1px solid #6e5736;border-radius:7px;background:radial-gradient(ellipse at top right,#31554160,transparent 70%),#201a14}
.character-kicker,.wiki-eyebrow{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#c9bd96;font-weight:700}
.character-hero h1{font:700 clamp(24px,3vw,34px)/1.2 Georgia,serif;margin:9px 0;color:#f7d99e}
.character-hero p{margin:0}
.character-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;white-space:nowrap;color:#c5baa8}
.character-status:before{content:"";width:7px;height:7px;border-radius:50%;background:#978c7b;flex-shrink:0}
.character-status.is-online{color:#a9e3b0}.character-status.is-online:before{background:#80d08d;box-shadow:0 0 7px #80d08d55}
.character-facts{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px 0 22px}
.character-facts>div{padding:12px;border:1px solid #55422f;background:#231c15;border-radius:5px;min-width:0}
.character-facts dt{font-size:11px;color:#c5b493;margin-bottom:3px}
.character-facts dd{margin:0;font-size:17px;font-weight:bold;color:#f5dbab}.character-facts .character-date{font-size:12px;font-weight:normal}
.character-section{margin-top:23px}.character-section h2{font:700 18px/1.4 Georgia,serif;color:#f4d59a;margin:0 0 12px}
.character-count{display:inline-block;border:1px solid #735b39;border-radius:20px;padding:0 7px;font:11px/1.8 Verdana,sans-serif;vertical-align:middle}
.character-account-list{display:grid;gap:8px}
#center-content .BoxContent .character-account-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;margin:0;border:1px solid #705433;border-radius:6px;text-decoration:none;background:#261e16;color:#f2d096;transition:background .15s,border-color .15s}
.character-account-card:hover{background:#35291c!important;border-color:#c69b5b!important}.character-account-card strong,.character-account-card small{display:block}.character-account-card small{font-size:11px;color:#d4c5ac;margin-top:3px}
.character-page a:focus-visible{outline:3px solid #a9d5ad;outline-offset:3px}
.character-empty{border-left:2px solid #80613b;padding:9px 12px;background:#231c16;color:#d4c5ac;font-size:13px}
.character-muted{font-size:12px;color:#c5b493}.character-deaths{list-style:none;padding:0;margin:0}.character-deaths li{padding:11px 0;border-bottom:1px solid #503e2a}.character-deaths time{font-size:11px;color:#c5b493}.character-deaths p{margin:4px 0 0}
.character-gains>div{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #503e2a;font-size:12px}
@media(max-width:380px){.character-hero{padding:12px}.character-account-card{align-items:start!important;flex-direction:column;gap:5px!important}.character-facts>div{padding:9px}}
@media(prefers-reduced-motion:reduce){.character-account-card{transition:none!important}}
/* Tester campaign: scoped to the home page. */
#center-content .welcome-actions a.welcome-play{color:#24170b;text-shadow:none}
.test-signup{scroll-margin-top:75px}.test-signup-form{display:grid;gap:12px}.test-signup-form input[type=text]{box-sizing:border-box;width:100%;min-height:44px;padding:10px;border:1px solid #b39a69;border-radius:5px;background:#161d19;color:#fff;font-size:16px}.test-signup-form small,.test-signup-help{font-size:12px;color:#d5c7ac}.test-public-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px}.test-public-consent input{width:20px;height:20px;flex-shrink:0}.test-signup-button,.test-signup-cancel{cursor:pointer;min-height:44px;padding:10px 16px;border:1px solid #efd49e;border-radius:5px;background:#e7c789;color:#251a0f;font-weight:bold}.test-signup-cancel{margin-top:12px;background:transparent;color:#eddfc5;border-color:#8f7852}.test-signup-notice{padding:12px;border-left:3px solid #8ee4c5;background:#8ee4c510}.test-signup-list{display:flex;gap:8px;flex-wrap:wrap;list-style:none;padding:0}.test-signup-list li{max-width:100%;overflow-wrap:anywhere;padding:7px 12px;border:1px solid #887045;border-radius:20px;background:#1b241e}.test-signup button:focus-visible,.test-signup input:focus-visible{outline:3px solid #a9d5ad;outline-offset:3px}
.tester-campaign{margin:18px 0 24px;padding:24px;border:1px solid #927037;border-radius:8px;background:linear-gradient(135deg,#241c14,#131d20);color:#e7dcc8;line-height:1.65}
.tester-campaign h2{margin:5px 0 14px;color:#f3d59a;font-size:25px;line-height:1.2}
.tester-kicker{color:#87d7bd;font-size:12px;font-weight:700;letter-spacing:1px}
.tester-campaign p{margin:12px 0}.tester-campaign strong{color:#ffe3a6}
.tester-prizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}
.tester-prizes>div{padding:13px 8px;text-align:center;border:1px solid #685332;border-radius:6px;background:#201c18}
.tester-prizes span{display:block;font-size:12px;color:#c9bba1}.tester-prizes strong{display:block;font-size:25px}
.tester-campaign summary{cursor:pointer;color:#8ee4c5;font-weight:700}.tester-campaign ol{padding-left:22px}.tester-campaign li{margin:8px 0}
.ranking-note{font-size:12px;opacity:.8}
@media(max-width:600px){.tester-campaign{padding:16px}.tester-campaign h2{font-size:22px}.tester-prizes{gap:6px}.tester-prizes strong{font-size:21px}.tester-prizes>div{padding:11px 4px}}

/* Visible account actions beside the test signup and on mobile. */
.test-signup-session{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0}.test-signup-session .test-signup-cancel{margin:0}.test-signup-session small{flex-basis:100%;color:#d5c7ac}.mobile-logout{display:flex;margin:0;align-items:center}.mobile-logout button{cursor:pointer;min-height:44px;padding:8px 6px;color:#ecd2a1;font:700 11px Verdana,sans-serif;border:1px solid #76542f;border-radius:4px;background:transparent}.mobile-logout button:hover{background:#49311c}.mobile-logout button:focus-visible{outline:3px solid #badeba;outline-offset:2px}

/* Audit 2026-10-03: clear entry point, readable controls and compact archive. */
.site-header{text-decoration:none}.skip-link{position:fixed;left:12px;top:-100px;z-index:1000;padding:12px;background:#f5daa2;color:#24170b;font-weight:bold}.skip-link:focus{top:12px}
#center-content .welcome-actions a.welcome-play{background:linear-gradient(#f7dc9d,#d2ac62);color:#21170c;border:1px solid #ffe4ac;box-shadow:0 3px 12px #0005;font-size:14px;min-height:48px}
#center-content .welcome-actions a.welcome-download{border:1px solid #aa8750;background:#282218;color:#f7dfb0}
.repera-welcome .welcome-platforms{margin:15px 0 0;font-size:12px;color:#c5cfbb;line-height:1.5}
.start-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 18px}.start-steps a{display:flex;gap:9px;align-items:flex-start;padding:13px 10px;border:1px solid #675034;border-radius:7px;background:#1e1c17;color:#f5d59b;text-decoration:none;font:700 12px/1.5 Verdana,sans-serif}.start-steps b{display:grid;place-items:center;flex:0 0 24px;height:24px;border-radius:50%;background:#b59150;color:#17130e}.start-steps small{display:block;color:#cbbb9e;font-size:11px;font-weight:normal;margin-top:5px}
.test-archive{margin:14px 0;padding:12px 15px;border:1px solid #655436;border-radius:6px;background:#1f1b16;color:#d9cbb2;font-size:12px;line-height:1.7}.test-archive summary{cursor:pointer;min-height:30px;align-content:center}.test-archive a{color:#f5d59b}
a[aria-current=page]{text-decoration:underline;text-underline-offset:4px}button:disabled{cursor:wait;opacity:.65}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #a9d5ad;outline-offset:3px}
#center-content input:not([type=checkbox]):not([type=radio]):not([type=hidden]),#center-content textarea,#center-content select{max-width:100%;box-sizing:border-box;min-height:44px;font-size:16px}
#register-result,#login-response,#route-login-form [role=status]{color:#f3d49b!important;line-height:1.6}
.modal-content{max-height:calc(100dvh - 48px);overflow:auto;box-sizing:border-box}
@media(max-width:620px){.start-steps{grid-template-columns:1fr}.start-steps a{padding:12px}.start-steps small{margin:0}.welcome-actions{gap:9px}.welcome-actions a{justify-content:center}.welcome-actions .welcome-play,.welcome-actions .welcome-download{width:100%}.mobile-quick-nav{flex-wrap:wrap}.mobile-quick-nav a{min-height:40px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.mobile-logout{margin-left:auto}.repera-welcome h1{font-size:29px}}

/* Audit: legible empty states and keyboard-operable dialogs. */
.account-empty { color: #d4dfeb; line-height: 1.6; }
#center-content input.papyrus-input { background:#121b19!important; border:1px solid #9a7b46!important; border-radius:6px; color:#fff1d1!important; width:100%; box-sizing:border-box; padding:11px 12px!important; }
#create-account-form,#route-login-form { display:grid; gap:10px; max-width:520px; margin:0 auto; }
#create-account-form > br,#route-login-form > br { display:none; }
#create-account-form p { margin:0 0 10px; color:#cbd5ce; font-size:13px; line-height:1.55; }
#create-account-form label,#route-login-form label { margin-top:4px; font-weight:600; }
#create-account-form button,#route-login-form button { min-height:46px; margin-top:6px; }
.modal .close { background: transparent; border: 0; color: inherit; cursor: pointer; min-width:44px; min-height:44px; }
#msgModal > div { max-height:calc(100dvh - 40px); overflow:auto; margin:20px auto!important; box-sizing:border-box; }

/* Public rankings and deaths: common desktop/mobile layout. */
.repera-stats-list ol{margin:0;padding-left:21px}
.repera-stats-list li{margin:0 0 11px;padding-left:2px;overflow-wrap:anywhere}
.repera-stats-list li>span,.repera-stats-list small,.repera-stats-list time{display:block;font-size:12px;line-height:1.45}
.repera-stats-note{font-size:12px;line-height:1.5;margin:0 0 12px}
.repera-stats-list a{font-weight:700}
.repera-account-stats{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 0 16px}

.online-table-wrap{max-width:100%;overflow-x:auto}
.repera-online-table{width:100%;border-collapse:collapse;font-size:13px}
.repera-online-table td,.repera-online-table th{padding:9px 10px;text-align:left;border-bottom:1px solid #746349;white-space:nowrap}
.repera-online-table .online-player-name{color:#2a7129;font-weight:700}
.repera-online-table [data-session-seconds]{font-variant-numeric:tabular-nums}
