.image-picker-dialog{width:min(620px,calc(100vw - 28px));max-height:calc(100dvh - 28px);padding:20px;border:1px solid var(--line,#d5d5cc);border-radius:var(--media-radius-large,20px);background:var(--paper,#faf8f0);color:var(--ink,#222);overflow:auto}
.image-picker-dialog::backdrop{background:#15181288}
.image-picker-dialog header,.image-picker-toolbar,.image-picker-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px}
.image-picker-dialog header{font-size:1rem;margin-bottom:18px}
.image-picker-dialog button{font:inherit;font-size:.8rem;cursor:pointer;border:1px solid var(--line,#ccc);background:transparent;color:inherit;border-radius:8px;padding:8px 12px}
.image-picker-dialog [data-picker-close]{border:0;font-size:22px;padding:0 5px}
.image-picker-toolbar{margin-bottom:14px;flex-wrap:wrap}
.image-picker-toolbar [role=group]{display:flex;gap:3px;border-radius:9px;background:#eae8df;padding:3px}
.image-picker-toolbar [data-picker-view]{border:0;background:none;padding:7px 10px}
.image-picker-toolbar [aria-pressed=true]{background:var(--paper,#faf8f0);box-shadow:0 1px 3px #0001}
.image-picker-toolbar [data-picker-upload]{background:var(--ink,#222);color:var(--paper,#faf8f0);border-color:var(--ink,#222);white-space:nowrap}
.image-picker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 10px;max-height:52dvh;overflow:auto;overscroll-behavior:contain;padding:4px}
.image-picker-dialog .image-picker-item{min-width:0;text-align:left;border:0;padding:0;border-radius:var(--media-radius-small,16px)}
.image-picker-thumb{position:relative;display:block;aspect-ratio:1;overflow:hidden;background:#edece5;border:1px solid var(--line,#ddd);border-radius:var(--media-radius-small,16px)}
.image-picker-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.image-picker-item[aria-pressed=true] .image-picker-thumb{border:2px solid var(--ink,#222);box-shadow:0 0 0 1px var(--paper,#faf8f0),0 0 0 3px var(--ink,#222)}
.image-picker-current{position:absolute;inset:auto 5px 5px;max-width:max-content;background:var(--paper,#faf8f0);color:var(--ink,#222);padding:3px 6px;border-radius:5px;font-size:.6rem;box-shadow:0 1px 3px #0001}
.image-picker-caption{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.72rem;line-height:1.4;margin:6px 2px 0}
.image-picker-dialog button:focus-visible{outline:2px solid var(--ink,#222);outline-offset:3px}
.image-picker-dialog footer{justify-content:flex-end;margin-top:16px}
.image-picker-dialog [data-picker-more],.image-picker-dialog [data-picker-retry]{margin-right:auto}
.image-picker-status,.image-picker-error{font-size:.78rem;line-height:1.5;color:var(--muted,#666)}
.image-picker-status:not(:empty),.image-picker-error:not(:empty){margin:10px 0}
.image-picker-error{color:#8f3926}
.image-picker-dialog[aria-busy=true] .image-picker-grid{pointer-events:none}
@media(max-width:520px){.image-picker-dialog{padding:16px}.image-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 8px}.image-picker-toolbar{gap:10px}.image-picker-toolbar [data-picker-view]{font-size:.74rem;padding:7px 8px}}
@media(max-width:340px){.image-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.image-picker-dialog [data-picker-use]{background:var(--ink,#222);color:var(--paper,#faf8f0);border-color:var(--ink,#222)}
.image-picker-dialog [data-picker-use]:disabled{opacity:.4;cursor:default}
