:root{color-scheme:dark;--ink:#ffb0ab;--link:#e0dc64;--blue:#300b16;--olive:#641b2b;--border:#45252a}*{box-sizing:border-box}body{margin:0;background-color:#100709;background-image:repeating-linear-gradient(112deg,transparent 0 8px,#2a111780 10px,#0a0406 13px,transparent 20px),repeating-linear-gradient(19deg,#35111a50 0 2px,transparent 3px 16px);color:var(--ink);font:18px/1.45 Georgia,'Times New Roman',serif;min-height:100vh}a{color:var(--link);text-underline-offset:3px}a:hover{color:#fff4a1}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #f8ef8d;outline-offset:4px}.site{max-width:920px;margin:28px auto;padding:0 24px}.banner{background:linear-gradient(115deg,#16152c,#2d2a46 54%,#18182b);border:1px solid #52516b;padding:17px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px;color:#c6c5ae;margin-bottom:24px;box-shadow:0 3px 12px #000}.banner .banner-title{font-size:36px;font-weight:bold;letter-spacing:3px;font-style:normal;color:#ddd778}.banner span{font-size:16px;font-style:italic}.realm-list{margin:12px 0 24px;padding-left:24px;list-style:disc}.realm-list li{color:#eee;margin:0 0 36px;padding-left:4px}.realm-list p{font-size:17px;color:#b6b7aa;margin:6px 0;max-width:650px}.realm-heading{font-size:21px}.realm-heading>a{font-weight:bold}.realm-heading span{font-size:18px}.realm-list .realm-character{font-size:15px;margin-top:11px}.realm-list .muted,.realm-list .reset-note{font-size:14px;color:#959987}.lobby-note{font-size:15px;color:#bbbba7;border-top:1px solid #323526;padding-top:20px}.realm-strip{font-size:14px;color:#c1c4a8;margin:0 0 20px;border-bottom:1px solid #613541;padding-bottom:10px}h1{font-weight:normal;text-align:center;font-size:30px;color:#e7e7da;margin:20px 0}h2{font-weight:normal;color:#dddca5;font-size:22px}h3{font-size:18px;font-weight:normal}p{overflow-wrap:anywhere}main{min-width:0}main>p,.return,.status-title{text-align:center}.town-heading{background:var(--blue);border:1px solid #34394d;padding:8px;font-size:44px;margin:0;font-weight:bold}.town-menu{display:grid;grid-template-columns:1fr 1fr;background:#370e19;border:1px solid #333e2b}.town-menu div{padding:16px 18px;border:1px solid #48212a;font-size:22px}.town-menu a{margin-left:10px}.town-footer{background:var(--blue);display:flex;justify-content:space-between;gap:16px;padding:10px;color:#ddd;border:1px solid #34394d;font:14px/1.4 Arial,sans-serif}.stats{margin:0 auto 25px}.stats th{font-weight:normal;text-align:left;background:#421221;color:#ffd2b5}.stats td{background:#200b13;text-align:right}.stats th,.stats td{width:25%}table{border-collapse:collapse;width:100%;margin:14px 0;color:var(--ink);background:#370e19;font:16px/1.4 Arial,sans-serif}th,td{border:2px solid #542631;padding:9px 10px;overflow-wrap:anywhere}thead{background:var(--blue)}thead th{font-weight:normal;text-align:left;color:var(--ink)}td.amount{text-align:right;max-width:280px;word-break:break-all}.table-scroll{overflow-x:auto}.table-scroll table{min-width:540px}.stats td{word-break:break-word}.action-form{margin:20px auto;max-width:440px;text-align:center}.action-form label,.character-form label{display:block;text-align:left;margin:14px 0;color:var(--ink)}input,select,textarea{font:17px/1.4 Arial,sans-serif;display:block;width:100%;background:#160910;color:#ffe7df;border:1px solid #b85866;padding:9px;border-radius:0;margin-top:7px}textarea{resize:vertical;min-height:130px}input[type=hidden]{display:none}button{font:17px/1.3 Arial,sans-serif;background:linear-gradient(#4b4b51,#25252c 48%,#090909);border:1px solid #999;color:#f7f7ef;padding:12px 22px;min-height:44px;cursor:pointer;box-shadow:inset 0 1px 1px #aaa3}button:hover{border-color:#e2dd75}button:disabled{opacity:.48;cursor:not-allowed}.character-form{max-width:420px;margin:25px auto}.combat-actions{margin:35px auto;text-align:center}.combat-actions .action-form{margin:18px auto}.combat-actions button{min-width:190px}.monster{font-size:23px}.notice{border-top:1px solid #a75163;border-bottom:1px solid #a75163;background:#32101c;padding:18px;text-align:center;margin:20px 0;line-height:1.8}.error{color:#ffb3a3;border:1px solid #9d4433;padding:14px;background:#270e09;text-align:center}.return{margin:35px 0}table .action-form{margin:0}table button{font-size:14px;padding:6px 18px;min-height:36px}.bank-forms{display:grid;grid-template-columns:1fr 1fr;gap:22px}.bank-forms .action-form{width:100%}.link-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#36101c;padding:25px 40px}.destinations{text-align:center}.destinations dt{font-size:23px;margin:24px 0 4px}.destinations dd{margin:0 0 25px}.message,.news-entry{border-bottom:1px solid #653541;padding:12px 0}.message p{white-space:normal}.message time,.news-entry time{font-size:13px;color:#b6ba9f}.archive{border-bottom:1px solid #555b39;margin-bottom:40px}.site-foot{text-align:center;color:#9c9e89;font-size:12px;margin:30px 0;padding:0 20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:760px){.site{display:block;padding:0 14px;margin:14px auto}.banner{padding:14px 12px;display:block;text-align:center;margin-bottom:22px}.banner .banner-title{font-size:30px}.banner span{display:block;font-size:14px;margin-top:5px}.realm-list{padding-left:22px}.realm-list li{margin-bottom:30px}.realm-heading{font-size:20px}.realm-heading span{font-size:16px}.realm-list p{font-size:16px}.town-heading{font-size:36px}.town-menu div{font-size:17px;padding:14px 8px}.town-menu a{margin-left:4px}.town-footer{font-size:11px}.stats{font-size:13px}.stats th,.stats td{padding:7px 4px}.bank-forms{display:block}.stats td{overflow-wrap:anywhere}h1{font-size:26px}.link-list{padding-left:30px;font-size:16px}.realm-strip{font-size:12px}.notice{font-size:16px}}

.closed-realm{display:block;color:#b497a0;padding:6px 8px}.realm-list .closed-realm{opacity:.8}meter{width:min(100%,360px);height:22px;accent-color:#d95365}.notice{color:#ffd6cb}.banner{background:linear-gradient(115deg,#260c18,#52182c 54%,#210b14);border-color:#8b3a50}.banner span{color:#f1c7bc}

.lobby-account{border-top:1px solid #613541;margin-top:25px;padding-top:8px;font-size:15px}.lobby-account h2{font-size:18px}

@font-face{font-family:EverboundBlackletter;src:url("fonts/PirataOne-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}.town-heading.town-title{font-family:EverboundBlackletter,"Old English Text MT",Georgia,serif;font-size:clamp(44px,5.5vw,64px);font-weight:400;line-height:1.2;letter-spacing:.02em;padding:14px 12px}

.ranking-rules{font-size:15px;border-top:1px solid #613541;margin:24px 0;padding:14px 0}.ranking-rules summary{color:var(--link);cursor:pointer}.your-ranking td{background:#512130}.your-position{color:#ffe0a2}

.rankings-table{min-width:720px}.rankings-table th,.rankings-table td{white-space:nowrap;overflow-wrap:normal}.rankings-table .amount{white-space:normal;overflow-wrap:anywhere;min-width:100px}.rankings-table .ranking-members{white-space:normal;min-width:220px;max-width:320px;overflow-wrap:anywhere}

.courier-notice{text-align:center;border-top:1px solid #a75163;border-bottom:1px solid #a75163;padding:18px 14px;margin:24px 0;background:#250b14}.courier-notice h2{margin:0 0 16px;font-size:24px;color:#ffe1d6}.courier-notice article+article{border-top:1px solid #613541;padding-top:18px;margin-top:20px}.courier-body{white-space:normal;overflow-wrap:anywhere;font-size:19px;color:#ffe4dc;margin:20px 0}.courier-reply,.courier-mailbox{font-size:15px}.courier-notice a{font-weight:bold}

.table-scroll .shop-table{min-width:760px}.table-scroll .spell-table{min-width:680px}.shop-table th,.spell-table th{white-space:nowrap}.shop-table td:first-child,.spell-table td:first-child{min-width:170px}.upgrade-value{color:#ffe6a1}.muted-value{color:#b6a3a9}
.shop-note{font-size:15px}.shop-filter{display:flex;align-items:flex-end;gap:12px;max-width:600px;margin:14px auto}.shop-filter label{flex:1;min-width:0;margin:0}.shop-filter button{flex-shrink:0}.shop-filter select{font-size:15px}.shop-filter button{padding:10px 14px;font-size:15px}

.lobby-intro{max-width:720px;margin:0 0 32px}.lobby-intro h2{font-size:26px;margin:0 0 10px;color:#ffe1ce}.lobby-intro p{margin:0;color:#dec3bc;font-size:18px}.lobby-guide{margin:30px 0;background:#200b13e8;border:1px solid #613541;padding:22px 24px;color:#e7cbc5;font-size:16px;line-height:1.65}.lobby-guide h2{margin:0 0 14px;color:#f0dfb4;font-size:25px}.lobby-guide h3{font-size:20px;color:#e0dc90;margin:20px 0 10px}.lobby-guide p{margin:0 0 15px}.lobby-guide-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:30px}.lobby-guide dt{font-weight:bold;color:#ffd2b5}.lobby-guide dd{margin:2px 0 13px}.lobby-guide ol{padding-left:22px}.lobby-guide li{margin-bottom:9px}.lobby-guide .lobby-guide-note{border-top:1px solid #613541;padding-top:16px;font-size:14px;color:#c9b5af;margin-bottom:0}@media(max-width:760px){.lobby-guide{padding:18px 16px}.lobby-guide-grid{grid-template-columns:1fr;gap:0}.lobby-guide h2{font-size:23px}.lobby-intro h2{font-size:24px}.lobby-intro p{font-size:17px}}

/* Ashenmere: direct destinations, grouped by district rather than paired rows. */
.town-heading.ashenmere-title{background:transparent;border:0;border-bottom:1px solid #8b3a50;padding:5px 12px 13px;font-size:clamp(46px,7vw,68px);color:#f2dfac}
.town-caption{text-align:center;margin:9px 0 25px;color:#c6aaa3;font-size:15px;letter-spacing:.06em}
.town-districts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}
.town-district{min-width:0;padding:18px 20px;background:linear-gradient(135deg,#35111eec,#1c0911f5);border:1px solid #713247;border-top:3px solid #a55e64;box-shadow:0 3px 12px #0005}
.town-district h2{margin:0 0 11px;color:#efdaa6;font-size:23px;line-height:1.25}
.district-note{font-size:15px;color:#c9b4ad;margin:0 0 10px}
.district-links{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 14px}
.district-links li{min-width:0;margin:0}
.district-links a{display:flex;align-items:center;min-height:44px;height:100%;padding:9px 0;border-bottom:1px solid #63303e;font-size:17px;line-height:1.35;overflow-wrap:anywhere}
.district-links a:hover{background:#60304435}
.district-inn .district-links{grid-template-columns:1fr}
.district-affairs{grid-column:1/-1}
.district-affairs .district-links{grid-template-columns:repeat(3,minmax(0,1fr))}
.town-departure{text-align:center;margin:20px 0 12px}
.town-departure a{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid #713247;background:#250c16}
.town-footer{flex-wrap:wrap;font-size:13px;background:#210b14;border-color:#613541;padding:12px 14px}
input,select,textarea{min-width:0;max-width:100%}
.table-scroll{max-width:100%;overscroll-behavior-x:contain}
@media(max-width:640px){
 .town-districts{grid-template-columns:1fr;gap:14px}
 .town-district{padding:16px}
 .town-district h2{font-size:22px}
 .district-affairs .district-links{grid-template-columns:repeat(2,minmax(0,1fr))}
 .town-caption{font-size:14px;letter-spacing:.025em;margin-bottom:21px}
 .town-footer{display:block;text-align:center;font-size:12px;line-height:1.6}
 .town-footer time{display:block;margin-top:4px}
 .town-menu{grid-template-columns:1fr}
 .town-menu div{padding:0;min-width:0}
 .town-menu a{display:inline-flex;align-items:center;min-height:48px;margin-left:4px;padding:10px 6px;font-size:17px}
 .shop-filter{flex-direction:column;align-items:stretch;gap:8px}
 .shop-filter button{width:100%;min-height:44px}
 .lobby-account a,.lobby-note a,.return a{display:inline-flex;align-items:center;min-height:44px}
}
@media(max-width:380px){
 .district-links,.district-affairs .district-links{grid-template-columns:1fr}
 .banner .banner-title{font-size:26px;letter-spacing:2px}
 .town-district{padding:14px}
 .realm-heading span{display:block;margin-top:4px}
}

@media(max-width:520px){
 .stats,.stats tbody{display:block;width:100%}
 .stats tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .stats th,.stats td{display:flex;align-items:center;width:auto;min-width:0;min-height:42px;padding:9px 10px;font-size:15px;border-width:1px}
 .stats td{justify-content:flex-end;overflow-wrap:anywhere}
}

h1,h2,h3,.realm-strip{overflow-wrap:anywhere}
@media(max-width:640px){table button{min-height:44px}}

/* Realm choices share Ashenmere's panel treatment and stay public for visitors. */
.realm-page-title{font-family:EverboundBlackletter,"Old English Text MT",Georgia,serif;font-size:clamp(38px,5.5vw,54px);line-height:1.2;margin:22px 0 10px;color:#f2dfac}
.realm-lead{max-width:660px;margin:0 auto 28px;color:#dec3bc;font-size:17px;text-align:center}
.realm-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0 28px}
.realm-card{min-width:0;padding:20px;background:linear-gradient(135deg,#35111eec,#1c0911f5);border:1px solid #713247;border-top:3px solid #a55e64;display:flex;flex-direction:column}
.realm-card-open{grid-column:1/-1;border-color:#a55e64}
.realm-card-top{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px}
.realm-card-top h2{margin:0;font-size:23px;line-height:1.3;color:#efdaa6;flex:1;min-width:160px}
.realm-card-top h2 a{text-decoration-thickness:1px}
.realm-badge{display:inline-flex;align-items:center;min-height:28px;padding:3px 9px;font:12px/1.3 Arial,sans-serif;letter-spacing:.04em;border:1px solid;white-space:nowrap}
.realm-badge-open{color:#ffe4a0;border-color:#a67a45;background:#4b291b}
.realm-badge-closed{color:#cbb9b1;border-color:#70545b;background:#28151d}
.realm-description{font-size:16px;line-height:1.6;color:#d8beb7;margin:15px 0 20px}
.realm-card-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-top:auto}
.realm-card .realm-character{font-size:15px;color:#e8cfc2;margin:0;flex:1;min-width:180px;overflow-wrap:anywhere}
.realm-actions{display:flex;align-items:center;gap:17px;flex-wrap:wrap}
.realm-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:16px}
.realm-actions .realm-enter{background:linear-gradient(#71412f,#49251f);border:1px solid #b38657;color:#fff0bc;padding:10px 20px;font-weight:bold;text-align:center;text-decoration:none;min-width:140px}
.realm-actions .realm-enter:hover{background:#784b34;border-color:#e0bb77}
.realm-card-closed{border-top-color:#70545b;background:linear-gradient(135deg,#261019ed,#190b12f5)}
.realm-card-closed .realm-description{color:#c4aca5}
.realm-unavailable{margin:auto 0 0;padding-top:4px;font-size:14px;color:#bca29d}
@media(max-width:640px){
 .realm-cards{grid-template-columns:1fr;gap:14px}
 .realm-card{padding:18px 16px}
 .realm-card-top h2{font-size:22px}
 .realm-card-bottom{display:block}
 .realm-card .realm-character{min-width:0;margin-bottom:15px}
 .realm-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px}
 .realm-actions .realm-enter{min-width:0;padding:11px 14px}
 .realm-description{margin-bottom:18px}
}
@media(max-width:380px){
 .realm-card-top{flex-direction:column;gap:9px}
 .realm-card-top h2{min-width:0;font-size:21px}
 .realm-lead{font-size:16px}
}
