/* Shared popup skin: cobalt header, ivory parchment, sculpted gold and cyan gems. */
#modal:not([data-presentation=recruit]):not([data-presentation=minimap]){background:#171322a6;backdrop-filter:blur(5px);padding:calc(var(--safe-top) + 24px) calc(var(--safe-right) + 14px) calc(var(--safe-bottom) + 24px) calc(var(--safe-left) + 14px)}
#modal:not([data-presentation=recruit]):not([data-presentation=minimap]) .modal-card{background:none;border:0;padding:0;overflow:visible;max-width:620px;box-shadow:none;width:100%;color:#09112b}
#modal:not([data-presentation=recruit]):not([data-presentation=minimap]) .royal-panel{position:relative;background:radial-gradient(ellipse at 30% 20%,#fffdf1,#f4ead2 68%,#e6d2a9);border:6px solid #e8b348;border-radius:28px;box-shadow:0 0 0 2px #78420c,0 0 0 5px #ffe9a3,inset 0 0 0 2px #fff8d9,inset 0 0 18px #bb761744,0 18px 50px #080414ab;color:#080e26;max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 60px);font-family:Georgia,'Times New Roman',serif;overflow:visible}
#modal:not([data-presentation=recruit]):not([data-presentation=minimap]) .royal-panel:before,#modal:not([data-presentation=recruit]):not([data-presentation=minimap]) .royal-panel:after{content:'';position:absolute;left:50%;transform:translateX(-50%);width:clamp(150px,52%,300px);height:48px;background:url('/web/art/ui/royal-ornament.svg') center/contain no-repeat;pointer-events:none;z-index:4}
#modal:not([data-presentation=recruit]):not([data-presentation=minimap]) .royal-panel:before{top:-28px}
#modal:not([data-presentation=recruit]):not([data-presentation=minimap]) .royal-panel:after{bottom:-27px;transform:translateX(-50%) rotate(180deg)}
#modal:not([data-presentation=recruit]):not([data-presentation=minimap]) .royal-heading{border-radius:21px 21px 10px 10px;min-height:75px;padding:20px 12px 14px 20px;background:radial-gradient(ellipse at 50% -40%,#1856b0,transparent 70%),linear-gradient(110deg,#05245e,#072f78 55%,#02133f);border-bottom:4px solid #dfaa36;box-shadow:inset 0 0 0 2px #082354,inset 0 0 0 4px #e5b65c;flex:none}
#modal:not([data-presentation=recruit]):not([data-presentation=minimap]) .royal-heading h2{font:800 clamp(24px,5vw,40px)/1.1 Georgia,'Times New Roman',serif;color:#fff6d9;letter-spacing:0;text-shadow:0 2px 2px #000;flex:1}
.royal-heading>div{flex:1;min-width:0}.royal-heading>div h2{margin:0}.royal-heading>div>p{color:#fff0c5;margin:5px 0 0;text-align:center;font-size:clamp(12px,2.8vw,19px)}
#modal .royal-heading .close{position:static;border:2px solid #e3b75a;background:#0c2f69;color:#ffdb7a;border-radius:50%;padding:0;min-height:36px;width:36px;height:36px;font:24px Georgia}
#modal:not([data-presentation=recruit]):not([data-presentation=minimap]) .royal-body{padding:18px 21px 24px;line-height:1.45;font-size:16px;overscroll-behavior:contain;min-height:0;border-radius:0 0 22px 22px;scrollbar-color:#c69947 #eee0c2}
#modal:not([data-presentation=recruit]):not([data-presentation=minimap]) .royal-body h3{color:#080e26;font-family:Georgia,'Times New Roman',serif}
#modal:not([data-presentation=recruit]):not([data-presentation=minimap]) .royal-body .muted{color:#66553d}
#modal .royal-body .help{background:#efe0bf;color:#172341;border:1px solid #c9a668}
#modal .royal-body label{color:#222c43}#modal .royal-body input:not([type=range]):not([type=checkbox]):not([type=radio]),#modal .royal-body textarea,#modal .royal-body select{background:#fff9e9;color:#111a31;border:1px solid #bd9652;box-shadow:inset 0 1px 3px #8b632426}
#modal .royal-body button.primary,#modal:not([data-presentation=recruit]) .gold-button{background:linear-gradient(110deg,#ffea9a,#ffcf3f 50%,#efad30);border:3px ridge #edbc58;box-shadow:inset 0 0 0 2px #fff3b7,inset 0 0 0 4px #ca8a20,0 3px 0 #84500d,0 5px 6px #76501430;border-radius:12px;color:#08142f;font-family:Georgia,'Times New Roman',serif;font-weight:800;text-shadow:0 1px #fff3bd}
#modal .royal-body button:not(.royal-button):not(.royal-icon):not(.royal-text):not(.clan-pencil):not(.selected):not(.primary):not(.danger):not(.tab){color:#173258;border-color:#b79554}
.hope-panel .royal-heading{padding-right:12px}.hope-panel .royal-heading .royal-icon{height:34px;min-height:34px;width:34px;border-radius:50%;font-size:22px;padding:0}
.hope-advisor{display:flex;gap:12px;align-items:center;border-bottom:2px solid #c99332;padding:0 0 12px;margin-bottom:12px;font-size:clamp(17px,3.7vw,27px);color:#060b21}
.hope-feather{display:grid;place-items:center;width:49px;height:49px;border:3px ridge #f1c153;border-radius:50%;background:radial-gradient(ellipse at 20% 0,#1050ac,#001c59);box-shadow:0 0 0 1px #794910,inset 0 0 0 2px #133b72;color:#ffe9a3;font:italic 36px Georgia;flex:none}
.hope-panel .royal-body>h3{font-size:clamp(23px,5vw,37px);line-height:1.1;margin:8px 0 14px}
.hope-illustration{position:relative;overflow:hidden;aspect-ratio:908/595;border:3px ridge #dba540;border-radius:12px;box-shadow:0 0 0 1px #e9c16a,0 2px 3px #90601766;margin:0 -6px 8px}
.hope-illustration img{position:absolute;width:112.7753304%;max-width:none;height:auto;left:-6.3876652%;top:0;transform:translateY(-32.7473958%);pointer-events:none;user-select:none}
.hope-dialogue-viewport{height:4.05em;font-size:clamp(18px,3.9vw,28px);line-height:1.35;font-weight:700;overflow:auto;position:relative;padding:0 12px;border:2px ridge #dba540;border-radius:10px;background:#fff7e255;scrollbar-width:none;scroll-behavior:auto;overscroll-behavior:contain}
.hope-dialogue-viewport::-webkit-scrollbar{display:none}.hope-dialogue-text{position:relative}.hope-dialogue-text p{margin:0 0 .7em}.hope-dialogue-text p:last-child{margin-bottom:0}.hope-dialogue-text [data-word]{display:inline}.hope-dialogue-viewport.full-dialogue{height:auto;max-height:40dvh;scrollbar-width:thin}
.hope-reading-controls{display:flex;justify-content:space-between;gap:10px;margin:3px 0 8px}.hope-reading-controls button{min-height:32px;border:0;background:none;text-decoration:underline;font:12px Georgia;padding:4px 6px}
.hope-dialogue [data-dialogue-continue]{font-size:clamp(23px,5vw,35px);min-height:58px}.hope-dialogue .royal-body{padding-top:14px!important}
.hope-track{display:flex;align-items:center;gap:10px;justify-content:space-between;width:100%;padding:7px 10px;border:2px ridge #e6bb5d;border-radius:11px;color:#fff3d0;background:linear-gradient(125deg,#062658,#104885);text-align:left;box-shadow:inset 0 0 0 1px #fff0b53b;margin:3px 0 7px}
.hope-track>.hope-feather{width:32px;height:32px;font-size:26px;border-width:2px}.hope-track>span:nth-child(2){flex:1}.hope-track b{font:bold 17px Georgia;display:block}.hope-track small{display:block;font:11px/1.35 system-ui;color:#e2e9f8}.hope-track>span:last-child{color:#ffd668;font-size:24px}
.hope-objectives{list-style:none;padding:0;margin:14px 0}.hope-objectives li{display:flex;gap:10px;align-items:center;border-bottom:1px solid #cba76c55;padding:8px 0}.hope-objectives li.done{color:#20633c}.hope-objectives li>span{font-size:24px}.hope-rewards{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.hope-rewards>span{display:flex;align-items:center;gap:4px;padding:6px 8px;border:1px solid #cba767;border-radius:8px;background:#fff4d5;font-size:14px}.hope-rewards img{width:25px;height:25px;object-fit:contain}.hope-chapter{text-align:center;color:#766548;font-size:12px}
.server-list{display:grid;gap:9px;margin:16px 0}.server-option{display:flex;gap:12px;align-items:center;padding:13px 10px;border:2px solid #c3a26b;background:#fff9e8;border-radius:10px;cursor:pointer}.server-option:has(input:checked){border-color:#148ece;box-shadow:0 0 0 2px #d4b057;background:#e7f2f2}.server-option>input{width:18px;min-height:18px;height:18px;margin:0;accent-color:#1458a6}.server-option>span{flex:1;min-width:0}.server-option b{display:block}.server-option small{display:block;font:11px/1.5 system-ui;color:#635b4e}.server-option em{font:11px system-ui;color:#146744}.server-option.unavailable{opacity:.6;cursor:default}.server-option.unavailable em{color:#804939}.network-error{color:#9b3229;font-size:14px;white-space:pre-wrap}.network-error:empty{display:none}.transfer-animation{text-align:center;color:#0e77b7;font-size:42px;padding:28px}.transfer-animation span{display:inline-block;animation:ether-travel 3s ease-in-out infinite}@keyframes ether-travel{50%{transform:translateY(-12px);color:#e0a927}}
#play-local.network-start{background:linear-gradient(#ffdb68,#bd811e);color:#0b1c40;border:3px ridge #ffdf76;text-shadow:0 1px #fff;font:bold clamp(22px,5vw,38px) Georgia;opacity:1}
@media(max-height:730px){.hope-dialogue .hope-illustration{max-height:29dvh;aspect-ratio:908/595;width:100%;}.hope-dialogue .royal-body>h3{font-size:24px;margin:5px 0 9px}.hope-dialogue .hope-advisor{padding-bottom:7px;margin-bottom:8px;font-size:18px}.hope-dialogue .hope-feather{height:34px;width:34px;font-size:27px}.hope-dialogue .royal-body{padding:10px 12px 15px!important}.hope-dialogue .royal-heading{padding:14px 9px 9px!important;min-height:65px!important}.hope-dialogue .royal-heading h2{font-size:28px!important}.hope-dialogue .hope-dialogue-viewport{font-size:19px}.hope-dialogue [data-dialogue-continue]{font-size:24px;min-height:46px}}
@media(prefers-reduced-motion:reduce){.transfer-animation span{animation:none}}
/* Neutral controls remain legible on parchment, including settings tabs. */
#modal .royal-body button:not(.royal-button):not(.royal-icon):not(.royal-text):not(.clan-pencil):not(.primary):not(.danger){background:#f5e6c5;color:#172c50;border-color:#b79554}
#modal .royal-body button[aria-selected=true],#modal .royal-body button.active{background:#0b3474!important;color:#fff1c6!important;border-color:#e6b449!important}
#modal .royal-body .player-public-id{background:#e9dec3;color:#4e4a40;border-color:#bd9652}
#modal .royal-body .eyebrow{color:#786133}
.hope-dialogue-viewport{height:calc(4.05em + 4px)}
.hope-feather{font-size:0;background-image:url('/web/art/ui/victoria-feather.svg'),radial-gradient(ellipse at 20% 0,#1050ac,#001c59);background-size:78% 78%,100%;background-position:center;background-repeat:no-repeat}
.hope-track>.hope-feather{font-size:0}
.startup-status{border:5px ridge #e6b650!important;border-radius:25px!important;background:radial-gradient(ellipse at top,#fffbee,#ead9b4)!important;color:#0d1836!important;box-shadow:0 0 0 2px #fff1b3,0 15px 45px #0009!important}
.startup-status h2{background:linear-gradient(#073374,#061e50);color:#fff4d1!important;font-family:Georgia,'Times New Roman',serif;border:2px solid #dca94a;border-radius:13px;padding:12px;margin:0 0 15px}
.startup-status p{color:#162440!important}.startup-status button{font-family:Georgia,'Times New Roman',serif}
