/* Account panel (Gold): Dream shell, navigation and the look of every account form, table and notice. */
.dream-theme .c-container>.content:has(.dream-ap){padding:0;background:none;border:0;box-shadow:none;backdrop-filter:none}
.dream-theme div.container:has(.dream-ap):before{display:none}
.dream-ap{--ap-box:#0c131a;--ap-box2:#131c26;--ap-line:var(--line);--ap-dash:rgba(255,255,255,.14);--ap-glow:rgba(255,149,51,.3);--ap-orange:var(--bb-orange);--ap-gold:var(--bb-orange);display:grid;grid-template-columns:184px minmax(0,1fr);gap:28px;align-items:start;margin-bottom:40px;color:#fff;font:400 14px/1.5 DreamText,Arial,sans-serif}
.dream-ap.is-guest{grid-template-columns:minmax(0,1fr);max-width:560px;margin:0 auto 40px}

/* Navigation rail: a hairline track with one dot per destination; the current page lights its dot. */
.dream-ap-nav{position:sticky;top:calc(var(--dream-header-height,70px) + 16px);display:grid;gap:18px;min-width:0;padding-top:6px}
.dream-ap-nav ul{display:grid;gap:1px;margin:0 0 0 4px;padding:0;list-style:none;border-left:1px solid var(--ap-line)}
.dream-theme .dream-ap-nav a{position:relative;display:block;padding:6px 8px 6px 18px;color:#aeb6c4;font-size:13px;line-height:1.35;text-decoration:none;overflow-wrap:anywhere;transition:color .15s}
.dream-ap-nav a::before{content:'';position:absolute;left:-4px;top:50%;width:7px;height:7px;margin-top:-3.5px;border:1px solid #ffffff38;border-radius:50%;background:#0b1016;transition:background .15s,border-color .15s,box-shadow .15s}
.dream-theme .dream-ap-nav a:hover{color:#fff}
.dream-ap-nav a:hover::before{border-color:var(--bb-orange)}
.dream-theme .dream-ap-nav a[aria-current=page]{color:#fff;font-weight:700}
.dream-ap-nav a[aria-current=page]::before{border-color:var(--bb-orange);background:var(--bb-orange);box-shadow:0 0 0 3px #ff953326,0 0 10px var(--ap-glow)}
.dream-ap-group summary{display:flex;align-items:center;gap:8px;margin-bottom:6px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;list-style:none;cursor:pointer;transition:color .15s}
.dream-ap-group summary::-webkit-details-marker{display:none}
.dream-ap-group summary::after{content:'';width:5px;height:5px;margin:-3px 2px 0 auto;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .15s,margin .15s}
.dream-ap-group[open] summary::after{margin-top:3px;transform:rotate(-135deg)}
.dream-ap-group summary:hover,.dream-ap-group[open] summary{color:var(--bb-orange)}
.dream-ap-count{min-width:18px;padding:0 5px;border-radius:9px;background:#ffffff0f;color:#c0c7d5;font-size:10px;font-weight:700;letter-spacing:0;line-height:16px;text-align:center}
.dream-ap-nav :is(a,summary):focus-visible{outline:2px solid var(--bb-orange);outline-offset:2px;border-radius:4px}

/* Page card: dark ticket surface with a warm corner glow; the head is a kicker (the page's group) and a display title. */
.dream-ap-card{min-width:0;background:radial-gradient(120% 80% at 0 0,#ff953312,transparent 55%),linear-gradient(165deg,#111a23,var(--ap-box) 60%);border:1px solid var(--ap-line);border-radius:18px}
.dream-ap-head{padding:20px 24px 16px;border-bottom:1px dashed var(--ap-dash)}
.dream-theme .dream-ap-head h1{margin:6px 0 0;color:#fff;font:900 26px/1.1 DreamDisplay,Arial,sans-serif;text-align:left;text-transform:uppercase;overflow-wrap:anywhere}
.dream-theme .dream-ap-kicker{display:flex;align-items:center;gap:10px;margin:0;color:var(--bb-orange);font-size:11px;font-weight:800;line-height:1.2;letter-spacing:.16em;text-transform:uppercase}
.dream-ap-kicker::after{content:'';flex:1 1 auto;max-width:160px;height:1px;background:linear-gradient(90deg,#ff953380,transparent)}
.dream-ap-body{padding:20px 24px 24px;color:#c0c7d5;font-size:14px;line-height:1.5}

/* Legacy pages (.dream-ap-legacy, the shell default): wrappers, tables, forms and buttons of the DmN views. Pages that
   own their controls (ap_legacy => false) get .dream-own-controls instead and none of these rules. */
.dream-ap-legacy #content,.dream-ap-legacy #box1,.dream-ap-legacy .box-style1,.dream-ap-legacy .entry{width:auto!important;margin:0!important;padding:0!important;float:none!important;background:none!important;border:0!important;box-shadow:none!important}
.dream-ap-legacy .box-style1+.box-style1{margin-top:22px!important;padding-top:22px!important;border-top:1px solid var(--ap-line)!important}
.dream-ap-legacy .spacer3,.dream-ap-legacy .title1,.dream-ap-legacy .block-title{display:none}
.dream-ap-legacy .box-style1>div[style*="736765"]{margin:0 0 16px!important;padding:10px 14px!important;border:0!important;border-left:3px solid var(--ap-orange)!important;border-radius:6px!important;background:var(--ap-box2)!important;color:#c0c7d5!important;font-size:14px}
.dream-theme .dream-ap-legacy h2.title,.dream-theme .dream-ap-legacy .box-style1 h2{margin:0 0 14px;color:#fff;font:600 18px DreamText,Arial,sans-serif;text-align:left}
.dream-theme .dream-ap-legacy a:not(:where(.dream-action)){color:var(--ap-gold)}
.dream-ap-legacy center{text-align:left}

/* Tables */
.dream-ap-legacy table{width:100%;border-collapse:collapse;background:var(--ap-box2);border:1px solid var(--ap-line);border-radius:12px;overflow:hidden;font-size:14px}
.dream-theme .dream-ap-legacy table th,.dream-theme .dream-ap-legacy table .main-tr th,.dream-theme .dream-ap-legacy table .main-tr td{padding:12px 10px;background:var(--ap-box);border:0;border-bottom:1px solid var(--ap-line);color:#fff;font:600 14px DreamText,Arial,sans-serif;text-align:center}
.dream-theme .dream-ap-legacy table td{padding:10px;background:none;border:0;border-top:1px solid #ffffff10;color:#e7edf5;text-align:center;vertical-align:middle}
.dream-ap-legacy table tr:hover td{background:#ffffff06}
.dream-ap-legacy table td:first-child a{color:var(--ap-gold);font-weight:600}
.dream-ap-legacy .ranking-table,.dream-ap-legacy table{margin:0 0 6px}
.dream-ap-legacy .dream-ap-scroll{overflow-x:auto}

/* Forms (Dream look: label left, dark rounded field) */
.dream-theme .dream-ap-legacy label,.dream-ap-legacy .form_label{color:#fff;font-size:14px;font-weight:700}
#dream-ap .dream-ap-legacy input[type=text],#dream-ap .dream-ap-legacy input[type=password],#dream-ap .dream-ap-legacy input[type=email],#dream-ap .dream-ap-legacy input[type=number],#dream-ap .dream-ap-legacy input:not([type]),#dream-ap .dream-ap-legacy select,#dream-ap .dream-ap-legacy textarea{max-width:100%;min-height:44px;padding:0 16px!important;border:1px solid #ffffff2a!important;border-radius:14px!important;background:#18222d!important;box-shadow:inset 0 2px 6px #0006!important;color:#fff!important;font:400 15px DreamText,Arial,sans-serif}
#dream-ap .dream-ap-legacy textarea{padding:10px 16px!important}
/* Fields fill their cell: the legacy views give selects a fixed inline width that overflowed their box. */
#dream-ap .dream-ap-legacy select,#dream-ap .dream-ap-legacy input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=hidden]),#dream-ap .dream-ap-legacy textarea{box-sizing:border-box;width:100%!important;height:auto!important}
#dream-ap .dream-ap-legacy form table td{padding:8px 16px}
#dream-ap .dream-ap-legacy .form-wrapper table{border-spacing:0;padding:8px 0}
#dream-ap .dream-ap-legacy input:focus,#dream-ap .dream-ap-legacy select:focus,#dream-ap .dream-ap-legacy textarea:focus{border-color:var(--ap-orange)!important;outline:0;box-shadow:inset 0 2px 6px #0006,0 0 0 3px #ff953333!important}
#dream-ap .dream-ap-legacy select option{background:var(--ap-box2);color:#fff}
.dream-ap-legacy .form-row,.dream-ap-legacy .dream-form-row{display:grid;grid-template-columns:170px minmax(0,1fr);align-items:center;gap:8px 14px;margin-bottom:12px}

/* Buttons */
#dream-ap .dream-ap-legacy .custom_button,#dream-ap .dream-ap-legacy .button-style,#dream-ap .dream-ap-legacy input[type=submit],#dream-ap .dream-ap-legacy input[type=button],#dream-ap .dream-ap-legacy button:not([class*=dream-ap-nav]):not(:where(.dream-action)),#dream-ap .dream-ap-legacy .dream-btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 22px!important;border:0!important;border-radius:19px!important;background:linear-gradient(180deg,#ffd264,#f0a41e)!important;box-shadow:0 2px 10px #f0a41e55!important;color:#3a2203!important;font:800 14px/1 DreamText,Arial,sans-serif!important;text-decoration:none;text-transform:uppercase;letter-spacing:.3px;cursor:pointer;float:none!important}
#dream-ap .dream-ap-legacy .custom_button:hover,#dream-ap .dream-ap-legacy .button-style:hover,#dream-ap .dream-ap-legacy input[type=submit]:hover,#dream-ap .dream-ap-legacy button:not(:where(.dream-action)):hover{filter:brightness(1.08)}
#dream-ap .dream-ap-legacy .custom_button:after,#dream-ap .dream-ap-legacy li>a:after{content:none!important}
#dream-ap .dream-ap-legacy button:not(:where(.dream-action)):disabled,#dream-ap .dream-ap-legacy input[type=submit]:disabled{background:#3b4452!important;box-shadow:none!important;color:#89879a!important;cursor:not-allowed}

/* Notices */
.dream-ap-body .e_note,.dream-ap-body .s_note,.dream-ap-body .i_note,.dream-ap-body .w_note{margin:0 0 14px!important;padding:12px 16px!important;border:0!important;border-left:3px solid!important;border-radius:8px!important;background:var(--ap-box2)!important;color:#e7edf5!important;font-size:14px;text-align:left}
.dream-ap-body .e_note{border-left-color:#ff5a4a!important;background:#3a121266!important}
.dream-ap-body .s_note{border-left-color:#3fbf1f!important;background:#12351366!important}
.dream-ap-body .i_note,.dream-ap-body .w_note{border-left-color:#2b8cff!important}

/* Dashboard and settings panels from the earlier Gold design sit inside the card */
.dream-ap-legacy .dream-dashboard,.dream-ap-legacy .dream-form-page{display:grid;gap:18px;margin:0;padding:0}
.dream-theme .dream-ap-legacy .dream-dashboard-panel{margin:0;padding:0;background:none;border:0;box-shadow:none}
.dream-ap-legacy .dream-dashboard-panel+.dream-dashboard-panel{padding-top:18px;border-top:1px solid var(--ap-line)}
.dream-theme .dream-ap-legacy .dream-panel-heading{padding:0 0 12px;background:none;border:0}

@media(max-width:900px){
 .dream-ap{grid-template-columns:minmax(0,1fr);gap:14px}
 /* The rail becomes one line of chips per row, scrolled sideways (dream-account.js brings the current chip into view):
    the four account pages, then each group as a full-width toggle whose links form one more line. */
 .dream-ap-nav{position:static;grid-template-columns:minmax(0,1fr);gap:8px;padding:0}
 .dream-ap-nav ul{display:flex;gap:6px;margin:0;padding:0;border:0;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent)}
 .dream-ap-nav ul::-webkit-scrollbar{display:none}
 .dream-ap-nav li{flex:0 0 auto}
 .dream-ap-nav li:last-child{padding-right:24px}
 .dream-theme .dream-ap-nav a{display:flex;align-items:center;min-height:34px;padding:0 14px;border:1px solid var(--ap-line);border-radius:17px;background:#ffffff08;font-size:12px;white-space:nowrap}
 .dream-ap-nav a::before{content:none}
 .dream-theme .dream-ap-nav a[aria-current=page]{border-color:var(--bb-orange);background:#ff95331a;color:var(--bb-orange)}
 .dream-ap-group summary{min-height:34px;margin:0;padding:0 14px;border:1px solid var(--ap-line);border-radius:10px;background:#ffffff05}
 .dream-ap-group[open] summary{margin-bottom:8px;border-color:#ff953366}
 .dream-ap-body{padding:16px}
 .dream-ap-legacy{overflow-x:auto}
 .dream-ap-head{padding:16px}
 .dream-theme .dream-ap-head h1{font-size:22px}
 .dream-ap-legacy .form-row,.dream-ap-legacy .dream-form-row{grid-template-columns:1fr}
 .dream-ap-legacy table{font-size:12px}
 .dream-theme .dream-ap-legacy table td,.dream-theme .dream-ap-legacy table th{padding:8px 6px}
}
@media(max-width:420px){
 .dream-ap-group summary{padding:0 12px;letter-spacing:.06em}
}

/* Overview: a slim account line, the balance strip, the character roster and the Jewel Bank ledger. */
.dream-ov{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:16px 20px;align-items:start}
.dream-ov-account,.dream-ov-wallet{grid-column:1/-1;min-width:0}
/* Account line: name, mail and VIP on one row, the facts as one quiet row under a dashed rule. */
.dream-ov-account{display:grid;gap:10px;padding-bottom:12px;border-bottom:1px dashed var(--ap-dash)}
.dream-ov-id{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;min-width:0}
.dream-theme .dream-ov-name{margin:0;color:#fff;font:900 22px/1.1 DreamDisplay,Arial,sans-serif;text-align:left;text-transform:uppercase;overflow-wrap:anywhere}
.dream-ov-mail{min-width:0;color:var(--muted);font-size:13px;overflow-wrap:anywhere}
.dream-theme .dream-ov-vip{margin:0 0 0 auto;padding:2px 10px;border:1px solid var(--ap-dash);border-radius:12px;color:var(--muted);font-size:12px;line-height:18px}
.dream-ov-vip b{color:#c0c7d5;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.dream-ov-vip.is-on{border-color:#ff953366;background:#ff953314}
.dream-ov-vip.is-on b{color:var(--bb-orange)}
.dream-ov-facts{display:flex;flex-wrap:wrap;gap:4px 22px;margin:0}
.dream-ov-facts div{display:flex;align-items:baseline;gap:6px;min-width:0}
.dream-ov-facts dt{color:var(--muted);font-size:12px}
.dream-ov-facts dd{margin:0;color:#e7edf5;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
/* Balance strip: one hairline-divided row of value/label pairs. */
.dream-ov-balances{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:1px;margin:0;padding:0;list-style:none;overflow:hidden;border:1px solid var(--ap-line);border-radius:10px;background:var(--ap-line)}
.dream-ov-balances li{display:flex;flex-direction:column-reverse;gap:1px;min-width:0;padding:7px 12px;background:var(--ap-box2)}
.dream-ov-balances span{color:var(--muted);font-size:11px;overflow-wrap:anywhere}
.dream-ov-balances b{color:#fff;font:900 15px/1.2 DreamDisplay,Arial,sans-serif;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.dream-ov-balances li:first-child b{color:var(--bb-orange)}

.dream-ov-section{min-width:0}
.dream-ov-head{display:flex;align-items:baseline;gap:12px;margin-bottom:8px}
.dream-theme .dream-ov-head h2{margin:0;color:#fff;font:900 13px/1.2 DreamDisplay,Arial,sans-serif;letter-spacing:.04em;text-align:left;text-transform:uppercase}
.dream-ov-tally{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}
.dream-theme .dream-ov-soon{margin:0;padding:12px 14px;border:1px dashed var(--ap-dash);border-radius:10px;color:var(--muted);font-size:13px}

/* Roster: each character is one link row (portrait, name, four counters, location/guild/zen). */
.dream-ov-roster{display:grid;gap:4px;margin:0;padding:0;list-style:none}
.dream-theme a.dream-ov-char{display:grid;grid-template-columns:32px minmax(110px,1fr) auto minmax(0,1.1fr);align-items:center;gap:6px 14px;padding:7px 12px;border:1px solid var(--ap-line);border-radius:10px;background:var(--ap-box2);color:#fff;text-decoration:none;transition:border-color .15s,background .15s}
.dream-theme a.dream-ov-char:hover{border-color:#ff953366;background:#18222d}
.dream-theme a.dream-ov-char:hover .dream-ov-char-name b{color:var(--bb-orange)}
.dream-theme a.dream-ov-char:focus-visible{outline:2px solid var(--bb-orange);outline-offset:2px}
.dream-ov-portrait{position:relative;width:32px;height:32px}
.dream-ov-portrait img{width:32px;height:32px;border:1px solid #ff953347;border-radius:50%;object-fit:cover}
.dream-ov-portrait .dream-rank-dot{position:absolute;right:0;bottom:0}
.dream-ov-char-name{min-width:0}
.dream-ov-char-name b,.dream-ov-char-name small{display:block;overflow-wrap:anywhere}
.dream-ov-char-name b{color:#fff;font-size:14px;line-height:1.25;transition:color .15s}
.dream-ov-char-name small{color:var(--muted);font-size:12px;line-height:1.3}
.dream-ov-char-stats{display:grid;grid-template-columns:repeat(4,46px);gap:4px;margin:0;text-align:center}
.dream-ov-char-stats div{display:flex;flex-direction:column-reverse}
.dream-ov-char-stats dd{margin:0;color:#fff;font:900 14px/1.2 DreamDisplay,Arial,sans-serif;font-variant-numeric:tabular-nums}
.dream-ov-char-stats div:first-child dd{color:var(--bb-orange)}
.dream-ov-char-stats dt{color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.06em;line-height:1.3;text-transform:uppercase}
.dream-ov-char-meta{display:flex;flex-direction:column;align-items:flex-end;min-width:0;text-align:right}
.dream-ov-char-meta>span{color:#e7edf5;font-size:13px;overflow-wrap:anywhere}
.dream-ov-char-meta small{color:var(--muted);font-size:11px;line-height:1.4;overflow-wrap:anywhere}
.dream-ov-pk{margin-top:3px;padding:0 6px;border:1px solid var(--ap-dash);border-radius:4px;color:#e7edf5;font-size:10px;font-style:normal;font-weight:800;letter-spacing:.06em;line-height:16px;text-transform:uppercase}

/* Jewel Bank: one ledger row per jewel; the per-character split is a disclosure. */
.dream-ov-jewels{display:grid;margin:0;padding:0;list-style:none}
.dream-ov-jewels li{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;padding:3px 0;border-bottom:1px solid var(--ap-line)}
.dream-ov-jewels li:last-child{border-bottom:0}
.dream-ov-jewels li.is-empty{opacity:.45}
.dream-ov-jewels img{width:24px;height:24px;object-fit:contain}
.dream-ov-jewels span{min-width:0;color:#c0c7d5;font-size:13px;overflow-wrap:anywhere}
.dream-ov-jewels b{color:#fff;font:900 14px/1.2 DreamDisplay,Arial,sans-serif;font-variant-numeric:tabular-nums}
.dream-ov-bank-split{margin-top:8px;padding-top:8px;border-top:1px dashed var(--ap-dash)}
.dream-ov-bank-split summary{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;list-style:none;cursor:pointer}
.dream-ov-bank-split summary::-webkit-details-marker{display:none}
.dream-ov-bank-split summary::after{content:'';width:5px;height:5px;margin:-3px 2px 0 auto;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg)}
.dream-ov-bank-split[open] summary::after{margin-top:3px;transform:rotate(-135deg)}
.dream-ov-bank-split summary:hover,.dream-ov-bank-split[open] summary{color:var(--bb-orange)}
.dream-ov-bank-split summary:focus-visible{outline:2px solid var(--bb-orange);outline-offset:2px}
.dream-ov-bank-char{display:grid;gap:4px;margin-top:10px}
.dream-ov-bank-char>b{color:#fff;font-size:12px}
.dream-ov-bank-char ul{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0;padding:0;list-style:none}
.dream-ov-bank-char li{display:flex;align-items:center;gap:4px;color:#c0c7d5;font-size:12px;font-variant-numeric:tabular-nums}
.dream-ov-bank-char img{width:20px;height:20px;object-fit:contain}
.dream-ap .dream-rank-dot{display:inline-block;width:8px;height:8px;border:2px solid var(--ap-box2);border-radius:50%;background:#89879a}
.dream-ap .dream-rank-dot.is-online{background:#3fbf1f}
@media(max-width:1100px){
 .dream-ov{grid-template-columns:minmax(0,1fr)}
 .dream-ov-jewels{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));column-gap:20px}
 .dream-ov-jewels li:last-child{border-bottom:1px solid var(--ap-line)}
}
@media(max-width:760px){
 .dream-theme .dream-ov-vip{margin-left:0}
 .dream-ov-facts{gap:2px 14px}
 .dream-ov-balances{grid-template-columns:repeat(2,minmax(0,1fr))}
 .dream-ov-balances li:last-child:nth-child(odd){grid-column:1/-1}
}
/* Roster rows follow the roster's own width: the meta drops under the name, then the counters take a full row. */
.dream-ov-characters{container-type:inline-size}
@container (max-width:640px){
 .dream-theme a.dream-ov-char{grid-template-columns:32px minmax(0,1fr) auto}
 .dream-ov-char-meta{grid-column:2/-1;flex-flow:row wrap;justify-content:flex-start;align-items:center;gap:2px 8px;text-align:left}
}
@container (max-width:440px){
 .dream-theme a.dream-ov-char{grid-template-columns:32px minmax(0,1fr);padding:8px 10px}
 .dream-ov-char-stats{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));padding:4px 0;border-radius:6px;background:#ffffff06}
 .dream-ov-char-meta{grid-column:1/-1}
}
/* Intro line of Zen Wallet, Prize Bank and Referrals. */
.dream-warp-intro,.dream-prize-intro,.dream-ref-intro{margin:0 0 16px;padding:10px 14px;border-left:3px solid var(--ap-orange);border-radius:6px;background:var(--ap-box2);color:#c0c7d5;font-size:14px}

/* Character selector (view.char_select.php, dream-account.js): the chosen character as one row (avatar, class, name,
   status, map and counters); it opens the list of the account's characters over the page. Measured from
   mudream.online/account/characters. */
.dream-chars-select{--ch-box:#051f35;--ch-line:#ffffff1a;--ch-light:#89879a;--ch-hover:linear-gradient(#ffd3330d,#ffd3330d),linear-gradient(#ffffff26,#ffffff26),#22020233;position:relative;z-index:5;margin:0 0 18px;color:#fff;font:500 10px/20px DreamText,Arial,sans-serif}
.dream-theme .dream-chars-none{margin:24px 0;color:var(--muted);font-size:18px;text-align:center}
.dream-chars-current{position:relative;display:block;width:100%;padding:0 30px 0 0;border:1px solid var(--ch-line);border-radius:20px;background:var(--ch-box);box-shadow:0 0 40px #000c;color:#fff;font:inherit;text-align:left;cursor:pointer}
.dream-chars-select.is-open .dream-chars-current{background:linear-gradient(#ffd3331a,#ffd3331a),linear-gradient(#ffffff26,#ffffff26),#22020233}
.dream-chars-current:focus-visible,.dream-chars-row:focus-visible{outline:2px solid var(--bb-orange);outline-offset:2px}
.dream-chars-arrows{position:absolute;top:50%;right:12px;width:24px;height:24px;transform:translateY(-50%);fill:none;stroke:var(--ch-light);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.dream-chars-select.is-open .dream-chars-arrows{stroke:var(--bb-orange)}
@media(min-width:780px){
 .dream-chars-select:hover .dream-chars-current{background:var(--ch-hover)}
 .dream-chars-select:hover .dream-chars-arrows{stroke:var(--bb-orange)}
}
.dream-chars-list-wrap{position:absolute;top:105%;left:0;z-index:600;display:grid;width:100%;overflow:hidden;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .2s,visibility .2s}
.dream-chars-select.is-open .dream-chars-list-wrap{grid-template-rows:1fr;visibility:visible}
.dream-chars-list{min-height:0;margin:0;padding:0;overflow:hidden;list-style:none;border-radius:20px;background:var(--ch-box)}
.dream-chars-select.is-open .dream-chars-list{border:1px solid var(--ch-line);box-shadow:0 0 40px #000c}
.dream-chars-row{display:flex;align-items:center;justify-content:space-between;padding:2px 10px;color:#fff;text-decoration:none}
.dream-theme .dream-chars-list a.dream-chars-row{color:#fff}
.dream-chars-list a.dream-chars-row:hover,.dream-chars-list a[aria-current=page]{background:var(--ch-hover)}
.dream-chars-who{display:inline-flex;align-items:center;gap:15px;min-width:0}
.dream-chars-avatar{flex:none;width:56px;height:56px;border:2px solid #ffffff80;border-radius:50%;object-fit:cover}
.dream-chars-names{display:flex;flex-direction:column;gap:5px;min-width:0}
.dream-chars-names>span{line-height:20px}
.dream-chars-class{color:#ffd333;font-size:12px;font-weight:700;font-variant:all-small-caps}
.dream-chars-name{overflow:hidden;color:#fff;font-size:18px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.dream-chars-status{display:inline-flex;align-items:center;gap:2px;color:#ffffff66;font-size:12px;font-weight:700}
.dream-chars-status i{width:16px;height:16px;border-radius:50%;background:radial-gradient(circle,#8b8b98 0 3px,#8b8b9833 4px 6px,transparent 7px)}
.dream-chars-status.is-online{color:#00ff55}
.dream-chars-status.is-online i{background:radial-gradient(circle,#00ff55 0 3px,#00ff5533 4px 6px,transparent 7px)}
.dream-chars-map-mobile{display:none}
.dream-chars-params{display:flex;align-items:center}
.dream-chars-param{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;padding:0 10px}
.dream-chars-param+.dream-chars-param{padding-left:12px}
.dream-chars-param+.dream-chars-param:before{content:"";position:absolute;top:50%;left:0;width:1px;height:50%;transform:translateY(-50%);background:linear-gradient(#fff0,#fff3 50%,#fff0)}
.dream-chars-param b{color:#fff;font-size:18px;font-weight:700;line-height:20px}
.dream-chars-param b>span{display:inline-block;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:top}
.dream-chars-param small{color:#fff9;font-size:12px;font-weight:700;line-height:12px;text-align:center}
/* Narrower cards: the map moves under the name, then each row stacks. */
@media(max-width:1180px){
 .dream-chars-map-mobile{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700}
 .dream-chars-map-mobile svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}
 .dream-chars-param.is-map{display:none}
 .dream-chars-param.is-map+.dream-chars-param{padding-left:10px}
 .dream-chars-param.is-map+.dream-chars-param:before{display:none}
}
@media(max-width:767px){
 .dream-chars-row{flex-direction:column;justify-content:center;gap:6px;padding:10px}
 .dream-chars-list li+li{border-top:1px solid var(--ch-line)}
 .dream-chars-param{gap:4px;padding:0 6px}
 .dream-chars-param+.dream-chars-param{padding-left:8px}
 .dream-chars-param b{font-size:15px}
 .dream-chars-param small{font-size:10px}
}

/* Character tools (Clear SkillTree, PK Clear, Warp, Clear Inventory, Add Stats, Lucky Coins, Level Reward): under the
   selector one bar with the chosen character's facts and the tool's controls. These pages own their controls. */
.dream-theme .dream-ap-note{margin:0 0 12px;color:var(--muted);font-size:13px}
.dream-ap-tool{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;margin:0;padding:14px 16px;background:var(--ap-box2);border:1px solid var(--ap-line);border-radius:12px}
.dream-ap-facts{display:flex;flex-wrap:wrap;gap:6px 26px;margin:0}
.dream-ap-facts div{display:flex;flex-direction:column-reverse;min-width:0}
.dream-ap-facts dt{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.dream-ap-facts dd{margin:0;color:#fff;font:900 16px/1.25 DreamDisplay,Arial,sans-serif;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.dream-ap-facts .is-accent dd{color:var(--bb-orange)}
.dream-ap-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0}
.dream-ap-tool .dream-action{min-height:40px;padding:0 22px;white-space:nowrap}
.dream-ap-tool .dream-action:disabled{opacity:.45;cursor:not-allowed}
.dream-ap-field{box-sizing:border-box;min-width:0;min-height:40px;padding:0 14px;border:1px solid #ffffff2a;border-radius:12px;background:#18222d;box-shadow:inset 0 2px 6px #0006;color:#fff;font:400 14px DreamText,Arial,sans-serif}
select.dream-ap-field{min-width:220px;max-width:100%}
.dream-ap-field:focus{border-color:var(--bb-orange);outline:0;box-shadow:inset 0 2px 6px #0006,0 0 0 3px #ff953333}
.dream-ap-field option{background:var(--ap-box2);color:#fff}
/* Clear Inventory: what to clear as toggle chips. */
.dream-ap-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0}
.dream-ap-chips label{position:relative;cursor:pointer}
.dream-ap-chips input{position:absolute;opacity:0;pointer-events:none}
.dream-ap-chips span{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border:1px solid #ffffff26;border-radius:17px;background:#ffffff0a;color:#c0c7d5;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,color .15s}
.dream-ap-chips input:checked+span{border-color:#ff5a4a;background:#ff5a4a26;color:#fff}
.dream-ap-chips input:focus-visible+span{outline:2px solid var(--bb-orange);outline-offset:2px}
/* Add Stats: one field per stat with its current value; the free points update as the player types (App.calculateStats). */
.dream-ap-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;flex:1 1 100%;margin:0}
.dream-ap-stats label{display:flex;flex-direction:column;gap:4px;min-width:0;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.dream-ap-stats label b{color:#fff;font-size:13px;letter-spacing:0}
.dream-ap-stats .dream-ap-field:disabled{color:var(--bb-orange)}
/* Level Reward: one row per reward with its requirements, amount and Claim (App.addLevelReward). */
.dream-ap-rewards{display:grid;gap:6px;flex:1 1 100%;margin:0;padding:0;list-style:none}
.dream-ap-rewards li{display:grid;grid-template-columns:minmax(90px,auto) minmax(0,1fr) auto auto;align-items:center;gap:6px 18px;padding:8px 12px;border:1px solid var(--ap-line);border-radius:10px;background:#ffffff05}
.dream-ap-rewards b{color:#fff;font-size:14px}
.dream-ap-rewards span{color:var(--muted);font-size:13px}
.dream-ap-rewards strong{color:var(--bb-orange);font-size:14px;white-space:nowrap}
.dream-ap-rewards .dream-action{min-height:34px;padding:0 16px}
.dream-ap-state{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
@media(max-width:700px){
 .dream-ap-tool{align-items:stretch;padding:12px}
 .dream-ap-controls{flex:1 1 100%}
 .dream-ap-controls .dream-ap-field{flex:1 1 180px}
 select.dream-ap-field{min-width:0}
 .dream-ap-rewards li{grid-template-columns:minmax(0,1fr) auto}
 .dream-ap-rewards li>span{grid-column:1;grid-row:2}
 .dream-ap-rewards li>:last-child{grid-column:2;grid-row:2;justify-self:end}
}
/* Zen Wallet: balance tiles and one transfer row (from ⇄ to, amount with Max, Transfer). */
.dream-ov-coin{grid-row:1/3;width:34px;height:34px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff3b0,#f0a41e 55%,#7a4a06);box-shadow:inset 0 -2px 0 #0004,0 0 10px #ffc94a44}
.dream-zw-balances{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin:0 0 18px;padding:0;list-style:none}
.dream-zw-balances li{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:12px 14px;background:var(--ap-box2);border:1px solid var(--ap-line);border-radius:12px}
.dream-zw-balances .is-char .dream-ov-coin{background:radial-gradient(circle at 35% 30%,#fff,#c9ced6 55%,#5a6270)}
.dream-zw-balances .is-warehouse .dream-ov-coin{background:radial-gradient(circle at 35% 30%,#d6ecff,#2b8cff 55%,#0a2f6b)}
.dream-zw-balances b{overflow:hidden;color:#ffc94a;font-size:17px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
.dream-zw-balances small{overflow:hidden;color:#89879a;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.dream-zw-form{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:14px 12px;padding:18px;background:var(--ap-box2);border:1px solid var(--ap-line);border-radius:14px}
.dream-zw-form label{display:flex;flex-direction:column;gap:6px;min-width:0}
.dream-zw-form label>span:first-child{color:#89879a;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}
#dream-ap .dream-ap-legacy button.dream-zw-swap{width:44px;min-height:44px;padding:0!important;border-radius:50%!important;background:#ffffff14!important;box-shadow:none!important;color:#fff!important;font-size:20px!important}
.dream-zw-amount{grid-column:1/3}
.dream-zw-amount-field{display:flex;gap:8px}
#dream-ap .dream-ap-legacy .dream-zw-amount-field input{flex:1 1 auto;width:auto!important;min-width:0}
#dream-ap .dream-ap-legacy .dream-zw-amount-field button[data-dream-zw-max]{min-height:44px;background:#ffffff14!important;box-shadow:none!important;color:#ffc94a!important}
#dream-ap .dream-ap-legacy .dream-zw-submit{min-height:44px}
@media(max-width:700px){
 .dream-zw-balances{grid-template-columns:repeat(2,minmax(0,1fr))}
 .dream-zw-balances b{font-size:15px}
 .dream-zw-balances li{padding:10px;column-gap:8px}
 .dream-zw-balances .dream-ov-coin{width:28px;height:28px}
 .dream-zw-form{grid-template-columns:minmax(0,1fr) auto}
 .dream-zw-form>label:nth-of-type(2){grid-column:1}
 .dream-zw-swap{grid-row:1/3;grid-column:2;align-self:center}
 .dream-zw-amount,.dream-zw-submit{grid-column:1/-1}
}
/* Prize Bank: the account's prizes with status, deadline, the status filter and Claim (prize_bank/view.index.php). */
.dream-prize-table form{margin:0}
.dream-ap-legacy .dream-prize-table .dream-prize-filter-cell{width:300px}
.dream-prize-filter{display:flex;align-items:center;justify-content:flex-end;gap:8px;max-width:300px;margin-left:auto}
.dream-prize-filter select{flex:1 1 120px;min-width:0}
.dream-prize-table .dream-action{min-height:40px;padding:0 20px;white-space:nowrap}
.dream-ap-legacy .dream-prize-table tbody td:first-child{text-align:left}
.dream-prize-bonus{display:flex;align-items:center;gap:12px;min-width:0}
.dream-prize-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.dream-prize-bonus b{overflow:hidden;color:#fff;font-size:15px;font-weight:600;text-overflow:ellipsis}
.dream-prize-text small{color:#89879a;font-size:12px}
.dream-prize-icon{flex:0 0 auto;display:grid;place-items:center;width:52px;height:52px;background:radial-gradient(circle at 50% 30%,#ff95331f,#03081066 72%);border:1px solid #ff953340;border-radius:12px}
.dream-prize-icon img{max-width:44px;max-height:44px;object-fit:contain;filter:drop-shadow(0 3px 6px #000a)}
.dream-prize-status{font-size:13px;font-weight:700;letter-spacing:.4px;text-transform:uppercase}
.dream-prize-status.is-new{color:#3fbf1f}
.dream-prize-status.is-used{color:#ff5a4a}
.dream-prize-status.is-expired,.dream-prize-status.is-revoked{color:#89879a}
.dream-prize-label{display:none}
.dream-ap-legacy .dream-prize-table .dream-prize-empty{padding:24px 10px;color:#89879a}
@media(max-width:700px){
 .dream-prize-table thead th:not(.dream-prize-filter-cell){display:none}
 .dream-prize-table thead tr,.dream-ap-legacy .dream-prize-table .dream-prize-filter-cell{display:block;width:auto}
 .dream-prize-filter{max-width:none}
 .dream-prize-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:12px;border-top:1px solid #ffffff10}
 .dream-ap-legacy .dream-prize-table tbody td{display:block;padding:0;border:0;text-align:left}
 .dream-ap-legacy .dream-prize-table tbody td:first-child,.dream-ap-legacy .dream-prize-table tbody .dream-prize-empty{grid-column:1/-1}
 .dream-prize-label{display:inline;color:#89879a}
 .dream-prize-table tbody td:last-child{grid-column:2;grid-row:2/4;align-self:center}
}
/* Referrals: invite link with Copy, the summary strip, reward tiers and each invited account's characters with one
   state per tier (Claim, Claimed, taken by another character, locked with its requirement). view.my_referral_list.php */
.dream-ref{display:grid;gap:22px}
.dream-ref .dream-ref-intro{margin:0}
.dream-theme .dream-ref h2{margin:0 0 12px;color:#fff;font:600 18px DreamText,Arial,sans-serif;text-align:left}
.dream-ref-invite{padding:18px;background:var(--ap-box2);border:1px solid var(--ap-line);border-radius:14px}
.dream-ref-link{display:flex;gap:10px}
.dream-ref-link input{flex:1 1 auto;min-width:0;text-overflow:ellipsis}
.dream-ref-link .dream-action{flex:0 0 auto;min-height:44px;padding:0 22px;white-space:nowrap}
.dream-theme .dream-ref-note{margin:10px 0 0;color:#89879a;font-size:13px}
.dream-ref-note b{color:#fff}
.dream-ref-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;border-top:1px dashed var(--ap-dash);border-bottom:1px dashed var(--ap-dash)}
.dream-ref-stats li{display:flex;flex-direction:column;gap:2px;min-width:0;padding:12px 16px}
.dream-ref-stats li+li{border-left:1px solid var(--ap-line)}
.dream-ref-stats b{color:#fff;font:900 24px/1.1 DreamDisplay,Arial,sans-serif}
.dream-ref-stats .is-ready b{color:var(--bb-orange)}
.dream-ref-stats span{color:#89879a;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.dream-ref-tiers{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin:0;padding:0;list-style:none}
.dream-ref-tiers li{display:flex;flex-direction:column;gap:4px;min-width:0;padding:14px 16px;background:var(--ap-box2);border:1px solid var(--ap-line);border-radius:12px}
.dream-ref-tier-no{color:var(--bb-orange);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.dream-ref-tier-needs{color:#c0c7d5;font-size:13px}
.dream-ref-tier-reward{color:#ffc94a;font-size:17px}
.dream-theme .dream-ref-empty{margin:0;padding:18px;border:1px dashed var(--ap-dash);border-radius:12px;color:#89879a;text-align:center}
.dream-ref-player{margin-top:12px;background:var(--ap-box2);border:1px solid var(--ap-line);border-radius:14px;overflow:hidden}
.dream-ref-section>h2+.dream-ref-player{margin-top:0}
.dream-ref-player-head{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;align-items:center;padding:14px 16px;border-bottom:1px dashed var(--ap-dash)}
.dream-ref-avatar{grid-row:1/3;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:radial-gradient(circle at 50% 40%,#ff953333,#03081099 72%);box-shadow:0 0 0 1px #ff953359;color:var(--bb-orange);font:800 18px DreamText,Arial,sans-serif}
.dream-theme .dream-ref-player-head h3{overflow:hidden;margin:0;color:#ffc94a;font:700 16px/1.2 DreamText,Arial,sans-serif;text-align:left;text-overflow:ellipsis;white-space:nowrap}
.dream-ref-player-head small{color:#89879a;font-size:12px}
.dream-ref-player>.dream-ref-empty{margin:12px 16px;padding:10px}
.dream-ref-chars{margin:0;padding:0;list-style:none}
.dream-ref-char{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:8px 16px;align-items:center;padding:12px 16px}
.dream-ref-char+.dream-ref-char{border-top:1px solid #ffffff10}
.dream-ref-char-info{display:flex;flex-direction:column;min-width:0}
.dream-ref-char-info b{overflow:hidden;color:#fff;font-size:15px;text-overflow:ellipsis;white-space:nowrap}
.dream-ref-char-info span{color:#89879a;font-size:12px}
.dream-ref-claims{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.dream-ref-claims .dream-action{min-height:34px;padding:0 16px;font-size:13px;white-space:nowrap}
.dream-ref-claims .dream-action[aria-busy=true]{opacity:.6;cursor:progress}
.dream-ref-state{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid #ffffff1f;border-radius:17px;color:#89879a;font-size:12px;font-weight:700}
.dream-ref-state.is-claimed{border-color:#3fbf1f66;color:#3fbf1f}
.dream-ref-state.is-taken{border-style:dashed}
.dream-theme .dream-ref-status{margin:0;font-size:14px}
.dream-ref-status:empty{display:none}
.dream-ref-status.is-ok{color:#3fbf1f}
.dream-ref-status.is-error{color:#ff5a4a}
@media(max-width:700px){
 .dream-ref-invite{padding:14px}
 .dream-ref-link{flex-direction:column}
 .dream-ref-stats li{padding:10px 8px}
 .dream-ref-stats b{font-size:20px}
 .dream-ref-stats span{font-size:10px;letter-spacing:.06em}
 .dream-ref-char{grid-template-columns:minmax(0,1fr)}
}
