/* Hikos · 适配层 · 头像编辑器（src/backend/avatar_edit.js，任务 f82dcf89）。叠在核心 #dialog 之上的独立 <dialog>；
   颜色全走 kmind/tokens.css 的 --k-* 令牌，日 / 夜 / 宇宙模式都跟着主题走。 */
dialog.kmb-av-edit{border:1px solid var(--k-line,#44444f);border-radius:14px;background:var(--k-bg,#23232a);color:var(--k-ink,#eee);width:min(420px,calc(100vw - 24px));max-height:92dvh;overflow:auto;padding:20px 20px 18px;box-shadow:0 24px 80px rgba(var(--k-sh,0,0,0),.45);position:relative}
dialog.kmb-av-edit::backdrop{background:rgba(4,8,18,.55);backdrop-filter:blur(2px)}
dialog.kmb-av-edit .modal-title{margin:0 28px 4px 0;font-size:16px;font-weight:700;color:var(--k-ink)}
dialog.kmb-av-edit .modal-sub{margin:0 0 12px;font-size:12px;line-height:1.5;color:var(--k-mute,var(--k-ink2))}
dialog.kmb-av-edit .ib.close{position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:8px;border:0;background:transparent;color:var(--k-mute);cursor:pointer;font-size:14px}
dialog.kmb-av-edit .ib.close:hover{background:var(--k-hover);color:var(--k-ink)}
.kmb-ae-stage{position:relative;width:min(320px,calc(100vw - 72px));aspect-ratio:1;margin:0 auto;border-radius:12px;overflow:hidden;background:
  repeating-conic-gradient(rgba(127,127,127,.18) 0 25%,transparent 0 50%) 0 0/16px 16px;border:1px solid var(--k-line);touch-action:none;cursor:grab;outline:none;user-select:none;-webkit-user-select:none}
.kmb-ae-stage:active{cursor:grabbing}
.kmb-ae-stage:focus-visible{box-shadow:0 0 0 2px rgba(var(--k-acc-rgb,59,130,255),.7)}
.kmb-ae-stage canvas{display:block;width:100%;height:100%}
.kmb-ae-mask{position:absolute;inset:0;pointer-events:none;border-radius:50%;box-shadow:0 0 0 999px rgba(6,10,20,.42);border:1.5px solid rgba(255,255,255,.75)}
.kmb-ae-mask::after{content:"";position:absolute;inset:-1px;border-radius:50%;outline:1px dashed rgba(var(--k-acc-rgb,59,130,255),.9);outline-offset:-1px}
.kmb-ae-row{display:flex;align-items:center;gap:8px;margin-top:12px;flex-wrap:wrap}
.kmb-ae-lab{width:32px;flex:none;font-size:12px;color:var(--k-mute)}
.kmb-ae-row input[type=range]{flex:1;min-width:120px;accent-color:var(--k-acc)}
.kmb-ae-zoom-val{width:44px;text-align:right;font-size:12px;font-variant-numeric:tabular-nums;color:var(--k-ink2)}
.kmb-ae-row .outline{margin-top:0;height:30px;padding:0 10px;border-radius:8px;border:1px solid var(--k-line);color:var(--k-ink2);background:transparent;font-size:12px;cursor:pointer;white-space:nowrap}
.kmb-ae-row .outline:hover{border-color:var(--k-acc);color:var(--k-acc)}
.kmb-ae-tools{justify-content:flex-start}
.kmb-ae-tools .km-file{height:30px;padding:0 10px;font-size:12px}
dialog.kmb-av-edit .footer-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}
dialog.kmb-av-edit .footer-actions .primary{height:32px;padding:0 16px;border-radius:8px;border:0;background:var(--k-acc);color:var(--k-on-acc,#fff);font-weight:600;cursor:pointer}
dialog.kmb-av-edit .footer-actions .outline{margin-top:0;height:32px;padding:0 14px;border-radius:8px;border:1px solid var(--k-line);background:transparent;color:var(--k-ink2);cursor:pointer}
/* 核心头像表单：上传 / 拍照两个入口并排 */
.kmb-ae-files{display:flex;flex-direction:column;gap:6px}
.kmb-ae-files .km-file{justify-content:center}
@media (max-width:520px){dialog.kmb-av-edit{padding:16px 14px 14px}.kmb-ae-lab{width:28px}}
@media (prefers-reduced-motion:reduce){dialog.kmb-av-edit::backdrop{backdrop-filter:none}}
