/* アバター編集・プロフィール・写真から作る */
.ae{position:relative;display:flex;flex-direction:column;gap:var(--space-2);color:var(--c-ink);min-height:0;height:100%}
.ae-pvw{flex:none}
.ae-stage{position:relative;height:214px;border-radius:var(--radius-lg);background:linear-gradient(#dff0ff,#f4f9ff 70%,#cfeaa8 70%);overflow:hidden;display:grid;place-items:end center}
.ae-fig{transform:scale(2.6);transform-origin:50% 100%;margin-bottom:24px;width:44px;height:62px;pointer-events:none}
.ae-fig.sm{transform:scale(1.7);margin:50px auto 30px}
.ae-chip{position:absolute;right:8px;top:8px;background:#fff;border-radius:999px;padding:5px 12px;font-weight:800;font-size:var(--font-sm);box-shadow:0 2px 0 rgba(31,37,71,.12)}
.ae-ref{position:absolute;left:8px;top:8px;width:64px;height:64px;border-radius:var(--radius-sm);overflow:hidden;box-shadow:0 2px 0 rgba(31,37,71,.2);border:2px solid #fff;background:#fff}
.ae-ref img{width:100%;height:100%;object-fit:cover;display:block}
.ae-ref button{position:absolute;right:0;top:0;width:24px;height:24px;border-radius:0 0 0 10px;background:rgba(31,37,71,.7);color:#fff;font-size:14px;line-height:1}
.ae-toast{position:absolute;left:8px;right:8px;bottom:8px;background:var(--c-ink);color:#fff;border-radius:var(--radius-sm);padding:8px 12px;font-size:var(--font-sm);font-weight:700;text-align:center;animation:aet 2.4s forwards}
@keyframes aet{0%{opacity:0;transform:translateY(6px)}10%,85%{opacity:1;transform:none}100%{opacity:0}}
.ae-poses{display:flex;gap:6px;justify-content:center;margin-top:6px}
.ae-poses button{min-height:36px;padding:0 14px;border-radius:999px;background:#eef2fb;font-weight:700;font-size:var(--font-xs);color:var(--c-sub)}
.ae-poses button.on{background:var(--c-aox);color:#fff}
.ae-tabs{flex:none;display:flex;gap:4px;background:#e9eefb;padding:4px;border-radius:var(--radius-md)}
.ae-tabs button{flex:1;min-height:46px;border-radius:var(--radius-sm);background:transparent;font-size:var(--font-md);font-weight:800;color:var(--c-sub);padding:0 2px;white-space:nowrap}
.ae-tabs button.on{background:#fff;color:var(--c-aox-d);box-shadow:0 2px 0 rgba(31,37,71,.1)}
.ae-body>*{flex:none}
.ae-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:var(--space-2);padding-bottom:4px}
.ae-sub{display:flex;gap:6px;overflow-x:auto;padding:2px 2px 4px;scrollbar-width:none}
.ae-sub::-webkit-scrollbar{display:none}
.ae-sub button{flex:none;min-height:44px;padding:0 16px;border-radius:999px;background:#fff;border:2px solid var(--c-line);font-size:var(--font-md);font-weight:800;color:var(--c-sub)}
.ae-sub button.on{background:var(--c-aox);border-color:var(--c-aox);color:#fff}
.ae-sub.cat button{min-height:40px;font-size:var(--font-sm);padding:0 12px}
.ae-opts{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 8px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.ae-tile{flex:none;scroll-snap-align:start;width:104px;min-height:134px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;border-radius:var(--radius-md);background:#fff;border:2px solid var(--c-line);color:var(--c-ink)}
.ae-tile b{font-size:var(--font-xs);font-weight:800;line-height:1.2;text-align:center;word-break:keep-all}
.ae-tile small{font-size:var(--font-xs);font-weight:800;color:var(--c-sub)}
.ae-tile.on{border-color:var(--c-aox);background:var(--c-aox-soft)}
.ae-tile.lock{opacity:.55}
.ae-th{position:relative;display:block;width:90px;height:90px;overflow:hidden;border-radius:10px;background:#f3f6fd;pointer-events:none}
.ae-th .rig{position:absolute;left:23px;top:6px;transform:scale(1.2);transform-origin:50% 0}
.ae-th.f .rig{left:23px;top:4px;transform:scale(1.9);transform-origin:50% 0}
.ae-th.big{width:100px;height:112px;background:#eef3fc}.ae-th.big .rig{left:28px;top:12px;transform:scale(1.5)}
.ae-th .rig *{animation:none!important}
.ae-col{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:4px 2px}
.ae-col>span{font-size:var(--font-sm);font-weight:800;min-width:64px}
.ae-sw{display:flex;gap:8px;flex-wrap:wrap}
.ae-sw button{width:44px;height:44px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 2px var(--c-line)}
.ae-sw button.on{box-shadow:0 0 0 3px var(--c-aox)}
.ae-note{margin:2px 2px;font-size:var(--font-xs);color:var(--c-sub);line-height:1.6}
.ae-note.buy{color:#8a5a00;background:var(--c-warn);padding:8px 10px;border-radius:var(--radius-sm);font-weight:700}
.ae-foot{flex:none;display:flex;gap:8px;padding-top:var(--space-2)}
.ae-foot .btn{flex:1;min-height:52px;font-size:var(--font-md);padding:0 8px}
.ae-foot .btn:disabled{opacity:.4}
.ae-confirm{position:absolute;inset:0;background:rgba(31,37,71,.55);display:grid;place-items:center;z-index:20;border-radius:var(--radius-lg)}
.ae-confirm.hide{display:none}
.ae-dlg{background:#fff;border-radius:var(--radius-lg);padding:var(--space-4);width:min(92%,340px);text-align:center;box-shadow:0 8px 24px rgba(0,0,0,.3)}
.ae-dlg h3{margin:0 0 8px;font-size:var(--font-lg)}.ae-dlg p{font-size:var(--font-sm);margin:6px 0}
.ae-two{display:flex;gap:8px;margin-top:8px}.ae-two .btn{flex:1;min-height:50px;font-size:var(--font-md)}
.ae-photo{display:flex;flex-direction:column;gap:10px;padding:2px}
.ae-photo h3{margin:0;font-size:var(--font-lg)}.ae-photo p{margin:0;font-size:var(--font-sm);line-height:1.7}
.ae-file{position:relative;display:grid;place-items:center;min-height:56px;overflow:hidden;cursor:pointer}
.ae-file input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;font-size:0}
.ae-crop{position:relative;width:260px;height:260px;max-width:100%;margin:0 auto;border-radius:var(--radius-md);overflow:hidden;background:#fff;box-shadow:0 0 0 2px var(--c-line)}
.ae-crop canvas{width:100%;height:100%;display:block;touch-action:none;cursor:grab}
.ae-guide{position:absolute;left:50%;top:48%;width:56%;height:70%;transform:translate(-50%,-50%);border:3px dashed rgba(47,109,246,.9);border-radius:50%;box-shadow:0 0 0 999px rgba(255,255,255,.38);pointer-events:none}
.ae-zoom{display:flex;align-items:center;gap:10px;font-weight:800;font-size:var(--font-sm)}.ae-zoom input{flex:1;min-height:44px}
.ae-cands{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ae-cand{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 2px;border-radius:var(--radius-md);background:#fff;border:2px solid var(--c-line);min-height:150px}
.ae-cand b{font-size:var(--font-xs);font-weight:800}
.ae-keep{display:flex;gap:8px;align-items:flex-start;font-size:var(--font-xs);line-height:1.5;color:var(--c-sub)}.ae-keep input{width:22px;height:22px;flex:none}
/* 作成画面 */
.title.make{justify-content:flex-start;overflow:auto;padding:calc(12px + var(--safe-t)) 12px calc(12px + var(--safe-b));background:var(--c-bg);color:var(--c-ink)}
.make .ae{height:calc(100dvh - 24px - var(--safe-t) - var(--safe-b));max-width:440px;width:100%;margin:0 auto}
.make h2{margin:0 0 4px;font-size:var(--font-xl)}
/* プロフィール */
.prof{display:flex;flex-direction:column;gap:var(--space-3)}
.prof .big{display:grid;place-items:end center;height:178px;border-radius:var(--radius-lg);background:linear-gradient(#dff0ff,#f4f9ff 70%,#cfeaa8 70%);overflow:hidden}
.prof .big .fig{transform:scale(2.5);transform-origin:50% 100%;margin-bottom:20px;width:44px;height:62px}
.prof .nm{font-size:var(--font-xl);font-weight:900;text-align:center;margin:0}
.prof .sub{font-size:var(--font-md);text-align:center;color:var(--c-sub);margin:0;font-weight:700}
.prof .row2{display:flex;gap:8px}.prof .row2 .btn{flex:1}
.btn.xl{min-height:56px;font-size:var(--font-lg);width:100%}
.fld{display:flex;flex-direction:column;gap:4px;font-size:var(--font-sm);font-weight:800}
.fld input.t{min-height:48px;font-size:16px;border-radius:var(--radius-sm);border:2px solid var(--c-line);padding:0 12px;width:100%}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chips button{min-height:44px;padding:0 14px;border-radius:999px;background:#fff;border:2px solid var(--c-line);font-size:var(--font-md);font-weight:800}
.chips button.on{background:var(--c-aox);border-color:var(--c-aox);color:#fff}
.sheet.tall{height:min(92dvh,760px);max-height:92dvh;display:flex;flex-direction:column;padding-bottom:calc(10px + var(--safe-b))}
.sheet.tall>#aeHost{flex:1;min-height:0}

.ae-th .rig .arm::before{display:none!important}
.ae-th .rig .p-idle .arm{rotate:0deg!important;translate:none!important;scale:1!important}
.ae-th .rig .p-idle,.ae-th .rig .p-idle .head{rotate:0deg!important;translate:none!important}
.ae-foot .btn{white-space:nowrap}.ae-foot .btn:last-child{flex:1.7}
.menu{display:flex;flex-direction:column;gap:var(--space-2)}
.menu .mi{display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;align-items:center;column-gap:12px;min-height:64px;padding:8px 14px;border-radius:var(--radius-md);background:#fff;border:2px solid var(--c-line);text-align:left}
.menu .mi i{grid-row:1/3;font-style:normal;font-size:30px;text-align:center}.menu .mi b{font-size:var(--font-lg)}.menu .mi small{font-size:var(--font-xs);color:var(--c-sub)}
