/* Riss-lit invitations, dark equipment mounts and a quiet character ledger. */
.map-invitations{position:absolute;z-index:4;left:24px;top:106px;display:flex;flex-direction:column;gap:12px;width:90px;max-height:min(45dvh,340px);padding:9px 12px 10px 4px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#557c91 transparent}
.map-invitation{position:relative;flex:none;display:grid;justify-items:center;width:68px;padding:0;border:0;background:transparent;box-shadow:none;color:#d7e9f2;isolation:isolate}
.map-invitation:hover:not(:disabled){background:transparent;border:0;box-shadow:none}
.invite-avatar{display:block;width:58px;height:62px;border:1px solid #9ac4d685;border-radius:21px 21px 17px 17px;background:radial-gradient(ellipse at 50% 20%,#44637d,#0a1524 78%);box-shadow:inset 0 0 0 3px #0b1728,0 5px 14px #0008;overflow:hidden}
.invite-avatar img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0;transform:scale(1.85);transform-origin:50% 0}
.invite-bubble{position:absolute;top:-9px;right:-6px;display:grid;place-items:center;width:32px;height:35px;padding-bottom:6px;background:url('/assets/art/rift-v022/invitation-bubble.svg') center/100% 100% no-repeat;color:#ff6969;font:800 23px/1 Georgia;text-shadow:0 0 9px #ff494966;filter:drop-shadow(0 3px 5px #0009);animation:invitation-signal 2.6s ease-in-out infinite}
.invite-name{display:block;max-width:76px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;padding:2px 5px;border-radius:4px;background:#07111ddd;color:#d4e8f2;font:10px/1.3 Georgia;text-shadow:0 1px 3px #000}
.map-invitation:hover .invite-avatar{border-color:#d2f2ff;box-shadow:inset 0 0 0 3px #12273a,0 0 16px #8cd4ef38}
@keyframes invitation-signal{0%,100%{filter:drop-shadow(0 3px 5px #0009)}50%{filter:drop-shadow(0 3px 5px #0009) drop-shadow(0 0 6px #da5c5c60)}}
.invite-sent:disabled{opacity:1;color:#9ab9ca;background:#0a1726;border-color:#7298ac55;cursor:default}
.invite-sent:before{content:'✓';margin-right:5px;color:#9cd6e7}
.dungeon-invitation{text-align:center}.invitation-scene{position:relative;height:170px;display:grid;place-items:center;margin:-8px 0 8px;background:radial-gradient(ellipse at 50% 80%,#68b8da22,transparent 65%)}
.invitation-scene:after{content:'';position:absolute;bottom:4px;left:15%;right:15%;height:3px;background:url('/assets/art/rift-v020/rift-line.svg') center/100% 100% no-repeat;opacity:.7}
.invitation-scene img{width:210px;height:165px;object-fit:contain;filter:drop-shadow(0 8px 14px #0006)}
.dungeon-invitation>h2{margin:8px 0 20px}.dungeon-invitation .companion-card{text-align:left}
.dungeon-invitation .companion-portrait img{object-position:50% 0;transform-origin:50% 0}
.invitation-message{margin:18px 4px;font:13px/1.6 system-ui;color:#b9cbd8}.invitation-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:14px 0;margin:18px 0;border-block:1px solid #8fbbd133;background:linear-gradient(90deg,transparent,#23405933,transparent)}
.invitation-facts>div+div{border-left:1px solid #8fbbd12b}.invitation-facts dt{font:9px system-ui;letter-spacing:1px;text-transform:uppercase;color:#96b1c4}.invitation-facts dd{margin:6px 0 0;font:24px Georgia;color:#d8ecf4}
.invitation-options{display:flex;gap:9px;margin-top:10px}.invitation-options button{flex:1;min-width:0;background:transparent;border-color:#91b2c538;font-size:12px}
.invitation-unavailable{padding:10px 12px;border-left:2px solid #ba9d7e;color:#d1c1ae;background:#9279540d;text-align:left;font:12px/1.5 system-ui}.invitation-gone{padding:25px 0}.invitation-gone p{color:#adc0d0;font:13px/1.6 system-ui;margin-bottom:24px}
.dungeon-invite{background:linear-gradient(140deg,#1c304445,#091523aa);border-color:#83b4cf4a;border-radius:8px}

/* Recessed metal mounts: captions stay inside each slot, separated from item art. */
.equipment-layout{gap:11px}.equipment-board{--slot-height:70px;grid-template-columns:repeat(3,78px);grid-template-rows:repeat(4,var(--slot-height));gap:9px 18px;padding:12px 9px 15px;border-bottom:1px solid #81b4cf36;background:radial-gradient(ellipse at center,#4778941a,transparent 70%)}
.equipment-portrait{opacity:.17;inset:3% 25% 7%;filter:saturate(.5)}
.equipment-board .gear-slot{width:78px;height:var(--slot-height);padding:5px 4px 18px;isolation:isolate;border:1px solid transparent;border-radius:4px;background:url('/assets/art/rift-v022/gear-mount.svg') center/100% 100% no-repeat,radial-gradient(ellipse at 50% 35%,#244157,#081321 80%);box-shadow:0 4px 9px #0005}
.equipment-board .gear-slot.empty{border-style:solid;background-image:url('/assets/art/rift-v022/gear-mount.svg'),radial-gradient(ellipse at 50% 35%,#15283b,#08111e 80%)}
.equipment-board .gear-slot .gear-art{position:static;width:44px;height:44px;flex:none;object-fit:contain;filter:drop-shadow(0 3px 4px #0007)}
.equipment-board .gear-slot .gear-slot-label{position:absolute;left:4px;right:4px;bottom:4px;padding:3px 0 1px;max-width:calc(100% - 8px);overflow:hidden;text-overflow:ellipsis;border-radius:0;border-top:1px solid #aacdd71d;background:transparent;font:8px/10px system-ui;letter-spacing:.3px;color:#b6cddd;white-space:nowrap}
.equipment-board .gear-slot small{top:5px;right:7px;padding:1px 3px;border-radius:2px;background:#081320b8;color:#c9e0ea;font:9px/1.2 system-ui}
.equipment-board .gear-slot svg{width:27px;height:29px;stroke:#7d9eb3;fill:#9cc4da08;stroke-width:1.3;opacity:.7;filter:drop-shadow(0 1px 0 #000)}
.equipment-board .gear-slot[data-quality]:before{content:'';position:absolute;top:5px;left:8px;width:15px;height:2px;background:var(--quality);box-shadow:0 0 6px color-mix(in srgb,var(--quality) 45%,transparent);opacity:.85}
.equipment-board .gear-slot.twohand:after{top:8px;left:9px;right:auto;font:16px Georgia;color:#b5d5e4;text-shadow:0 1px 3px #000}
.equipment-board .gear-slot:hover:not(:disabled){background-color:#1d354a;border-color:#9acbd366;box-shadow:0 0 13px #91d4e826,inset 0 0 16px #aaddeb0a}
.equipment-board .gear-slot:focus-visible{outline:2px solid #b3e7fa;outline-offset:2px}
.gear-wallet{color:#d4dfe7;font:17px Georgia}.gear-wallet small{color:#819cb2}.bag-heading h3{color:#d3e0e9}.bag-filters select{border-radius:5px}.gear-card{border-radius:6px}.gear-card .gear-level{border-radius:3px;background:#091524d9;color:#cde2ec}.gear-card .gear-name{color:#c2d0dc}

/* One ledger with fine separators instead of individual decorative stat boxes. */
.hero-dossier .profile-stats{gap:0;border:1px solid #83a7bf35;border-radius:6px;background:linear-gradient(120deg,#152337bb,#09131fc9);overflow:hidden}
.hero-dossier .profile-stat{display:grid;grid-template-columns:23px minmax(0,1fr);grid-template-rows:auto auto auto;gap:0 9px;min-height:86px;padding:14px 12px;text-align:left;border:0;border-radius:0;background:none;box-shadow:none}
.hero-dossier .profile-stat:nth-child(odd){border-right:1px solid #83a7bf26}.hero-dossier .profile-stat:nth-last-child(n+3){border-bottom:1px solid #83a7bf26}
.hero-dossier .profile-stat>.stat-art{grid-row:1/3;width:21px;height:26px;fill:none;stroke:#98bbcf;stroke-width:1.35;filter:none}
.hero-dossier .profile-stat strong{grid-column:2;font:25px/1.2 Georgia;color:#deebf3;font-variant-numeric:tabular-nums;letter-spacing:.2px}
.hero-dossier .profile-stat>span{grid-column:2;font:10px/1.4 system-ui;color:#a3bbce;margin:4px 0 0}
.hero-dossier .profile-stat small{grid-column:1/3;text-align:left;font:9px/1.5 system-ui;color:#7f99af;margin:8px 0 0}
.hero-dossier .profile-resources{gap:9px}.hero-dossier .profile-resource{border-radius:6px;border-color:#83a7bf35;background:linear-gradient(120deg,#152337bb,#09131fc9);box-shadow:none;padding:12px}
.hero-dossier .profile-resource .stat-art{width:23px;height:28px;fill:none;stroke-width:1.4;filter:none}.hero-dossier .life .stat-art{stroke:#c69b98}.hero-dossier .mana .stat-art{stroke:#88b9da}.hero-dossier .profile-resource strong{color:#dde9ef;font:24px Georgia;font-variant-numeric:tabular-nums}.hero-dossier .profile-resource>span{color:#9fb8cb}
@media(min-width:750px){.equipment-board{justify-content:center;column-gap:58px;--slot-height:76px;grid-template-columns:repeat(3,86px)}.equipment-board .gear-slot{width:86px}.equipment-board .gear-slot .gear-art{width:50px;height:50px}.equipment-portrait{inset:0 34%}.equipment-board .gear-slot .gear-slot-label{font-size:9px}}
@media(max-width:700px){.map-invitations{left:9px;top:101px;width:84px;padding-left:2px}.map-invitation{width:64px}.invite-avatar{width:54px;height:58px}.invite-bubble{right:-3px}.equipment-board{column-gap:12px}}
@media(max-width:360px){.equipment-board{grid-template-columns:repeat(3,68px);--slot-height:65px;padding-inline:3px;gap:8px}.equipment-board .gear-slot{width:68px}.equipment-board .gear-slot .gear-art{width:39px;height:39px}.equipment-board .gear-slot .gear-slot-label{font-size:7px;letter-spacing:0}.hero-dossier .profile-stat{padding:12px 9px;grid-template-columns:19px minmax(0,1fr);column-gap:7px}.hero-dossier .profile-stat strong{font-size:23px}.hero-dossier .profile-stat>.stat-art{width:19px}.hero-dossier .profile-resource{padding:10px 8px;gap:7px}.hero-dossier .profile-resource strong{font-size:22px}}
@media(max-height:650px){.equipment-layout{height:auto;max-height:none;min-height:0}.equipment-board{--slot-height:59px;row-gap:7px;padding-block:7px 12px}.equipment-board .gear-slot .gear-art{width:35px;height:35px}.equipment-layout .bag-scroll{flex:none;height:180px;min-height:100px}.invitation-scene{height:115px}.invitation-scene img{height:110px}.map-invitations{max-height:calc(100dvh - 210px)}}
@media(prefers-reduced-motion:reduce){.invite-bubble{animation:none}}
