:root {
    --mv-sky-50: #f2fbff;
    --mv-sky-100: #dff5ff;
    --mv-sky-300: #88d7ee;
    --mv-sky-500: #52bddc;
    --mv-sky-700: #287e9e;
    --mv-lilac-50: #f7f3ff;
    --mv-lilac-100: #ece4ff;
    --mv-lilac-400: #aa9aef;
    --mv-lilac-600: #7663c7;
    --mv-mint: #8edcc2;
    --mv-peach: #ffbd9b;
    --mv-gold: #f4ce57;
    --mv-title: #294858;
    --mv-title-deep: #1e3745;
    --mv-ink: #193142;
    --mv-muted: #607584;
    --mv-line: #c8d9df;
    --mv-surface: #f8faf9;
    --mv-shadow: 0 16px 38px rgba(31, 60, 77, .14);
}

* { letter-spacing: 0 !important; }
html, body { max-width: 100%; overflow-x: hidden; }
body.mv-game-body {
    min-height: 100vh;
    color: var(--mv-ink);
    font-family: "Pretendard Variable", Pretendard, system-ui, -apple-system, "Segoe UI", sans-serif;
    background:
        radial-gradient(circle at 8% 4%, rgba(126, 214, 240, .3), transparent 25rem),
        radial-gradient(circle at 93% 10%, rgba(181, 161, 241, .27), transparent 27rem),
        linear-gradient(180deg, #f5fcff 0%, #f8f5ff 48%, #eef9f8 100%);
}

body.mv-game-body::before,
body.mv-game-body::after {
    position: fixed;
    z-index: -1;
    content: "";
    pointer-events: none;
    opacity: .55;
    filter: blur(.2px);
}
body.mv-game-body::before {
    top: 7rem; left: -4rem; width: 13rem; height: 7rem;
    border-radius: 50%; background: rgba(255,255,255,.82); box-shadow: 8rem 2rem 0 rgba(255,255,255,.62);
}
body.mv-game-body::after {
    right: -5rem; bottom: 8rem; width: 16rem; height: 16rem;
    border: 2rem solid rgba(168, 218, 210, .18); border-radius: 50%;
}

.mv-page-shell { min-height: 100vh; padding-bottom: 3rem; }
.mv-container { width: min(1280px, calc(100% - 2rem)); margin-inline: auto; }
.mv-section-stack { display: grid; gap: 1.15rem; }
.mv-two-columns { display: grid; gap: 1.15rem; }
.mv-empty-text { color: #8597a2; font-size: .84rem; font-weight: 750; }
.mv-empty-state, .mv-error-state {
    min-height: 11rem; display: grid; place-items: center; align-content: center; gap: .6rem; padding: 1.5rem;
    color: var(--mv-muted); text-align: center;
}
.mv-empty-state > span, .mv-error-state > span {
    display: grid; width: 3rem; height: 3rem; place-items: center; border-radius: 1rem;
    color: var(--mv-sky-700); background: var(--mv-sky-100); font-size: 1.35rem; font-weight: 950;
}
.mv-empty-state strong, .mv-error-state p { margin: 0; font-size: .9rem; font-weight: 850; }

.mv-topbar {
    position: sticky; top: var(--mwr-navbar-height, 0); z-index: 50; border-bottom: 1px solid rgba(190, 215, 225, .9);
    background: rgba(246, 252, 255, .9); box-shadow: 0 4px 18px rgba(34, 69, 86, .06); backdrop-filter: blur(16px);
}
.mv-topbar-inner { min-height: 4.25rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.mv-brand { min-height: 2.75rem; display: inline-flex; align-items: center; gap: .75rem; border-radius: .8rem; }
.mv-brand-mark {
    position: relative; display: grid; width: 2.55rem; height: 2.55rem; place-items: center; overflow: hidden;
    border: 2px solid #fff; border-radius: .9rem; color: #fff; background: linear-gradient(145deg, var(--mv-sky-500), var(--mv-lilac-600));
    box-shadow: 0 7px 16px rgba(78, 147, 178, .25), inset 0 0 0 1px rgba(38,72,89,.2);
}
.mv-brand-mark::after { position: absolute; top: 3px; right: 5px; content: "✦"; color: #fff7a3; font-size: .56rem; }
.mv-brand strong { display: block; color: var(--mv-title-deep); font-size: 1rem; font-weight: 950; }
.mv-brand small { display: block; color: var(--mv-sky-700); font-size: .68rem; font-weight: 850; }
.mv-account-actions { display: flex; align-items: center; gap: .5rem; }
.mv-account-link, .mv-login-link, .mv-api-chip {
    min-height: 2.75rem; display: inline-flex; align-items: center; justify-content: center; gap: .4rem;
    border: 1px solid #cadce4; border-radius: .75rem; padding: 0 .8rem; color: #455e6d; background: rgba(255,255,255,.82);
    font-size: .76rem; font-weight: 900;
}
.mv-api-chip { display: none; color: var(--mv-sky-700); background: var(--mv-sky-50); }

.mv-command-area { padding: 1rem 0; border-bottom: 1px solid rgba(195,218,226,.75); background: rgba(255,255,255,.42); }
.mv-command-deck {
    display: grid; gap: 1rem; padding: .9rem; border: 1px solid #b8cbd3; border-radius: 1rem;
    background: linear-gradient(180deg, #eff5f6, #e0e8ea); box-shadow: inset 0 1px #fff, 0 8px 20px rgba(38, 71, 86, .08);
}
.mv-command-copy { display: flex; align-items: center; gap: .8rem; }
.mv-command-icon {
    display: grid; width: 2.75rem; height: 2.75rem; flex: 0 0 auto; place-items: center; border: 2px solid #fff;
    border-radius: .8rem; color: #fff; background: linear-gradient(145deg, #5cc8e5, #8778d5); box-shadow: 0 4px 0 rgba(39,78,97,.18);
}
.mv-command-copy h1 { margin: 0; color: var(--mv-title); font-size: 1.05rem; font-weight: 950; }
.mv-command-copy p { margin: .15rem 0 0; color: var(--mv-muted); font-size: .73rem; font-weight: 750; }
.mv-search-form { display: grid; gap: .55rem; }
.mv-search-field { position: relative; display: block; }
.mv-search-field svg { position: absolute; top: 50%; left: .85rem; width: 1.1rem; transform: translateY(-50%); color: var(--mv-sky-700); }
.mv-search-field input, .mv-search-form select {
    width: 100%; min-height: 3rem; border: 1px solid #b9ccd4; border-radius: .7rem; color: var(--mv-ink); background: #fff;
    font-size: .88rem; font-weight: 850; box-shadow: inset 0 2px 4px rgba(41,72,88,.07);
}
.mv-search-field input { padding-left: 2.6rem; }
.mv-game-button {
    min-height: 2.75rem; display: inline-flex; align-items: center; justify-content: center; gap: .45rem; border: 1px solid #287e9e;
    border-radius: .72rem; padding: 0 1rem; color: #fff; background: linear-gradient(180deg, #66cee9, #39a7ca);
    box-shadow: inset 0 1px rgba(255,255,255,.55), 0 4px 0 #267b99; font-size: .82rem; font-weight: 950;
}
.mv-game-button:hover { filter: brightness(1.03); }
.mv-game-button:active { transform: translateY(2px); box-shadow: inset 0 1px rgba(255,255,255,.5), 0 2px 0 #267b99; }
.mv-game-button.is-violet { border-color: #6754b0; background: linear-gradient(180deg, #aa98f0, #806bd1); box-shadow: inset 0 1px rgba(255,255,255,.55), 0 4px 0 #6552af; }
.mv-game-button:disabled { cursor: wait; opacity: .62; filter: grayscale(.25); }

.mv-main { padding: 1rem 0 2rem; }
.mv-notices { display: grid; gap: .55rem; margin-bottom: 1rem; }
.mv-notice {
    display: flex; align-items: flex-start; gap: .65rem; border: 1px solid #b8ddea; border-radius: .8rem; padding: .75rem .9rem;
    color: #285e73; background: #edfaff; font-size: .78rem; font-weight: 800;
}
.mv-notice.is-amber { border-color: #eed58e; color: #7b5b19; background: #fff9e7; }
.mv-notice.is-rose { border-color: #f1b8c2; color: #963448; background: #fff1f3; }
.mv-notice svg { flex: 0 0 auto; }

.mv-game-window {
    position: relative; overflow: hidden; border: 1px solid #9db3bd; border-radius: 1rem; background: rgba(248,250,249,.98);
    box-shadow: var(--mv-shadow), inset 0 0 0 1px #fff;
}
.mv-window-bar {
    min-height: 3.25rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .55rem .9rem;
    border-bottom: 1px solid #173441; color: #fff; background: linear-gradient(180deg, #3a5d6c, var(--mv-title)); box-shadow: inset 0 1px rgba(255,255,255,.24);
}
.mv-window-bar > div { min-width: 0; display: flex; align-items: baseline; gap: .6rem; }
.mv-window-bar h3 { overflow: hidden; margin: 0; font-size: .94rem; font-weight: 950; text-overflow: ellipsis; white-space: nowrap; }
.mv-window-eyebrow { color: #d8f8ff; font-size: .58rem; font-weight: 950; letter-spacing: .05em !important; }
.mv-window-spark { color: #f8e66d; font-size: .9rem; }
.mv-window-body { padding: 1rem; }
.mv-game-window.is-violet .mv-window-bar { background: linear-gradient(180deg, #665b8d, #4e456e); }
.mv-game-window.is-mint .mv-window-bar { background: linear-gradient(180deg, #417b73, #315f5a); }
.mv-game-window.is-peach .mv-window-bar { background: linear-gradient(180deg, #9b6955, #775142); }
.mv-game-window.is-danger .mv-window-bar { background: linear-gradient(180deg, #a65265, #7d3d4b); }

.mv-welcome { margin-top: .5rem; }
.mv-welcome .mv-window-body { position: relative; min-height: 23rem; display: grid; place-items: center; text-align: center; }
.mv-welcome-content { max-width: 34rem; }
.mv-welcome-icon {
    display: grid; width: 5rem; height: 5rem; margin-inline: auto; place-items: center; border: 3px solid #fff; border-radius: 1.5rem;
    color: #fff; background: linear-gradient(145deg, var(--mv-sky-500), var(--mv-lilac-600)); box-shadow: 0 10px 0 rgba(48,94,112,.16);
}
.mv-welcome h2 { margin: 1.25rem 0 .5rem; font-size: clamp(1.5rem, 5vw, 2.3rem); font-weight: 950; }
.mv-welcome p { margin: 0; color: var(--mv-muted); line-height: 1.7; font-size: .88rem; font-weight: 700; }

.mv-character-window { margin-top: .2rem; overflow: hidden; border: 1px solid #8ca8b4; border-radius: 1.1rem; box-shadow: var(--mv-shadow); }
.mv-character-titlebar {
    min-height: 3.1rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .55rem 1rem;
    border-bottom: 1px solid #173441; color: #fff; background: linear-gradient(180deg, #426878, #294858); box-shadow: inset 0 1px rgba(255,255,255,.25);
}
.mv-character-titlebar strong { font-size: .85rem; font-weight: 950; letter-spacing: .04em !important; }
.mv-character-freshness { color: #d7f8ff; font-size: .68rem; font-weight: 850; }
.mv-character-actions { min-width: 0; display: flex; align-items: center; justify-content: flex-end; gap: .65rem; }
.mv-share-button {
    min-width: 5.7rem; min-height: 2.75rem; display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; gap: .38rem;
    border: 1px solid rgba(211,235,255,.72); border-radius: .7rem; padding: 0 .72rem; color: #fff;
    background: linear-gradient(145deg, rgba(91,197,227,.92), rgba(139,117,220,.94));
    box-shadow: inset 0 1px rgba(255,255,255,.4), 0 3px 0 rgba(22,49,63,.32); font-size: .7rem; font-weight: 950;
}
.mv-share-button:hover:not(:disabled) { filter: brightness(1.08); }
.mv-share-button:active:not(:disabled) { transform: translateY(2px); box-shadow: inset 0 1px rgba(255,255,255,.35), 0 1px 0 rgba(22,49,63,.32); }
.mv-share-button:focus-visible { outline: 3px solid rgba(220,247,255,.78); outline-offset: 2px; }
.mv-share-button:disabled { cursor: wait; opacity: .62; }
.mv-share-button svg { width: 1rem; height: 1rem; }
.mv-share-button span { color: inherit; white-space: nowrap; }
.mv-character-body { display: grid; background: linear-gradient(145deg, #f3fcff, #f7f3ff); }
.mv-character-preview {
    position: relative; min-height: 17rem; display: flex; align-items: flex-end; justify-content: center; overflow: hidden; padding: 1rem;
    border-bottom: 1px solid #c5d8df; background: radial-gradient(circle at 50% 72%, rgba(93,198,224,.42), transparent 34%), linear-gradient(180deg,#edfaff,#e8f1ff);
}
.mv-character-preview::before { position: absolute; bottom: 1.6rem; width: 70%; height: 1.8rem; content: ""; border-radius: 50%; background: rgba(63,105,127,.12); filter: blur(4px); }
.mv-character-preview img { position: relative; z-index: 1; max-height: 15.5rem; width: auto; object-fit: contain; filter: drop-shadow(0 8px 5px rgba(39,72,91,.22)); }
.mv-character-preview > span { color: var(--mv-sky-700); }
.mv-profile-details { min-width: 0; padding: 1.1rem; }
.mv-profile-chips { display: flex; flex-wrap: wrap; gap: .4rem; }
.mv-profile-chips span { border: 1px solid #bedce7; border-radius: .55rem; padding: .35rem .6rem; color: #296c84; background: #ebfaff; font-size: .66rem; font-weight: 900; }
.mv-profile-chips span:nth-child(2) { border-color: #d8ccef; color: #6856ad; background: #f5f0ff; }
.mv-profile-chips span:nth-child(3) { border-color: #bae5d4; color: #28715f; background: #edfff8; }
.mv-profile-name { overflow-wrap: anywhere; margin: .8rem 0 .25rem; color: var(--mv-title-deep); font-size: clamp(1.7rem, 6vw, 2.7rem); font-weight: 950; }
.mv-profile-meta { margin: 0; color: var(--mv-muted); font-size: .78rem; font-weight: 780; }
.mv-level-row { margin-top: 1.1rem; display: flex; align-items: end; justify-content: space-between; gap: 1rem; }
.mv-level-row span { display: block; color: var(--mv-lilac-600); font-size: .62rem; font-weight: 950; }
.mv-level-row strong { display: block; margin-top: .12rem; font-size: 2.1rem; line-height: 1; font-weight: 950; }
.mv-level-row div:last-child { min-width: 0; text-align: right; }
.mv-level-row div:last-child strong { overflow-wrap: anywhere; color: var(--mv-sky-700); font-size: 1rem; }
.mv-exp-track { height: 1.05rem; margin-top: 1rem; overflow: hidden; border: 1px solid #b2c8d0; border-radius: .45rem; padding: 2px; background: #dce7ea; box-shadow: inset 0 2px 3px rgba(43,77,91,.14); }
.mv-exp-track i { display: block; height: 100%; border-radius: .28rem; background: linear-gradient(90deg,#50c4e5,#9d88e8); box-shadow: inset 0 1px rgba(255,255,255,.5); }
.mv-exp-meta { margin-top: .35rem; display: flex; justify-content: space-between; color: #687c88; font-size: .66rem; font-weight: 850; }

.mv-desktop-tabs { position: sticky; top: calc(var(--mwr-navbar-height, 0px) + 4.8rem); z-index: 40; display: none; margin: 1rem 0; }
.mv-desktop-tablist {
    display: flex; gap: .3rem; overflow-x: auto; padding: .42rem; border: 1px solid #9db4be; border-radius: .9rem;
    background: linear-gradient(180deg,#e9eff1,#d7e0e3); box-shadow: inset 0 1px #fff, 0 6px 16px rgba(34,67,84,.1); scrollbar-width: none;
}
.mv-desktop-tablist::-webkit-scrollbar { display: none; }
.mv-tab {
    min-height: 2.75rem; display: inline-flex; flex: 1 0 auto; align-items: center; justify-content: center; gap: .4rem; border: 1px solid transparent;
    border-radius: .62rem; padding: 0 .78rem; color: #5f727e; background: transparent; font-size: .74rem; font-weight: 900;
}
.mv-tab[aria-selected="true"] { border-color: #2688a9; color: #fff; background: linear-gradient(180deg,#62cce7,#3eaccd); box-shadow: inset 0 1px rgba(255,255,255,.55), 0 3px 0 #2b819e; }
.mv-panel[hidden], [data-equipment-pane][hidden] { display: none !important; }
.mv-panel { min-width: 0; margin-top: 1rem; }

.mv-quick-stat-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; }
.mv-quick-stat {
    position: relative; min-width: 0; overflow: hidden; border: 1px solid #bacdd5; border-radius: .85rem; padding: .9rem;
    background: linear-gradient(145deg,#fff,#f0f7f8); box-shadow: inset 0 1px #fff, 0 6px 14px rgba(38,74,91,.07);
}
.mv-quick-stat::after { position: absolute; right: -.7rem; bottom: -.8rem; width: 3.6rem; height: 3.6rem; content: ""; border-radius: 50%; background: rgba(102,199,226,.12); }
.mv-quick-stat:nth-child(2)::after { background: rgba(169,147,232,.14); }
.mv-quick-stat:nth-child(3)::after { background: rgba(244,206,87,.16); }
.mv-quick-stat:nth-child(4)::after { background: rgba(142,220,194,.16); }
.mv-quick-stat > span { position: relative; z-index: 1; display: grid; width: 2.25rem; height: 2.25rem; place-items: center; border-radius: .65rem; color: #fff; background: var(--mv-sky-500); }
.mv-quick-stat:nth-child(2) > span { background: var(--mv-lilac-600); }
.mv-quick-stat:nth-child(3) > span { background: #d8a931; }
.mv-quick-stat:nth-child(4) > span { background: #47a88c; }
.mv-quick-stat p { margin: .65rem 0 .2rem; color: var(--mv-muted); font-size: .68rem; font-weight: 900; }
.mv-quick-stat strong { position: relative; z-index: 1; display: block; overflow-wrap: anywhere; font-size: 1.1rem; font-weight: 950; }
.mv-overview-grid { display: grid; gap: 1rem; margin-top: 1rem; }
.mv-adventure-summary { display: grid; gap: .65rem; }
.mv-adventure-summary > div { border: 1px solid #cfdee3; border-radius: .7rem; padding: .8rem; background: #f5fafb; }
.mv-adventure-summary dt { color: var(--mv-muted); font-size: .68rem; font-weight: 850; }
.mv-adventure-summary dd { overflow-wrap: anywhere; margin: .35rem 0 0; font-size: 1rem; font-weight: 950; }
.mv-ability-list { display: grid; gap: .55rem; }
.mv-ability-row { border: 1px solid #ddd2f3; border-radius: .7rem; padding: .7rem; background: #f8f4ff; }
.mv-ability-row span { color: var(--mv-lilac-600); font-size: .65rem; font-weight: 950; }
.mv-ability-row p { margin: .2rem 0 0; font-size: .78rem; line-height: 1.6; font-weight: 780; }
.mv-inline-link { min-height: 2.5rem; display: inline-flex; align-items: center; gap: .35rem; border-radius: .65rem; padding: 0 .7rem; color: #2b718b; background: var(--mv-sky-100); font-size: .7rem; font-weight: 900; }

.mv-guild-banner {
    display: grid; gap: 1rem; border: 1px solid #9db7c2; border-radius: .95rem; padding: 1rem;
    color: #fff; background: linear-gradient(135deg,#315c6e,#506987 58%,#7567a7); box-shadow: var(--mv-shadow);
}
.mv-guild-banner span { color: #cceffa; font-size: .62rem; font-weight: 950; }
.mv-guild-banner h3 { margin: .25rem 0; font-size: 1.45rem; font-weight: 950; }
.mv-guild-banner p { margin: 0; color: #e5f1f6; font-size: .75rem; font-weight: 750; }
.mv-guild-banner dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .45rem; margin: 0; }
.mv-guild-banner dl div { border: 1px solid rgba(255,255,255,.17); border-radius: .65rem; padding: .65rem; background: rgba(255,255,255,.1); }
.mv-guild-banner dt { color: #d7e9ef; font-size: .6rem; font-weight: 800; }
.mv-guild-banner dd { margin: .2rem 0 0; font-size: .82rem; font-weight: 950; }
.mv-guild-skills { margin-top: 1rem; }

.mv-growth-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; }
.mv-growth-summary article {
    border: 1px solid #bccfd7; border-radius: .8rem; padding: .85rem; background: linear-gradient(145deg,#fff,#f2f8f9);
    box-shadow: inset 0 1px #fff, 0 5px 12px rgba(38,74,91,.06);
}
.mv-growth-summary span { color: var(--mv-muted); font-size: .65rem; font-weight: 900; }
.mv-growth-summary strong { display: block; overflow-wrap: anywhere; margin-top: .3rem; font-size: 1rem; font-weight: 950; }
.mv-chart-controls { display: flex; gap: .25rem; border: 1px solid #bdcdd3; border-radius: .65rem; padding: .25rem; background: #e3eaec; }
.mv-chart-controls button { min-height: 2.4rem; border: 0; border-radius: .48rem; padding: 0 .7rem; color: #647883; background: transparent; font-size: .67rem; font-weight: 900; }
.mv-chart-controls button[aria-pressed="true"] { color: #fff; background: linear-gradient(180deg,#65cce7,#3aa7c8); box-shadow: 0 2px 0 #2c829d; }
.mv-chart-area { height: 19rem; }
.mv-chart-empty { height: 100%; display: grid; place-items: center; border: 1px dashed #bbccd3; border-radius: .8rem; color: #82939c; font-size: .78rem; font-weight: 800; }
.mv-log-cards { display: grid; gap: .55rem; }
.mv-log-card { border: 1px solid #c6d5da; border-radius: .72rem; padding: .8rem; background: #f6fafb; }
.mv-log-card > div { display: flex; justify-content: space-between; gap: .7rem; }
.mv-log-card strong { font-size: .75rem; font-weight: 900; }
.mv-log-card span { color: var(--mv-lilac-600); font-size: .75rem; font-weight: 950; }
.mv-log-card p { margin: .45rem 0 0; color: var(--mv-sky-700); font-size: 1rem; font-weight: 950; }
.mv-log-table { display: none; overflow-x: auto; }
.mv-log-table table { width: 100%; border-collapse: collapse; font-size: .78rem; }
.mv-log-table th { padding: .7rem; color: #5d717c; background: #e9eff1; text-align: left; font-size: .65rem; font-weight: 950; }
.mv-log-table td { padding: .8rem .7rem; border-top: 1px solid #dae4e7; font-weight: 750; }

.mv-system-banner {
    margin-bottom: .8rem; display: flex; flex-wrap: wrap; justify-content: space-between; gap: .35rem; border: 1px solid #a9d6e5;
    border-radius: .72rem; padding: .7rem .85rem; color: #28657b; background: #ecfaff; font-size: .7rem;
}
.mv-system-banner.is-stale { border-color: #ead084; color: #78591d; background: #fff9e6; }
.mv-system-banner strong { font-weight: 900; }
.mv-system-banner span { opacity: .78; font-weight: 750; }
.mv-skeleton { border-radius: .7rem; background: linear-gradient(90deg,#dfe7e9 25%,#f8faf9 50%,#dfe7e9 75%); background-size: 200% 100%; animation: mv-shimmer 1.35s infinite; }
.mv-skeleton.is-large { height: 8rem; }
.mv-loading-grid { display: grid; gap: .6rem; }
.mv-loading-grid .mv-skeleton { height: 7rem; }
.mv-loading-copy { margin: .8rem 0 0; color: var(--mv-muted); text-align: center; font-size: .75rem; font-weight: 850; }

.mv-stat-rune-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; margin: 0; }
.mv-stat-rune { min-width: 0; border: 1px solid #c5d5db; border-radius: .7rem; padding: .75rem; background: linear-gradient(145deg,#fff,#f1f7f8); }
.mv-stat-rune dt { color: var(--mv-muted); font-size: .64rem; font-weight: 850; }
.mv-stat-rune dd { overflow-wrap: anywhere; margin: .35rem 0 0; font-size: .9rem; font-weight: 950; }
.mv-gauge-list { display: grid; gap: .7rem; }
.mv-gauge-row > div:first-child { display: flex; justify-content: space-between; gap: 1rem; font-size: .72rem; }
.mv-gauge-row strong { font-weight: 900; }.mv-gauge-row span { color: var(--mv-muted); font-weight: 800; }
.mv-mini-gauge { height: .58rem; margin-top: .3rem; overflow: hidden; border: 1px solid #bed0d5; border-radius: .35rem; padding: 1px; background: #e3ebed; }
.mv-mini-gauge i { display: block; height: 100%; border-radius: .25rem; background: linear-gradient(90deg,var(--mv-mint),var(--mv-sky-500)); }
.mv-tree-grid { display: grid; gap: .55rem; }
.mv-tree-node { min-width: 0; border: 1px solid #d1dde1; border-radius: .65rem; padding: .7rem; background: #f5f8f8; }
.mv-detail-list { display: grid; gap: 0; margin: 0; }
.mv-detail-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: .48rem 0; border-bottom: 1px solid #dce5e7; }
.mv-detail-row:last-child { border-bottom: 0; }.mv-detail-row.is-stacked { display: block; }
.mv-detail-row dt { flex: 0 0 auto; color: var(--mv-muted); font-size: .66rem; font-weight: 900; }
.mv-detail-row dd { min-width: 0; overflow-wrap: anywhere; margin: 0; text-align: right; font-size: .74rem; font-weight: 800; }
.mv-detail-row.is-stacked dd { margin-top: .45rem; text-align: left; }

.mv-inventory-window {
    width: 100%; max-width: 100%; min-width: 0; overflow: hidden; border: 1px solid #7f99a4; border-radius: 1rem; background: #e7ebeb;
    box-shadow: 0 18px 45px rgba(29,54,68,.22), inset 0 0 0 1px #fff;
}
.mv-inventory-titlebar {
    min-height: 3.35rem; display: flex; align-items: center; justify-content: space-between; gap: .7rem; padding: .55rem .85rem;
    border-bottom: 1px solid #142d38; color: #fff; background: linear-gradient(180deg,#3f6574,#294957); box-shadow: inset 0 1px rgba(255,255,255,.24);
}
.mv-inventory-titlebar > div { min-width: 0; display: flex; align-items: center; gap: .5rem; }
.mv-inventory-titlebar > div > span { color: #eaf267; }
.mv-inventory-titlebar strong { font-size: .78rem; font-weight: 950; letter-spacing: .04em !important; }
.mv-inventory-titlebar small { display: none; color: #d8edf3; font-size: .62rem; font-weight: 800; }
.mv-live-preset { flex: 0 0 auto; border: 1px solid rgba(255,255,255,.2); border-radius: .5rem; padding: .3rem .45rem; color: #d5f6ff; background: rgba(255,255,255,.08); font-size: .58rem; font-weight: 850; }
.mv-inventory-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .25rem; padding: .35rem .4rem 0; background: #294451; }
.mv-inventory-tabs button {
    min-width: 0; min-height: 2.7rem; border: 1px solid #536a76; border-bottom: 0; border-radius: .65rem .65rem 0 0; color: #cbd5da;
    background: linear-gradient(180deg,#6d7a86,#56636e); font-size: .75rem; font-weight: 950; box-shadow: inset 0 1px rgba(255,255,255,.22);
}
.mv-inventory-tabs button[aria-selected="true"] { border-color: #168aab; color: #fff; background: linear-gradient(180deg,#5dd1eb,#35a8ca); text-shadow: 0 1px rgba(0,0,0,.2); }
.mv-equipment-pane { min-width: 0; overflow: hidden; padding: .55rem; background: #e8ecec; }
.mv-equipment-layout { width: 100%; min-width: 0; display: grid; grid-template-columns: minmax(0,1fr); gap: .65rem; }
.mv-board-column { min-width: 0; }
.mv-inventory-board {
    display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); grid-template-rows: repeat(6,minmax(44px,1fr)); gap: 4px;
    min-height: 330px; padding: 6px; border: 1px solid #aebdc2; border-radius: .65rem; background: #f4f5f4; box-shadow: inset 0 1px #fff;
}
.mv-character-stage {
    position: relative; grid-column: 3 / 6; grid-row: 1 / 5; min-width: 0; display: flex; flex-direction: column; align-items: center; justify-content: flex-end;
    overflow: hidden; border: 1px solid #d8e0e2; border-radius: .65rem; padding: .35rem; background: radial-gradient(circle at 50% 70%,rgba(83,198,225,.3),transparent 38%),linear-gradient(180deg,#fff,#edf8fb);
}
.mv-character-stage::after { position: absolute; bottom: 1.4rem; width: 65%; height: .7rem; content: ""; border-radius: 50%; background: rgba(45,87,106,.14); filter: blur(3px); }
.mv-character-stage img { position: relative; z-index: 1; max-width: 100%; max-height: calc(100% - 1.15rem); object-fit: contain; filter: drop-shadow(0 4px 3px rgba(35,65,80,.22)); }
.mv-character-stage strong { position: relative; z-index: 2; overflow: hidden; width: 100%; color: #48616e; text-align: center; text-overflow: ellipsis; white-space: nowrap; font-size: .58rem; font-weight: 900; }
.mv-stage-spark { position: absolute; top: .4rem; right: .5rem; color: #e8c94d; font-size: .65rem; }
.mv-character-placeholder { margin-block: auto; color: #8cb8c7; font-size: 2.5rem; }
.mv-equip-slot {
    position: relative; min-width: 0; min-height: 44px; overflow: hidden; border: 1px solid #a9b4b9; border-radius: .45rem; padding: 10px 2px 2px;
    color: #687980; background: linear-gradient(145deg,#d9d7d2,#c6c4bf); box-shadow: inset 1px 1px rgba(255,255,255,.66), inset -1px -1px rgba(78,92,98,.18);
}
.mv-equip-slot.is-filled { background: linear-gradient(145deg,#f9fbfb,#dfe6e8); }
.mv-equip-slot img { display: block; width: 78%; height: 78%; margin: auto; object-fit: contain; image-rendering: auto; }
.mv-equip-slot > i { display: block; width: 42%; height: 42%; margin: auto; border: 1px solid rgba(79,97,105,.13); border-radius: 50%; }
.mv-slot-label { position: absolute; top: 2px; left: 3px; overflow: hidden; max-width: calc(100% - 6px); font-size: clamp(.38rem,1.7vw,.53rem); font-weight: 950; line-height: 1; text-overflow: ellipsis; white-space: nowrap; }
.mv-starforce { position: absolute; right: 2px; bottom: 1px; border-radius: .22rem; padding: 1px 2px; color: #6d5000; background: rgba(255,230,108,.92); font-size: .42rem; font-weight: 950; }
.mv-grade-dot { position: absolute; top: 2px; right: 2px; width: 5px; height: 5px; border-radius: 50%; background: #aeb8bd; }
.mv-equip-slot.is-rare { border-color: #4ba6e7; box-shadow: inset 0 0 0 1px #c9eaff; }.mv-equip-slot.is-rare .mv-grade-dot { background: #318fd7; }
.mv-equip-slot.is-epic { border-color: #9d5fe0; box-shadow: inset 0 0 0 1px #ead8ff; }.mv-equip-slot.is-epic .mv-grade-dot { background: #8d46d0; }
.mv-equip-slot.is-unique { border-color: #d2a900; box-shadow: inset 0 0 0 1px #fff0a3; }.mv-equip-slot.is-unique .mv-grade-dot { background: #e2bc16; }
.mv-equip-slot.is-legendary { border-color: #70aa20; box-shadow: inset 0 0 0 1px #dcf5a8; }.mv-equip-slot.is-legendary .mv-grade-dot { background: #7caf28; }
.mv-equip-slot.is-selected { outline: 3px solid rgba(72,193,226,.32); outline-offset: 1px; border-color: #168bad; background: #eefcff; }
.mv-equip-slot[data-slot-key="ring1"] { grid-column:1;grid-row:1}.mv-equip-slot[data-slot-key="pendant1"]{grid-column:2;grid-row:1}.mv-equip-slot[data-slot-key="hat"]{grid-column:6;grid-row:1}.mv-equip-slot[data-slot-key="cape"]{grid-column:7;grid-row:1}
.mv-equip-slot[data-slot-key="ring2"] { grid-column:1;grid-row:2}.mv-equip-slot[data-slot-key="face"]{grid-column:2;grid-row:2}.mv-equip-slot[data-slot-key="top"]{grid-column:6;grid-row:2}.mv-equip-slot[data-slot-key="shoulder"]{grid-column:7;grid-row:2}
.mv-equip-slot[data-slot-key="ring3"] { grid-column:1;grid-row:3}.mv-equip-slot[data-slot-key="eye"]{grid-column:2;grid-row:3}.mv-equip-slot[data-slot-key="overall"]{grid-column:6;grid-row:2 / span 2;z-index:2}.mv-equip-slot[data-slot-key="bottom"]{grid-column:6;grid-row:3}.mv-equip-slot[data-slot-key="gloves"]{grid-column:7;grid-row:3}
.mv-equip-slot[data-slot-key="ring4"] { grid-column:1;grid-row:4}.mv-equip-slot[data-slot-key="ear"]{grid-column:2;grid-row:4}.mv-equip-slot[data-slot-key="shoes"]{grid-column:6;grid-row:4}.mv-equip-slot[data-slot-key="belt"]{grid-column:7;grid-row:4}
.mv-equip-slot[data-slot-key="pocket"]{grid-column:1;grid-row:5}.mv-equip-slot[data-slot-key="pendant2"]{grid-column:2;grid-row:5}.mv-equip-slot[data-slot-key="weapon"]{grid-column:3;grid-row:5}.mv-equip-slot[data-slot-key="secondary"]{grid-column:4;grid-row:5}.mv-equip-slot[data-slot-key="emblem"]{grid-column:5;grid-row:5}.mv-equip-slot[data-slot-key="badge"]{grid-column:6;grid-row:5}.mv-equip-slot[data-slot-key="medal"]{grid-column:7;grid-row:5}
.mv-equip-slot[data-slot-key="title"]{grid-column:1;grid-row:6}.mv-equip-slot[data-slot-key="android"]{grid-column:2;grid-row:6}.mv-equip-slot[data-slot-key="heart"]{grid-column:3;grid-row:6}
.mv-preset-row {
    min-height: 3.15rem; display: grid; grid-template-columns: auto repeat(4,minmax(0,1fr)); align-items: center; gap: .28rem; margin-top: .45rem;
    border: 1px solid #aebdc2; border-radius: .7rem; padding: .35rem; background: #dbe2e4; box-shadow: inset 0 1px #fff;
}
.mv-preset-row > span { padding-inline: .3rem; color: #708088; font-size: .55rem; font-weight: 950; }
.mv-preset-row button { position: relative; min-height: 2.35rem; border: 1px solid #a6b4ba; border-radius: .5rem; color: #5d6d75; background: linear-gradient(180deg,#f6f8f8,#cfd8db); font-size: .72rem; font-weight: 950; box-shadow: inset 0 1px #fff; }
.mv-preset-row button.is-selected { border-color: #297f9c; color: #fff; background: linear-gradient(180deg,#69cce5,#42a7c6); box-shadow: 0 2px 0 #2c819d; }
.mv-preset-row button i { position: absolute; top: -6px; right: -4px; border-radius: .3rem; padding: 1px 3px; color: #674e00; background: #ffe46d; font-size: .42rem; font-style: normal; }
.mv-other-equipment { margin-top: .45rem; border: 1px solid #b8c6ca; border-radius: .65rem; padding: .55rem; background: #f2f5f5; }
.mv-other-equipment > strong { color: #61747d; font-size: .65rem; font-weight: 900; }
.mv-other-equipment > div { display: flex; gap: .35rem; overflow-x: auto; margin-top: .4rem; padding-bottom: .2rem; }
.mv-other-item { min-width: 5rem; min-height: 4.5rem; display: flex; flex-direction: column; align-items: center; justify-content: center; border: 1px solid #b8c6cb; border-radius: .5rem; background: #fff; }
.mv-other-item img { width: 2.5rem; height: 2.5rem; object-fit: contain; }.mv-other-item span { max-width: 4.5rem; overflow: hidden; margin-top: .2rem; font-size: .52rem; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }
.mv-equipment-detail-panel { display: none; min-width: 0; overflow: auto; border: 1px solid #142c37; border-radius: .7rem; background: #25343d; box-shadow: inset 0 1px rgba(255,255,255,.08); }
.mv-item-detail { padding: .75rem; }
.mv-item-detail-head { display: grid; grid-template-columns: 4.2rem minmax(0,1fr); gap: .7rem; align-items: center; border: 1px solid #c5d2d6; border-radius: .7rem; padding: .65rem; background: linear-gradient(145deg,#fff,#edf3f4); }
.mv-item-detail-head.is-rare { border-color: #55a9e3; }.mv-item-detail-head.is-epic { border-color: #9a64dd; }.mv-item-detail-head.is-unique { border-color: #d2ae1c; }.mv-item-detail-head.is-legendary { border-color: #77a934; }
.mv-detail-icon { display: grid; width: 4.2rem; height: 4.2rem; place-items: center; border: 1px solid #b9c7cc; border-radius: .55rem; background: #e8edef; font-size: 1.3rem; }
.mv-detail-icon img { max-width: 90%; max-height: 90%; object-fit: contain; }
.mv-item-detail-head span { color: var(--mv-muted); font-size: .6rem; font-weight: 850; }
.mv-item-detail-head h4 { overflow-wrap: anywhere; margin: .18rem 0 .35rem; font-size: .95rem; font-weight: 950; }
.mv-grade-badges { display: flex; flex-wrap: wrap; gap: .25rem; }
.mv-grade-badges b { border-radius: .35rem; padding: .18rem .32rem; color: #536771; background: #e1e8ea; font-size: .5rem; font-weight: 900; }
.mv-item-description { margin: .65rem 0 0; border: 1px solid #d2dde0; border-radius: .55rem; padding: .55rem; color: #5c707a; background: #f3f7f7; font-size: .68rem; line-height: 1.55; font-weight: 720; }
.mv-item-detail-section { margin-top: .6rem; border: 1px solid #cbd8dc; border-radius: .58rem; padding: .6rem; background: #fff; }
.mv-item-detail-section h5 { margin: 0 0 .4rem; color: #48616e; font-size: .67rem; font-weight: 950; }
.mv-item-detail-section ul { display: grid; gap: .3rem; margin: 0; padding: 0; list-style: none; }
.mv-item-detail-section li { border-radius: .4rem; padding: .36rem .45rem; color: #49606c; background: #eef4f5; font-size: .68rem; font-weight: 800; }
.mv-item-detail-section.is-potential { border-color: #b7d9a2; background: #f8fff3; }.mv-item-detail-section.is-additional { border-color: #d6c0ef; background: #fbf7ff; }.mv-item-detail-section.is-soul { border-color: #e6c4a9; background: #fff8f2; }
.mv-item-tooltip { min-height: 100%; color: #edf6fa; background: radial-gradient(circle at 85% 35%,rgba(122,96,170,.17),transparent 34%),linear-gradient(180deg,#34454f,#26343d 65%,#213039); }
.mv-tooltip-stars { min-height: 1.7rem; display: flex; align-items: center; justify-content: center; gap: .35rem; overflow-wrap: anywhere; color: #ffe23f; text-align: center; text-shadow: 0 1px #745b00; font-size: .72rem; letter-spacing: .08em !important; }
.mv-tooltip-stars b { border-radius: .3rem; padding: .1rem .25rem; color: #fff3a2; background: rgba(255,225,63,.13); font-size: .55rem; }
.mv-tooltip-title { margin: .15rem 0 .7rem; padding: .55rem 0; border-top: 1px solid #49606b; border-bottom: 1px solid #172a33; text-align: center; box-shadow: 0 1px rgba(255,255,255,.07); }
.mv-tooltip-title h3 { margin: 0; color: #fff; font-size: 1.05rem; font-weight: 950; text-shadow: 0 2px rgba(0,0,0,.4); }
.mv-tooltip-title span { display: block; margin-top: .2rem; color: #ffae30; font-size: .65rem; font-weight: 900; }
.mv-item-tooltip .mv-item-detail-head { border-color: #536772; color: #edf6fa; background: rgba(15,29,37,.4); box-shadow: inset 0 1px rgba(255,255,255,.08); }
.mv-item-tooltip .mv-item-detail-head span { color: #b8c8cf; }.mv-item-tooltip .mv-item-detail-head h4 { color: #aebdc4; font-size: .85rem; }
.mv-item-tooltip .mv-detail-icon { border-color: #697a83; background: linear-gradient(145deg,#cfd6d8,#8f9aa0); box-shadow: inset 0 1px #fff,0 2px 5px rgba(0,0,0,.35); }
.mv-item-tooltip .mv-grade-badges b { color: #e5eef2; background: #495b65; }
.mv-item-tooltip .mv-item-description { border-color: #465b65; color: #cbd9df; background: rgba(11,24,31,.34); }
.mv-item-tooltip .mv-item-detail-section { border-color: #465b65; color: #dce8ed; background: rgba(14,27,34,.38); }
.mv-item-tooltip .mv-item-detail-section h5 { color: #d5e2e8; }.mv-item-tooltip .mv-item-detail-section li { color: #e6f0f3; background: rgba(255,255,255,.06); }
.mv-item-tooltip .mv-item-detail-section.is-potential { border-color: #8bad23; background: rgba(110,153,25,.09); }.mv-item-tooltip .mv-item-detail-section.is-potential h5,.mv-item-tooltip .mv-item-detail-section.is-potential li { color: #c8f12e; }
.mv-item-tooltip .mv-item-detail-section.is-additional { border-color: #8b61ce; background: rgba(132,88,195,.1); }.mv-item-tooltip .mv-item-detail-section.is-additional h5,.mv-item-tooltip .mv-item-detail-section.is-additional li { color: #d69bff; }
.mv-item-tooltip .mv-item-detail-section.is-soul { border-color: #c98348; background: rgba(197,111,50,.1); }.mv-item-tooltip .mv-detail-list dt { color: #aebfc6; }.mv-item-tooltip .mv-detail-list dd { color: #edf5f8; }
.mv-item-options { margin-top: .7rem; padding: .6rem 0; border-top: 1px solid #172a33; border-bottom: 1px solid #4a606a; box-shadow: inset 0 1px rgba(255,255,255,.05); }
.mv-item-options h5 { margin: 0 0 .5rem; color: #fff; font-size: .72rem; font-weight: 950; }.mv-item-options h5 small { display: block; margin-top: .15rem; color: #9eb0b8; font-size: .52rem; font-weight: 750; }
.mv-option-legend { display: flex; flex-wrap: wrap; gap: .25rem .45rem; margin-bottom: .45rem; }.mv-option-legend span { display: inline-flex; align-items: center; gap: .2rem; color: #cbd8dd; font-size: .5rem; font-weight: 850; }.mv-option-legend i { width: .45rem; height: .45rem; border-radius: .12rem; background: currentColor; }
.mv-item-options dl { display: grid; gap: .2rem; margin: 0; }.mv-item-options dl > div { display: grid; grid-template-columns: minmax(6rem,.7fr) minmax(0,1.3fr); gap: .45rem; align-items: baseline; }.mv-item-options dt { color: #f0f5f7; font-size: .68rem; font-weight: 850; }.mv-item-options dd { min-width: 0; margin: 0; text-align: right; font-size: .68rem; font-weight: 850; }.mv-item-options dd strong { color: #fff; }.mv-item-options dd small { display: inline-flex; flex-wrap: wrap; justify-content: flex-end; gap: .12rem; margin-left: .28rem; }.mv-item-options dd small b { color: #7e9098; }
.mv-item-options .is-base { color: #f1f5f7; }.mv-item-options .is-add { color: #9bea36; }.mv-item-options .is-scroll { color: #c784ff; }.mv-item-options .is-star { color: #ffe047; }.mv-item-options .is-special,.mv-item-options .is-residual { color: #68eadc; }
.mv-detail-empty { min-height: 17rem; display: grid; place-items: center; align-content: center; gap: .45rem; padding: 1rem; color: #71848d; text-align: center; }
.mv-detail-empty > span { color: #72bfd6; font-size: 2rem; }.mv-detail-empty strong { font-size: .8rem; }.mv-detail-empty p { max-width: 13rem; margin: 0; font-size: .67rem; line-height: 1.5; }
.mv-set-list { display: grid; gap: .55rem; }
.mv-set-list > article { display: grid; grid-template-columns: 2rem minmax(0,1fr); gap: .55rem; border: 1px solid #b9cbc7; border-radius: .65rem; padding: .6rem; background: #f7fbf9; }
.mv-set-list > article > span { display: grid; width: 2rem; height: 2rem; place-items: center; border-radius: .55rem; color: #fff; background: #4ca78c; font-size: .7rem; font-weight: 950; }
.mv-special-grid { display: grid; gap: .6rem; }
.mv-special-grid > article { border: 1px solid #c4cfd3; border-radius: .65rem; padding: .7rem; background: #f7f9f9; }
.mv-special-grid h4 { margin: 0 0 .55rem; color: #526873; font-size: .72rem; font-weight: 950; }

.mv-skill-book { overflow: hidden; border: 1px solid #bccdd4; border-radius: .75rem; background: #f7fafb; }
.mv-skill-book + .mv-skill-book { margin-top: .55rem; }
.mv-skill-book summary { min-height: 3.2rem; display: grid; grid-template-columns: 2.5rem 1fr auto; align-items: center; gap: .55rem; padding: .5rem .7rem; cursor: pointer; list-style: none; }
.mv-skill-book summary::-webkit-details-marker { display: none; }
.mv-skill-book summary > span { display: grid; width: 2.3rem; height: 2.3rem; place-items: center; border-radius: .55rem; color: #fff; background: linear-gradient(145deg,var(--mv-sky-500),var(--mv-lilac-600)); font-size: .65rem; font-weight: 950; }
.mv-skill-book summary strong { font-size: .75rem; font-weight: 950; }.mv-skill-book summary small { color: var(--mv-muted); font-size: .6rem; font-weight: 850; }
.mv-skill-book > div { display: grid; gap: .55rem; padding: .65rem; border-top: 1px solid #cfdbdf; background: #fff; }
.mv-skill-card { display: grid; grid-template-columns: 2.8rem minmax(0,1fr); gap: .55rem; border: 1px solid #d0dcdf; border-radius: .65rem; padding: .6rem; background: #f7fafb; }
.mv-skill-icon { grid-row: 1 / 3; display: grid; width: 2.8rem; height: 2.8rem; place-items: center; overflow: hidden; border: 1px solid #b5c7ce; border-radius: .55rem; color: #8a72d0; background: #e9f2f4; }
.mv-skill-icon img { width: 100%; height: 100%; object-fit: contain; }.mv-skill-card h4 { overflow-wrap: anywhere; margin: 0; font-size: .72rem; font-weight: 950; }.mv-skill-card b { color: var(--mv-lilac-600); font-size: .6rem; }
.mv-skill-card p { grid-column: 1 / -1; margin: 0; color: #61747d; font-size: .65rem; line-height: 1.55; font-weight: 720; }.mv-skill-card small { grid-column: 1 / -1; border-radius: .45rem; padding: .45rem; color: #2d6d82; background: #edfaff; font-size: .6rem; line-height: 1.5; font-weight: 780; }
.mv-union-board { overflow: hidden; border: 1px solid #9aaeb8; border-radius: .95rem; background: #e4e9ea; box-shadow: var(--mv-shadow); }
.mv-union-board header { padding: .8rem 1rem; color: #fff; background: linear-gradient(135deg,#405f6d,#66588c); }.mv-union-board header span { display: block; color: #dff7ff; font-size: .6rem; font-weight: 950; }.mv-union-board header strong { display: block; margin-top: .2rem; font-size: 1.15rem; font-weight: 950; }
.mv-union-board > div { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .4rem; padding: .55rem; }.mv-union-board article { border: 1px solid #bdcbd0; border-radius: .6rem; padding: .7rem; background: #f8fafa; }.mv-union-board article span { color: var(--mv-muted); font-size: .6rem; font-weight: 850; }.mv-union-board article strong { display: block; overflow-wrap: anywhere; margin-top: .25rem; font-size: .88rem; font-weight: 950; }
.mv-dressing-room { overflow: hidden; border: 1px solid #9b91bd; border-radius: 1rem; background: #f4efff; box-shadow: var(--mv-shadow); }.mv-dressing-room > header { padding: .75rem 1rem; color: #fff; background: linear-gradient(135deg,#645989,#856fc1); }.mv-dressing-room header span { display: block; color: #f1eaff; font-size: .6rem; font-weight: 950; }.mv-dressing-room header strong { display: block; margin-top: .2rem; font-size: 1rem; font-weight: 950; }
.mv-style-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .45rem; padding: .6rem; }.mv-style-slot { min-width: 0; min-height: 6rem; display: flex; flex-direction: column; align-items: center; justify-content: center; border: 1px solid #c9bee5; border-radius: .65rem; padding: .45rem; color: #6858a4; background: #fff; }.mv-style-slot img { width: 3rem; height: 3rem; object-fit: contain; }.mv-style-slot strong { overflow: hidden; width: 100%; margin-top: .35rem; color: #536672; font-size: .58rem; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }

.mv-coach-intro { position: relative; overflow: hidden; border: 1px solid #9185ba; border-radius: 1rem; padding: 1rem; color: #fff; background: linear-gradient(135deg,#344e63,#655989 65%,#8068b1); box-shadow: var(--mv-shadow); }
.mv-coach-intro::after { position: absolute; right: -2rem; top: -2rem; width: 8rem; height: 8rem; content: "✦"; display: grid; place-items: center; border: 1rem solid rgba(255,255,255,.06); border-radius: 50%; color: rgba(255,239,124,.35); font-size: 2rem; }
.mv-coach-heading { position: relative; z-index: 1; }.mv-coach-heading > span { display: inline-flex; align-items: center; gap: .35rem; border-radius: .5rem; padding: .35rem .5rem; color: #41355f; background: #f2e96b; font-size: .6rem; font-weight: 950; }.mv-coach-heading h3 { margin: .75rem 0 .35rem; font-size: 1.3rem; font-weight: 950; }.mv-coach-heading p { max-width: 42rem; margin: 0; color: #e6edf4; font-size: .76rem; line-height: 1.7; font-weight: 720; }
.mv-coach-quota { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .8rem; }.mv-coach-quota span { border: 1px solid rgba(255,255,255,.16); border-radius: .5rem; padding: .35rem .5rem; background: rgba(255,255,255,.1); font-size: .62rem; font-weight: 900; }
.mv-coach-action { position: relative; z-index: 1; margin-top: .9rem; display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; }.mv-coach-action > span { color: #dae6ed; font-size: .68rem; font-weight: 750; }
.mv-login-coach { position: relative; z-index: 1; margin-top: .9rem; border: 1px solid rgba(255,255,255,.18); border-radius: .7rem; padding: .8rem; background: rgba(255,255,255,.09); text-align: center; }.mv-login-coach p { margin: 0 0 .65rem; color: #e9f0f4; font-size: .72rem; font-weight: 780; }
.mv-coach-report { border: 1px solid #9489ba; border-radius: 1rem; padding: 1.1rem; color: #fff; background: linear-gradient(135deg,#354f64,#66598a); box-shadow: var(--mv-shadow); }.mv-coach-report > span { color: #f3e76e; font-size: .62rem; font-weight: 950; }.mv-coach-report h3 { margin: .45rem 0; font-size: 1.4rem; font-weight: 950; }.mv-coach-report p { margin: 0; color: #e6edf3; font-size: .78rem; line-height: 1.7; font-weight: 720; }.mv-coach-report small { display: block; margin-top: .7rem; border-radius: .5rem; padding: .45rem; color: #dff5fc; background: rgba(255,255,255,.09); font-size: .62rem; font-weight: 800; }
.mv-report-grid { display: grid; gap: 1rem; margin-top: 1rem; }.mv-report-assessment { margin: 0; color: #526872; font-size: .75rem; line-height: 1.7; font-weight: 750; }.mv-report-label { margin: .75rem 0 .35rem; color: var(--mv-lilac-600); font-size: .64rem; font-weight: 950; }.mv-evidence-list,.mv-recommend-list,.mv-caution-list { display: grid; gap: .35rem; margin: 0; padding: 0; list-style: none; }.mv-evidence-list li,.mv-recommend-list li,.mv-caution-list li { border-radius: .5rem; padding: .5rem; color: #536872; background: #f0f5f6; font-size: .67rem; line-height: 1.5; font-weight: 770; }.mv-priority-list { display: grid; gap: .55rem; }.mv-priority-list article { border: 1px solid #dbd0f2; border-radius: .65rem; padding: .7rem; background: #f9f6ff; }.mv-priority-list span { color: var(--mv-lilac-600); font-size: .6rem; font-weight: 950; }.mv-priority-list h4 { margin: .2rem 0; font-size: .78rem; font-weight: 950; }.mv-priority-list p { margin: 0; color: #5d707a; font-size: .68rem; line-height: 1.55; font-weight: 750; }.mv-priority-list small { display: block; margin-top: .35rem; color: #7a8991; font-size: .58rem; font-weight: 760; }
.mv-chat-window .mv-window-body { padding: .8rem; }.mv-chat-log { min-height: 7rem; max-height: 28rem; overflow-y: auto; display: grid; gap: .6rem; padding: .25rem; }.mv-chat-row { display: flex; align-items: flex-start; gap: .45rem; }.mv-chat-row.is-user { flex-direction: row-reverse; }.mv-chat-avatar { display: grid; width: 2rem; height: 2rem; flex: 0 0 auto; place-items: center; border-radius: .55rem; color: #fff; background: #6b5bb0; font-size: .54rem; font-weight: 950; }.mv-chat-row.is-user .mv-chat-avatar { background: #359cbd; }.mv-chat-bubble { max-width: 85%; border: 1px solid #d4caea; border-radius: .75rem; padding: .65rem; background: #f7f3ff; }.mv-chat-row.is-user .mv-chat-bubble { border-color: #55b7d5; color: #fff; background: #3fa9c9; }.mv-chat-bubble p { margin: 0; font-size: .7rem; line-height: 1.6; font-weight: 750; }.mv-chat-evidence { display: grid; gap: .25rem; margin: .5rem 0 0; padding: .5rem 0 0; border-top: 1px solid rgba(118,99,199,.2); list-style: none; }.mv-chat-evidence li { font-size: .58rem; line-height: 1.45; }.mv-question-chips { display: flex; gap: .35rem; overflow-x: auto; margin-top: .6rem; padding-bottom: .2rem; }.mv-question-chips button { min-height: 2.6rem; flex: 0 0 auto; border: 1px solid #b9dae5; border-radius: .6rem; padding: 0 .65rem; color: #2a6f87; background: #effaff; font-size: .62rem; font-weight: 850; }.mv-chat-form { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .45rem; margin-top: .6rem; }.mv-chat-form input { width: 100%; min-height: 2.8rem; border: 1px solid #bdccd2; border-radius: .62rem; color: var(--mv-ink); background: #f8faf9; font-size: .72rem; font-weight: 750; }

.mv-trust-summary-shell { margin-top: 1rem; }.mv-community-hero { position: relative; overflow: hidden; display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; border: 1px solid #748c98; border-radius: 1rem; padding: 1rem; color: #fff; background: linear-gradient(135deg,#315765,#546a8e 58%,#7762a6); box-shadow: var(--mv-shadow); }.mv-community-hero span { color: #d9f6ff; font-size: .6rem; font-weight: 950; }.mv-community-hero h3 { margin: .3rem 0; font-size: 1.35rem; font-weight: 950; }.mv-community-hero p { margin: 0; color: #e5eef3; font-size: .72rem; line-height: 1.6; font-weight: 740; }.mv-community-hero > strong { color: #ffe260; font-size: 3.2rem; text-shadow: 0 4px rgba(0,0,0,.2); }
.mv-trust-board { border: 1px solid #9cb7c1; border-radius: 1rem; padding: .9rem; background: linear-gradient(145deg,#fff,#f0f9fb); box-shadow: var(--mv-shadow); }.mv-trust-score { display: grid; grid-template-columns: 6rem minmax(0,1fr); gap: .85rem; align-items: center; }.mv-score-orb { --score:50; display: grid; width: 6rem; height: 6rem; place-items: center; border-radius: 50%; background: conic-gradient(#58bedc calc(var(--score)*1%),#9e8be8 0 calc(var(--score)*1.15%),#dbe7ea 0); box-shadow: 0 7px 16px rgba(44,94,114,.18); }.mv-score-orb::before { grid-area:1/1; width: 4.75rem; height: 4.75rem; content:""; border-radius: 50%; background:#fff; box-shadow:inset 0 1px #fff; }.mv-score-orb span { z-index:1; grid-area:1/1; text-align:center; }.mv-score-orb b { display:block; color:#355d6e; font-size:1.55rem; font-weight:950; }.mv-score-orb small { color:#80919a; font-size:.52rem; font-weight:850; }.mv-confidence { display:inline-flex; border-radius:.4rem; padding:.25rem .4rem; color:#6554a8; background:#f0ebff; font-size:.58rem; font-weight:950; }.mv-trust-score h3 { margin:.35rem 0 .25rem; font-size:1.15rem; font-weight:950; }.mv-trust-score p { margin:0; color:#657983; font-size:.65rem; line-height:1.55; font-weight:730; }.mv-trust-components { display:grid; gap:.5rem; margin-top:.8rem; }.mv-trust-component { border:1px solid #c4d7dd; border-radius:.7rem; padding:.65rem; background:#fff; }.mv-trust-component.is-neutral { border-style:dashed; }.mv-trust-component > div:first-child { display:flex; justify-content:space-between; gap:.5rem; }.mv-trust-component span,.mv-trust-component strong { font-size:.65rem; font-weight:900; }.mv-trust-component span { color:#607680; }.mv-trust-gauge { height:.48rem; margin-top:.4rem; overflow:hidden; border-radius:.3rem; background:#e2ecef; }.mv-trust-gauge i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#62c9e4,#9b88e6); }.mv-trust-component p { margin:.35rem 0 0; color:#7a8d95; font-size:.56rem; font-weight:740; }.mv-trust-compact { display:grid; gap:.8rem; }.mv-trust-ai-status { margin:.45rem 0 0; color:#71848d; font-size:.62rem; font-weight:750; }
.mv-community-grid { display:grid; gap:1rem; }.mv-review-form { display:grid; gap:.85rem; }.mv-rating-input,.mv-tag-input { margin:0; border:0; padding:0; }.mv-rating-input legend,.mv-tag-input legend,.mv-comment-input > span { display:flex; justify-content:space-between; width:100%; margin-bottom:.45rem; color:#536873; font-size:.68rem; font-weight:950; }.mv-rating-input > div { display:flex; flex-direction:row-reverse; justify-content:flex-end; }.mv-rating-input input { position:absolute; opacity:0; pointer-events:none; }.mv-rating-input label { min-width:2.75rem; min-height:2.75rem; display:grid; place-items:center; cursor:pointer; color:#cbd7db; font-size:1.65rem; }.mv-rating-input input:checked ~ label,.mv-rating-input label:hover,.mv-rating-input label:hover ~ label { color:#f0bf28; }.mv-rating-input input:focus-visible + label { outline:3px solid rgba(73,176,208,.4); outline-offset:2px; border-radius:.5rem; }.mv-tag-input > div { display:flex; flex-wrap:wrap; gap:.4rem; }.mv-tag-input input { position:absolute; opacity:0; }.mv-tag-input span { min-height:2.65rem; display:inline-flex; align-items:center; border:1px solid #c4d5da; border-radius:.6rem; padding:0 .65rem; color:#607680; background:#f7fafb; font-size:.62rem; font-weight:850; }.mv-tag-input input:checked + span { border-color:#6b58b3; color:#fff; background:linear-gradient(180deg,#a18be9,#8068cb); }.mv-tag-input input:focus-visible + span { outline:3px solid rgba(74,184,217,.38); outline-offset:2px; }.mv-comment-input textarea,.mv-report-form textarea,.mv-report-form select { width:100%; border:1px solid #bdced4; border-radius:.65rem; color:#334e5a; background:#fff; font-size:.72rem; }.mv-comment-input textarea { min-height:8rem; resize:vertical; }.mv-review-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.55rem; }.mv-delete-review { min-height:2.75rem; border:1px solid #efb3b7; border-radius:.6rem; padding:0 .7rem; color:#a43d47; background:#fff4f4; font-size:.67rem; font-weight:900; }.mv-review-actions > span { color:#657983; font-size:.62rem; font-weight:750; }.mv-review-hidden-notice { margin:0; border-radius:.55rem; padding:.55rem; color:#805b16; background:#fff8df; font-size:.62rem; }.mv-rating-summary { display:flex; align-items:center; gap:.8rem; }.mv-rating-summary > strong { font-size:2rem; font-weight:950; }.mv-rating-summary > strong small { font-size:.65rem; }.mv-rating-summary > div span:last-child { display:block; margin-top:.2rem; color:#778991; font-size:.6rem; }.mv-stars { color:#efbd26; letter-spacing:.04em !important; white-space:nowrap; }.mv-tag-cloud,.mv-review-tags { display:flex; flex-wrap:wrap; gap:.35rem; }.mv-tag-cloud { margin-top:.8rem; }.mv-tag-cloud span,.mv-review-tags span { border:1px solid #d2c8eb; border-radius:.45rem; padding:.25rem .4rem; color:#6b58a9; background:#f7f3ff; font-size:.56rem; font-weight:850; }.mv-tag-cloud b { color:#3e8aa2; }.mv-review-list { display:grid; gap:.55rem; }.mv-review-card { position:relative; border:1px solid #c4d5da; border-radius:.72rem; padding:.75rem; background:#f8fbfc; }.mv-review-card header { display:flex; justify-content:space-between; gap:.6rem; }.mv-review-card header strong { display:block; overflow-wrap:anywhere; font-size:.72rem; font-weight:950; }.mv-review-card time { color:#809099; font-size:.55rem; }.mv-review-card .mv-review-tags { margin-top:.5rem; }.mv-review-card > p { margin:.55rem 0 0; color:#526872; font-size:.7rem; line-height:1.65; font-weight:730; white-space:pre-wrap; }.mv-review-card > button { min-height:2.5rem; margin-top:.45rem; border:0; color:#9a5360; background:transparent; font-size:.58rem; font-weight:850; }.mv-more-reviews { width:100%; min-height:2.75rem; margin-top:.65rem; border:1px solid #b8d4de; border-radius:.65rem; color:#34768e; background:#edfaff; font-size:.67rem; font-weight:900; }
.mv-report-form { display:grid; gap:.75rem; padding:.8rem; }.mv-report-form label { display:grid; gap:.35rem; color:#536873; font-size:.67rem; font-weight:900; }.mv-report-form p { margin:0; color:#7a8b93; font-size:.58rem; line-height:1.5; }
.mv-share-copy-body { display: grid; gap: .75rem; padding: .9rem; background: linear-gradient(145deg,#f3fbff,#f8f4ff); }
.mv-share-copy-body p { margin: 0; color: #536b77; font-size: .72rem; line-height: 1.6; font-weight: 780; }
.mv-share-copy-body textarea { width: 100%; min-height: 15rem; resize: vertical; border: 1px solid #b9cfd8; border-radius: .72rem; padding: .8rem; color: #263f4d; background: #fff; font: 750 .76rem/1.65 "Pretendard Variable", Pretendard, system-ui, sans-serif; box-shadow: inset 0 2px 5px rgba(39,73,91,.08); }
.mv-share-copy-body textarea:focus { border-color: var(--mv-lilac-400); outline: 3px solid rgba(170,154,239,.24); }
.mv-share-toast {
    position: fixed; right: 1rem; bottom: calc(5.25rem + env(safe-area-inset-bottom)); left: 1rem; z-index: 90;
    min-height: 3.5rem; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .7rem;
    border: 1px solid #a9cfdd; border-radius: .9rem; padding: .65rem .7rem; color: #315f70; background: rgba(239,250,255,.97);
    box-shadow: 0 16px 42px rgba(28,56,70,.24); backdrop-filter: blur(14px);
}
.mv-share-toast[hidden] { display: none; }
.mv-share-toast.is-success { border-color: #98d7c2; color: #256655; background: rgba(239,255,249,.97); }
.mv-share-toast.is-error { border-color: #d0bee9; color: #654d99; background: rgba(249,245,255,.98); }
.mv-share-toast-icon { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; border-radius: .65rem; color: #fff; background: linear-gradient(145deg,var(--mv-sky-500),var(--mv-lilac-600)); }
.mv-share-toast p { margin: 0; font-size: .72rem; line-height: 1.45; font-weight: 850; }
.mv-share-toast > button { width: 2.5rem; height: 2.5rem; border: 0; border-radius: .65rem; color: currentColor; background: rgba(255,255,255,.58); font-size: 1.1rem; }

.mv-mobile-dock {
    position: fixed; right: .55rem; bottom: calc(.55rem + env(safe-area-inset-bottom)); left: .55rem; z-index: 60;
    display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); border: 1px solid #91a9b3; border-radius: 1rem; padding: .35rem;
    background: rgba(236,243,245,.95); box-shadow: 0 12px 30px rgba(27,53,67,.28), inset 0 1px #fff; backdrop-filter: blur(15px);
}
.mv-mobile-dock button { min-width: 0; min-height: 3.2rem; overflow: hidden; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .18rem; border: 0; border-radius: .65rem; color: #647780; background: transparent; font-size: .56rem; font-weight: 900; }
.mv-mobile-dock button svg { width: 1.05rem; height: 1.05rem; }.mv-mobile-dock button.is-active { color: #fff; background: linear-gradient(180deg,#65cce6,#3ba8c8); box-shadow: 0 3px 0 #2b809b; }
.mv-more-dialog, .mv-detail-dialog, .mv-equipment-drawer { width: min(100% - 1rem, 43rem); max-height: min(86vh,50rem); margin: auto auto .5rem; overflow: hidden; border: 1px solid #809aa5; border-radius: 1rem; padding: 0; background: #edf1f2; box-shadow: 0 24px 70px rgba(20,39,50,.4); }
.mv-more-dialog::backdrop, .mv-detail-dialog::backdrop, .mv-equipment-drawer::backdrop { background: rgba(17,34,43,.55); backdrop-filter: blur(3px); }
.mv-dialog-bar { min-height: 3rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .5rem .65rem .5rem .85rem; color: #fff; background: linear-gradient(180deg,#3c6170,#294957); }.mv-dialog-bar h3 { margin: 0; font-size: .82rem; font-weight: 950; }.mv-dialog-bar button { width: 2.5rem; height: 2.5rem; border: 1px solid rgba(255,255,255,.2); border-radius: .55rem; color: #fff; background: rgba(255,255,255,.08); font-size: 1.15rem; }
.mv-dialog-scroll { max-height: calc(86vh - 3rem); overflow-y: auto; padding: .65rem; background: #f8faf9; }
.mv-more-menu { display: grid; grid-template-columns: repeat(2,1fr); gap: .55rem; padding: .65rem; }.mv-more-menu button { min-height: 5rem; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .4rem; border: 1px solid #b9cbd2; border-radius: .75rem; color: #4f6570; background: #fff; font-size: .7rem; font-weight: 900; }.mv-more-menu button.is-active { border-color: #409fbd; color: #23738f; background: #eafaff; }

@keyframes mv-shimmer { to { background-position: -200% 0; } }

@media (min-width: 640px) {
    .mv-container { width: min(1280px, calc(100% - 3rem)); }
    .mv-api-chip { display: inline-flex; }
    .mv-command-deck { grid-template-columns: minmax(0,.78fr) minmax(420px,1.22fr); align-items: center; }
    .mv-search-form { grid-template-columns: minmax(0,1fr) 7rem auto; }
    .mv-character-body { grid-template-columns: 17rem minmax(0,1fr); }
    .mv-character-preview { border-right: 1px solid #c5d8df; border-bottom: 0; }
    .mv-profile-details { padding: 1.5rem; }
    .mv-quick-stat-grid, .mv-growth-summary { grid-template-columns: repeat(4,minmax(0,1fr)); }
    .mv-overview-grid { grid-template-columns: minmax(0,1.15fr) minmax(17rem,.85fr); }
    .mv-adventure-summary { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .mv-log-cards { display: none; }.mv-log-table { display: block; }
    .mv-loading-grid { grid-template-columns: repeat(3,1fr); }
    .mv-stat-rune-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .mv-skill-book > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .mv-union-board > div { grid-template-columns: repeat(4,minmax(0,1fr)); }
    .mv-style-grid { grid-template-columns: repeat(5,minmax(0,1fr)); }
    .mv-special-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .mv-report-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .mv-trust-components { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .mv-community-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .mv-inventory-titlebar small { display: inline; }
    .mv-inventory-board { min-height: 430px; gap: 6px; padding: 8px; }
    .mv-slot-label { font-size: .52rem; }
}

@media (min-width: 768px) {
    .mv-desktop-tabs { display: block; }
    .mv-mobile-dock { display: none; }
    .mv-page-shell { padding-bottom: 2rem; }
    .mv-two-columns { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .mv-guild-banner { grid-template-columns: minmax(0,1fr) minmax(18rem,.7fr); align-items: center; }
    .mv-stat-rune-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
    .mv-style-grid { grid-template-columns: repeat(7,minmax(0,1fr)); }
    .mv-more-dialog { display: none; }
    .mv-share-toast { right: 1.5rem; bottom: 1.5rem; left: auto; width: min(26rem,calc(100% - 3rem)); }
}

@media (min-width: 1024px) {
    .mv-equipment-layout { grid-template-columns: minmax(0,1.15fr) minmax(19rem,.85fr); align-items: start; }
    .mv-equipment-detail-panel { display: block; max-height: 660px; position: sticky; top: 9.2rem; }
    .mv-inventory-board { min-height: 540px; }
    .mv-equip-slot { min-height: 62px; }
    .mv-slot-label { font-size: .58rem; }
    .mv-equipment-drawer { display: none; }
    .mv-skill-book > div { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .mv-report-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .mv-trust-components { grid-template-columns: repeat(5,minmax(0,1fr)); }
}

@media (min-width: 1280px) {
    .mv-report-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 374px) {
    .mv-container { width: min(100% - 1rem,1280px); }
    .mv-inventory-board { grid-template-rows: repeat(6,minmax(44px,1fr)); min-height: 324px; gap: 3px; padding: 4px; }
    .mv-equip-slot { min-height: 44px; }.mv-slot-label { font-size: .35rem; }.mv-preset-row > span { display: none; }.mv-preset-row { grid-template-columns: repeat(4,1fr); }
}

@media (max-width: 479px) {
    .mv-level-row { align-items: flex-start; flex-direction: column; }
    .mv-level-row div:last-child { text-align: left; }
    .mv-character-titlebar { gap: .5rem; padding-inline: .7rem; }
    .mv-character-freshness { display: none; }
    .mv-share-button { min-width: 4.9rem; padding-inline: .6rem; }
    .mv-live-preset { display: none; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
