/* Aetheria Ascend: accessible, responsive Kingdom Flash-inspired pre-register modal. */
.prereg-dialog{
  border:1px solid #d6b77e;
  border-radius:16px;
  padding:0;
  background:#0e1d30;
  color:#f6f6f5;
  width:min(750px,calc(100% - 24px));
  max-height:min(92dvh,930px);
  overflow:auto;
  box-shadow:0 20px 100px #000b,0 0 0 5px #082b4770;
  position:fixed;
}
.prereg-dialog::backdrop{background:rgba(3,10,21,.8);backdrop-filter:blur(6px)}
.prereg-dialog [hidden]{display:none!important}
.prereg-close{position:absolute;right:14px;top:11px;z-index:5;width:37px;height:37px;border:1px solid #fff9;border-radius:50%;background:#0e2236df;color:white;font-size:26px;line-height:1;display:grid;place-items:center}
.prereg-close:hover{background:#275477}
.prereg-hero{position:relative;min-height:157px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;isolation:isolate;padding:30px 58px 22px;text-align:center}
.prereg-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#071d31bd,#0c1b2de3),url('/gameplay/realtime/01-valley.webp') center 40%/cover no-repeat}
.prereg-hero .prereg-overline{font:700 11px/1.3 'DM Sans',sans-serif;letter-spacing:.23em;color:#f3d28d}
.prereg-hero h2{font:700 clamp(24px,4vw,37px)/1.17 'Cinzel',Georgia,serif;margin:0;letter-spacing:.03em;color:#fff9ea;text-shadow:0 2px 9px #081522}
.prereg-hero p{font:500 13px/1.6 'DM Sans',sans-serif;margin:0;color:#d5e8f2}
.prereg-body{padding:25px clamp(17px,3.8vw,37px) 32px}
.prereg-chapter{font:800 10px/1.4 'DM Sans',sans-serif;letter-spacing:.2em;color:#d6b879;text-transform:uppercase}
.prereg-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px}
.prereg-section-head h3{font:700 clamp(17px,3vw,24px)/1.2 'Cinzel',Georgia,serif;color:#f5f1e8;margin:4px 0}
.prereg-count{padding:8px 11px;border:1px solid #c8a46882;border-radius:20px;font:800 12px 'DM Sans',sans-serif;color:#f3cc81;white-space:nowrap}
.prereg-track{height:6px;border-radius:6px;overflow:hidden;background:#32485d;margin:0 0 18px}
.prereg-progress-fill{display:block;width:0;height:100%;background:linear-gradient(90deg,#459dcf,#f0c77d);transition:width .2s}
.prereg-quests{display:grid;gap:12px}
.prereg-quest{display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:12px;padding:17px 13px;background:linear-gradient(120deg,#162c44,#102238);border:1px solid #69819a73;border-radius:9px}
.prereg-quest.is-done{border-color:#e5c27b;background:linear-gradient(120deg,#193751,#1a3549)}
.prereg-quest-symbol{display:grid;place-items:center;width:47px;height:47px;border-radius:9px;border:1px solid #c8ad76a4;background:#254c68;font-size:25px;color:#f1d090}
.prereg-quest-meta{color:#d0a96b;font:800 10px/1.3 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase}
.prereg-quest-main h4{color:white;font:700 15px/1.3 'DM Sans',sans-serif;margin:4px 0}
.prereg-quest-main p{color:#c0cfdb;font:400 12px/1.5 'DM Sans',sans-serif;margin:0 0 5px}
.prereg-task-link{color:#a6d8ff;font:700 12px/1.5 'DM Sans',sans-serif;text-decoration:none}
.prereg-task-link:hover{color:#f4e0aa;text-decoration:underline}
.prereg-check{display:flex;align-items:center;gap:6px;color:#eee3c9;font:700 10px/1.3 'DM Sans',sans-serif;white-space:nowrap;cursor:pointer}
.prereg-check input{accent-color:#e7be75;width:17px;height:17px;cursor:pointer}
.prereg-note{margin:17px 0;font:400 12px/1.7 'DM Sans',sans-serif;color:#acc0cb}
.prereg-btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:44px;border:1px solid #f3cd8b;border-radius:30px;background:linear-gradient(#3699da,#1e6ca6);color:white;font:800 12px/1.2 'DM Sans',sans-serif;padding:13px 23px;letter-spacing:.06em;box-shadow:inset 0 1px #fffb}
.prereg-btn:hover:not(:disabled){filter:brightness(1.1)}
.prereg-btn:disabled{cursor:not-allowed;opacity:.42;filter:grayscale(.35)}
.prereg-btn-wide{width:100%}
.prereg-alt{border:0;background:transparent;color:#c3dbed;padding:10px 0;font:700 12px 'DM Sans',sans-serif}
.prereg-alt:hover{color:#f9db9a;text-decoration:underline}
.prereg-fields{display:grid;gap:15px;margin-top:17px}
.prereg-field{display:grid;gap:8px;font:800 11px 'DM Sans',sans-serif;letter-spacing:.08em;color:#e9d6ae}
.prereg-field input{height:45px;border-radius:6px;border:1px solid #63839d;background:#0c253a;color:#fff;padding:10px 13px;min-width:0;font:500 14px 'DM Sans',sans-serif}
.prereg-field input:focus{outline:2px solid #ddba78;outline-offset:2px}
.prereg-field small{color:#afc2d1;font:400 11px 'DM Sans',sans-serif;letter-spacing:0}
.prereg-consent{display:flex;gap:10px;align-items:start;font:400 12px/1.55 'DM Sans',sans-serif;color:#d8e6e9;margin:17px 0;cursor:pointer}
.prereg-consent input{margin-top:2px;width:17px;height:17px;flex:none;accent-color:#e7be75}
.prereg-status{margin:12px 0 0;font:500 12px/1.55 'DM Sans',sans-serif;color:#bad3e5;min-height:18px}
.prereg-status.error{color:#ffb9ab}
.prereg-status.ok{color:#adf2ce}
.prereg-robot{padding:13px 0;min-height:60px}
.prereg-private-honeypot{display:none!important}
.prereg-success{text-align:center;padding:15px 10px 4px}
.prereg-success-icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 14px;border:2px solid #e9c184;border-radius:50%;color:#f8df9d;font-size:37px;background:#204663}
.prereg-success h3{font:700 29px 'Cinzel',Georgia,serif;margin:0 0 12px;color:#ffe1a1}
.prereg-success p{font:500 14px/1.7 'DM Sans',sans-serif;color:#e3eff8}
.prereg-receipt{font:700 12px/1.4 'DM Sans',sans-serif;color:#e0c692}
.prereg-form-subheading{font:600 14px/1.6 'DM Sans',sans-serif;color:#c2d7e5;margin-top:9px}
.prereg-actions-row{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:19px}
@media(max-width:610px){
 .prereg-dialog{width:calc(100% - 18px);max-height:94dvh}
 .prereg-hero{min-height:150px;padding:30px 35px 17px}
 .prereg-body{padding:20px 16px 25px}
 .prereg-quest{grid-template-columns:42px minmax(0,1fr);gap:9px;padding:13px}
 .prereg-quest-symbol{width:41px;height:41px;font-size:21px}
 .prereg-check{grid-column:2;justify-content:flex-start;padding-top:5px}
 .prereg-quest-main h4{font-size:13px}
 .prereg-actions-row{flex-direction:column-reverse;align-items:stretch}
 .prereg-alt{padding:8px 5px}
}
@media(prefers-reduced-motion:reduce){.prereg-progress-fill{transition:none}}

/* Single, fully clickable X Follow mission, no checkbox. */
.prereg-quest-link{cursor:pointer;text-decoration:none;color:inherit;transition:border-color .2s,background .2s,transform .2s}
.prereg-quest-link:hover{border-color:#f0d296;background:linear-gradient(120deg,#235477,#173b59);transform:translateY(-2px)}
.prereg-quest-link:focus-visible{outline:2px solid #ffe4a0;outline-offset:3px}
.prereg-quest-link.is-done{border-color:#75e5b2;background:linear-gradient(120deg,#1e4e52,#193d49)}
.prereg-quest-title{display:block;color:white;font:700 15px/1.35 'DM Sans',Arial,sans-serif;margin:4px 0}
.prereg-quest-detail{display:block;color:#c0cfdb;font:400 12px/1.5 'DM Sans',Arial,sans-serif;margin:0 0 8px}
.prereg-quest-completion{display:inline-flex;align-items:center;justify-content:center;padding:9px 11px;border:1px solid #c8ad76a4;border-radius:20px;background:#163e59;color:#f8deb1;font:800 10px/1.25 'DM Sans',Arial,sans-serif;white-space:nowrap}
.prereg-quest-link.is-done .prereg-quest-completion{background:#1b5545;color:#a8ffce;border-color:#a8ffceaa}
.prereg-quest-link.is-done .prereg-task-link{color:#c4dff1}
@media(max-width:610px){
  .prereg-quest-link{grid-template-columns:42px minmax(0,1fr)}
  .prereg-quest-link .prereg-quest-completion{grid-column:2;justify-self:start;margin-top:3px}
  .prereg-quest-title{font-size:13px}
}
