/* Profile: consistent navigation, collection cells and grouped settings. */
html[data-preview-theme] :is(#my-main,#yo-main){max-width:1060px;margin-inline:auto;gap:22px}
html[data-preview-theme] .mp-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}
.mp-segment{display:flex;flex:1;max-width:440px;gap:3px;background:#e9ede6;padding:4px;border-radius:12px}.mp-segment a{flex:1;min-height:44px;display:flex;justify-content:center;align-items:center;gap:8px;padding:8px 14px;color:#5f6b63;border-radius:9px;font:600 14px var(--font-body);text-decoration:none;white-space:nowrap}.mp-segment a>span{display:flex}.mp-segment a[aria-current=page]{background:#fffefa;color:#213b32;box-shadow:0 1px 3px #163b2c1f}.mp-role{display:flex;align-items:center;gap:7px;min-height:44px;padding:0 12px;background:transparent;border:1px solid var(--line);border-radius:10px;color:var(--ink);font:500 13px var(--font-body);cursor:pointer}.mp-role>span:last-child{display:flex}
html[data-preview-theme] .ac .mp-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:none}.mp-icon svg{width:100%;height:100%}.mp-row-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:#edf1e8;border-radius:9px;color:#42614b;flex:none}.mp-chevron{display:flex;margin-left:auto;color:#7b877a;flex:none}
html[data-preview-theme] .ac .ac-card-pair{gap:22px;margin-bottom:12px}.ac .ac-face-label{font:500 12px var(--font-body);color:var(--sub)}
html[data-preview-theme] .ac .ac-change-pin{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:6px 10px;margin-right:-8px;border:0;border-radius:9px;background:#ffffff12;color:#f5e6c1;font:500 12px var(--font-body);cursor:pointer}.ac .ac-change-pin:hover{background:#ffffff22}.ac .ac-change-pin .mp-icon{width:16px;height:16px}.ac .ac-card-foot{gap:8px}.ac .ac-pin{min-width:0}.ac .ac-pin>span:last-child{overflow-wrap:anywhere}
html[data-preview-theme] .ac .ac-heading{margin:28px 0 14px}.ac .ac-heading h2{font:600 19px/1.5 var(--font-body)}.ac .ac-heading .ac-link{display:inline-flex;align-items:center;gap:5px;font:500 13px var(--font-body);min-height:44px;padding:0 5px;color:var(--accent)}
html[data-preview-theme] .ac .ac-badge-rack,html[data-preview-theme] .ac .ac-badge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;background:#fffefa;border:1px solid #e1e6df;border-radius:16px;padding:12px;margin:0;box-shadow:none}
html[data-preview-theme] .ac .ac-badge{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:3px;padding:12px 6px;border:1px solid transparent;border-radius:12px;min-width:0;background:transparent;transition:background .15s,transform .12s;color:#263e30}
html[data-preview-theme] .ac .ac-badge:hover{background:#f1f4eb;border-color:transparent}html[data-preview-theme] .ac .ac-badge:active{transform:scale(.97);background:#e6eddf}html[data-preview-theme] .ac .ac-badge.is-pinned{background:#f0f4e8;border-color:#d4dfc8}
html[data-preview-theme] .ac .ac-badge .badge-pieces{width:100px;height:auto;margin:0}html[data-preview-theme] .ac .ac-badge b{font:600 13px/1.6 var(--font-body);text-align:center}html[data-preview-theme] .ac .ac-badge-state{display:flex;align-items:center;gap:3px;font:500 12px/1.6 var(--font-body);color:#5a6d54;margin:3px 0 0}.ac .ac-badge-state .mp-icon{width:13px;height:13px}
html[data-preview-theme] .ac .ac-filters{display:flex;gap:4px;padding:4px;background:#e9ede6;border-radius:12px;width:fit-content;margin:4px 0 20px}html[data-preview-theme] .ac .ac-filters .ac-button{min-height:44px;padding:8px 16px;border:0;border-radius:9px;background:transparent;color:#5f6b63;font:600 13px var(--font-body)}html[data-preview-theme] .ac .ac-filters .ac-button[aria-pressed=true]{background:#fffefa;color:#213b32;box-shadow:0 1px 3px #163b2c1f}
html[data-preview-theme] .ac .ac-tool-empty{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;padding:22px;gap:14px;border:1px solid #e1e6df;border-radius:16px;background:#fffefa}.ac .ac-tool-empty>.mp-icon{color:#65755c;width:26px;height:26px}.ac .ac-tool-empty p{font:400 14px/1.8 var(--font-body);margin:0}.ac .ac-tool{border-radius:12px}.ac .ac-tools{gap:10px}.ac .ac-tool-use{padding:14px 0;border-bottom:1px solid var(--line)}
.mp-settings{margin-top:12px}.mp-settings>h2{font:600 19px var(--font-body);margin:0 0 14px}
html[data-preview-theme] #my-main .ac-account{margin-top:0!important;border:1px solid #e1e6df;border-bottom:0;border-radius:16px 16px 0 0;background:#fffefa;overflow:hidden}
html[data-preview-theme] #my-main .ac-account>summary{list-style:none;display:flex;align-items:center;gap:12px;min-height:66px;padding:12px 18px;font:500 14px var(--font-body);cursor:pointer;border:0}#my-main .ac-account>summary::-webkit-details-marker{display:none}#my-main .ac-account[open]>summary .mp-chevron{transform:rotate(90deg)}#my-main .ac-account>.hy-card{border-radius:0;background:transparent;padding:18px!important}
html[data-preview-theme] #my-main .mp-settings-row{display:flex;align-items:center;gap:12px;min-height:66px;width:100%;padding:12px 18px;background:#fffefa;border:1px solid #e1e6df;border-radius:0 0 16px 16px;color:var(--ink);font:500 14px var(--font-body);text-align:left;cursor:pointer}.mp-settings-row:hover{background:#f1f4eb!important}.mp-settings-row .mp-row-icon{background:#f1eee7;color:#776d59}
.hy-body:has(#my-main) .gd__entries{max-width:1060px;margin:20px auto 0;display:grid;grid-template-columns:1fr;gap:0}.hy-body:has(#my-main) .gd__entry{display:flex;align-items:center;gap:12px;min-height:72px;padding:16px 18px;border:1px solid #e1e6df;border-radius:14px;background:#fffefa;text-decoration:none;color:var(--ink)}.hy-body:has(#my-main) .gd__entry>b,.hy-body:has(#my-main) .gd__entry b{font:500 14px/1.6 var(--font-body)}.hy-body:has(#my-main) .gd__entry small{font:400 12px/1.7 var(--font-body);color:var(--sub)}.hy-body:has(#my-main) .gd__foot{max-width:1060px;margin:20px auto;font-size:12px;line-height:2}
html[data-preview-theme] .ac .ac-dialog{width:min(520px,calc(100vw - 32px));max-height:85dvh;padding:24px;border:1px solid #dce2d7;border-radius:22px;background:#fffefa;box-shadow:0 20px 80px #14322430;color:#213b32}.ac .ac-dialog::backdrop{background:#15261f66;backdrop-filter:blur(4px)}.ac .ac-dialog-top{gap:16px;margin:0 0 12px}.ac .ac-dialog-top h2{font:600 20px/1.5 var(--font-body);margin:0;flex:1}.ac .ac-dialog-top>button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:50%;background:#edf1eb;color:#63716a}.ac .ac-badge-detail>.badge-pieces{width:150px;height:150px;margin:8px auto}.ac .ac-requirements{margin:18px 0;padding:8px 0;border-color:#e1e6df}.ac .ac-requirements li{padding:12px 0;gap:16px}.ac .ac-requirements small{max-width:55%;text-align:right}.ac .ac-status{display:inline-block;font:600 13px var(--font-body);padding:5px 10px;background:#edf2e5;border-radius:6px;color:#3c5834}.ac .ac-badge-detail .ac-primary{width:100%;min-height:48px;border:0;border-radius:12px;font:600 14px var(--font-body);background:#205441;color:#fff}.ac .ac-pin-options{display:grid;gap:0;border:1px solid #e1e6df;border-radius:12px;overflow:hidden}.ac .ac-pin-option{display:flex;align-items:center;gap:14px;min-height:76px;padding:10px 14px;width:100%;border:0;border-bottom:1px solid #e1e6df;background:none;color:#213b32;text-align:left;cursor:pointer}.ac .ac-pin-option:last-child{border:0}.ac .ac-pin-option .badge-pieces{width:56px;height:56px}.ac .ac-pin-option b{font:600 14px var(--font-body);flex:1}.ac .ac-pin-option:hover{background:#edf1eb}.ac #ac-dialog-status{font:13px/1.8 var(--font-body);color:#8b3724;background:#fff0e9;padding:12px;border-radius:8px}.ac .ac-feedback{font:13px/1.8 var(--font-body);border:1px solid #cbdcc3;background:#eef5e9;color:#305330;border-radius:10px;padding:12px 16px}
:is(.mp-navigation,.mp-settings,.ac) :is(button,a,summary):focus-visible{outline:3px solid #659978;outline-offset:3px}
@media(min-width:1100px){html[data-preview-theme] .ac .ac-badge-rack{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:750px){.mp-segment{max-width:none}.mp-segment a{font-size:12px;gap:6px;padding:8px 9px}.mp-segment a svg{width:16px;height:16px}.mp-navigation{gap:8px}.mp-role{font-size:12px;padding:0 9px}.ac .ac-card-pair{gap:20px}.ac .ac-idcard{padding:22px}.ac .ac-card-top small{font-size:9px}.ac .ac-reverse-top small{font-size:9px}html[data-preview-theme] .ac .ac-badge-rack,html[data-preview-theme] .ac .ac-badge-grid{padding:8px;gap:4px}html[data-preview-theme] .ac .ac-badge .badge-pieces{width:84px;max-width:100%}html[data-preview-theme] .ac .ac-badge b{font-size:12px}html[data-preview-theme] .ac .ac-badge-state{font-size:11px}html[data-preview-theme] .ac .ac-dialog{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:100%;max-height:88dvh;border-radius:24px 24px 0 0;padding:24px 22px max(26px,env(safe-area-inset-bottom))}.ac .ac-dialog:before{content:'';display:block;width:34px;height:4px;border-radius:4px;background:#d0d8cd;margin:-12px auto 16px}.ac .ac-heading h2{font-size:18px}html[data-preview-theme] #my-main{gap:20px}}
@media(prefers-reduced-motion:reduce){.ac *{transition:none!important}}
html[data-preview-theme] .ac .ac-person{min-width:0;flex:1}html[data-preview-theme] .ac .ac-person>strong{font-size:clamp(23px,3.2vw,32px);line-height:1.55;overflow-wrap:anywhere;letter-spacing:.04em}html[data-preview-theme] .hy-body:has(#my-main) .gd__entries{width:100%;justify-self:stretch}html[data-preview-theme] .hy-body:has(#my-main) .gd__entry{width:100%;max-width:none;box-shadow:none}html[data-preview-theme] .hy-body:has(#my-main) .gd__entry>.mp-chevron{margin-left:auto}
.mp-role[hidden]{display:none!important}
.ac-requirements li:has(.ac-source-link){display:grid;grid-template-columns:1fr auto;align-items:center}.ac-requirements .ac-source-link{grid-column:1/-1;min-height:44px;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.ac-requirements .ac-source-link::before{content:'取得した体験：';color:var(--sub)}

/* Catalog is a top-aligned page, never vertically centered by auto margins. */
html[data-preview-theme] .ac[data-collection="badges"]{margin-top:0;margin-bottom:0}
.ac .ac-portrait[data-avatar=field]{background-position:1% center}.ac .ac-portrait[data-avatar=forest]{background-position:50% center}.ac .ac-portrait[data-avatar=sea]{background-position:99% center}
.ac .ac-avatar-button{position:relative;padding:0;cursor:pointer;min-width:44px;min-height:44px}.ac .ac-avatar-edit{position:absolute;bottom:0;left:0;right:0;background:#193c36e8;color:#fff;font:500 11px/1.8 var(--font-body);text-align:center;padding:2px 0}.ac .ac-avatar-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ac .ac-avatar-option{display:flex;flex-direction:column;align-items:center;gap:10px;border:2px solid transparent;border-radius:12px;background:#f5f5ed;padding:12px 5px;color:var(--ink);font:500 13px/1.6 var(--font-body);cursor:pointer;min-width:0}.ac .ac-avatar-option[aria-pressed=true]{border-color:#39694f;background:#e8f0e4}.ac .ac-avatar-option .ac-portrait{width:min(81px,100%);height:auto;aspect-ratio:81/117;box-shadow:none;min-width:0}.ac .ac-avatar-option:disabled{opacity:.65}.ac .ac-avatar-save{margin-top:20px;width:100%;min-height:48px;border-radius:12px}.ac .ac-avatar-options button:focus-visible{outline:3px solid #427960;outline-offset:3px}

/* Explicit card actions, with the character label outside the artwork. */
.ac .ac-avatar-button{display:flex;flex-direction:column;align-items:center;gap:8px;flex:none;width:90px;border:0;background:none;color:#f5e6c1;font:500 11px/1.5 var(--font-body)}
.ac .ac-avatar-button .ac-portrait{display:block}.ac .ac-avatar-edit{position:static;background:none;color:inherit;padding:0;font:inherit;white-space:nowrap}
.ac .ac-name-edit{display:inline-flex;align-items:center;min-height:44px;padding:6px 10px;margin:2px 0 6px;border:1px solid #f5e6c144;border-radius:8px;background:#ffffff12;color:#f5e6c1;font:500 12px var(--font-body);cursor:pointer}
.ac .ac-change-pin{flex-shrink:0;white-space:nowrap}.ac .ac-card-foot{flex-wrap:wrap}
.ac .ac-name-form{display:grid;gap:12px}.ac .ac-name-form label{font:600 14px var(--font-body)}.ac .ac-name-form input{box-sizing:border-box;width:100%;min-width:0;min-height:48px;border:1px solid #829688;border-radius:10px;padding:12px;background:#fff;color:#213b32;font:16px var(--font-body)}.ac .ac-name-form input:focus-visible{outline:3px solid #659978;outline-offset:2px}.ac .ac-name-form .ac-small{margin:0}.ac .ac-name-actions{display:flex;gap:12px;margin-top:8px}.ac .ac-name-actions button{flex:1;min-height:48px;border-radius:10px;font-size:14px}.ac .ac-name-actions button:disabled{opacity:.6}

.ac-requirements .ac-source-meta{grid-column:1/-1;max-width:none;text-align:left;overflow-wrap:anywhere}.ac .ac-requirements .ac-source-link{font-size:14px}
