/* Item editors use the existing DineSpark palette, typography and controls. */
.item-editor-dialog{width:min(640px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line-strong);border-radius:16px;background:var(--surface-subtle);color:var(--ink);box-shadow:0 24px 80px #191a1833;overflow:auto;overscroll-behavior:contain}
.item-editor-dialog::backdrop{background:#111a19a6}
.item-editor-dialog[open]{animation:item-dialog-enter .16s ease-out}
.item-dialog-heading{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line);background:var(--surface-subtle)}
.item-dialog-heading h2{min-width:0;margin:0;font:600 20px/1.3 'DM Sans',sans-serif;overflow-wrap:anywhere}
.item-dialog-close{flex:none;width:44px;height:44px;min-height:44px;font-size:24px;line-height:1}
.item-dialog-body{padding:20px;min-width:0}
.item-dialog-body>.editor-help{margin:0 0 20px;font-size:14px;line-height:1.5}
.item-dialog-footer{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:12px 20px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface-subtle)}
.item-dialog-feedback{flex:1;min-width:0;margin:0;color:var(--ink);font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.item-dialog-submit{flex:none}
.item-editor-dialog :is(form,.catalog-item-fields,.variant-fields,.admin-group-body,.admin-choice-main,.pizza-size-create-fields){display:grid;gap:16px;min-width:0;width:100%;margin:0;padding:0;border:0;background:transparent}
.item-editor-dialog :is(.admin-form-grid,.admin-variant-core,.admin-choice-main){grid-template-columns:minmax(0,1fr)}
.item-editor-dialog .admin-choice-main>*{grid-column:auto;grid-row:auto}
.item-editor-dialog :is(label,.admin-field,.ops-field){display:grid;gap:8px;min-width:0;font-size:14px;font-weight:600}
.item-editor-dialog :is(input:not([type=hidden]):not([type=checkbox]):not([type=range]),textarea,select){box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid var(--control-border);border-radius:8px;background:#eef2f5;color:var(--ink);font:400 16px/1.4 'DM Sans',sans-serif}
.item-editor-dialog :is(input,textarea,select):focus-visible{outline:3px solid var(--focus);outline-offset:2px;background:var(--card)}
.item-editor-dialog .admin-check,.item-editor-dialog label:has(>input[type=checkbox]){display:flex;align-items:center;gap:12px;min-height:44px}
.item-editor-dialog input[type=checkbox]{width:20px;height:20px;flex:none;accent-color:var(--ink)}
.item-editor-dialog button{min-height:44px;max-width:100%;white-space:normal;text-align:center}
.item-editor-dialog :is(.primary-button,.quiet-button,.ops-button){width:auto;margin:0;justify-content:center;padding:10px 16px;font-size:14px;line-height:1.35}
.item-editor-dialog .item-dialog-footer.has-leading-action{flex-wrap:wrap;gap:8px}
.item-editor-dialog .item-dialog-footer .admin-remove-button{width:auto;min-height:44px;margin:0 auto 0 0;padding:10px 12px;border-radius:9px;font-size:14px;line-height:1.35}
.item-editor-dialog .primary-button{justify-self:end;min-height:44px}
.item-editor-dialog .media-admin-row{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.item-editor-dialog .media-admin-row>strong{display:none}
.item-editor-dialog .admin-locale-fields{display:grid;gap:12px}
.item-editor-dialog details{min-width:0}
.item-editor-dialog details>summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:14px}
.item-editor-dialog .ops-card{margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.item-editor-dialog :is(.ops-card h2,.fulfillment-settings-form>p){margin-top:0}
.item-editor-dialog .admin-group-body{border:0}
.item-editor-dialog .is-invalid :is(input,textarea,select){border-color:var(--red);background:var(--red-soft)}
.catalog-draft-fields[hidden]{display:none!important}
:is(.admin-variant,.admin-group,.admin-choice):has(>.catalog-draft-summary){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin:0;padding:12px;border:1px solid var(--line-strong);border-radius:10px;background:var(--card);min-width:0;overflow:visible}
.admin-choice[hidden]{display:none!important}
.catalog-draft-summary{display:grid;gap:4px;min-width:0}
.catalog-draft-summary strong{font:600 14px/1.4 'DM Sans',sans-serif;overflow-wrap:anywhere}
.catalog-draft-summary span{font:400 13px/1.4 'DM Sans',sans-serif;color:var(--muted);overflow-wrap:anywhere}
.catalog-draft-actions{display:flex;flex-wrap:wrap;gap:8px}
.catalog-draft-actions>button{min-height:44px;padding:8px 12px;font-size:13px;white-space:normal}
.media-library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}
.media-library-toolbar h3{margin:0!important;font:600 18px/1.4 'DM Sans',sans-serif}
.media-library-toolbar .primary-button{width:auto;margin:0;min-height:44px;padding:10px 14px;font-size:14px}
@keyframes item-dialog-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:480px){.item-editor-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:12px}.item-dialog-heading,.item-dialog-body{padding:16px}.item-dialog-heading h2{font-size:18px}.item-dialog-footer{padding-inline:16px}.catalog-draft-actions{justify-content:flex-end}.media-library-toolbar{align-items:flex-start;flex-wrap:wrap}.catalog-draft-actions>button{padding-inline:10px}.item-editor-dialog .admin-choices-heading{grid-template-columns:1fr}}
@media(max-width:360px){.item-editor-dialog .item-dialog-footer.has-leading-action{gap:8px;padding-inline:10px}.item-editor-dialog .item-dialog-footer.has-leading-action :is(.quiet-button,.primary-button,.admin-remove-button){padding-inline:10px}}
@media(prefers-reduced-motion:reduce){.item-editor-dialog[open]{animation:none}}

.item-editor-dialog .admin-choice-search{min-height:44px!important;font-size:16px!important}

.sound-preferences{display:grid;gap:20px}.item-editor-dialog input[type=range]{width:100%;min-height:44px;accent-color:var(--ink)}


.media-crop-editor[hidden]{display:none!important}
.media-crop-editor{display:grid;gap:12px;min-width:0;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-subtle)}
.media-crop-heading{margin:0;color:var(--ink);font:700 15px/1.35 'DM Sans',sans-serif}
.media-crop-help{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.media-crop-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:14px;min-width:0}
.media-crop-edit-area{display:grid;gap:10px;min-width:0}
.media-crop-stage{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--line-strong);border-radius:10px;background:#2b211b;touch-action:none;cursor:grab;user-select:none}
.media-crop-stage:active{cursor:grabbing}
.media-crop-stage:focus-visible{outline:3px solid var(--action);outline-offset:2px}
.media-crop-stage-image{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:cover;object-position:var(--menu-crop-x,50%) var(--menu-crop-y,50%);scale:var(--menu-crop-scale,1);transform-origin:var(--menu-crop-x,50%) var(--menu-crop-y,50%);pointer-events:none}
.media-crop-stage-hint{position:absolute;inset:auto 10px 10px;padding:7px 9px;border:1px solid #ffffff66;border-radius:7px;background:#2b211be0;color:#fff;font-size:11px;line-height:1.35;text-align:center;pointer-events:none}
.media-crop-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}
.media-crop-zoom-control{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:9px!important;min-width:0;font-size:12px!important}
.media-crop-zoom-control input[type=range]{width:100%;min-width:0;min-height:44px;margin:0;accent-color:var(--action)}
.media-crop-zoom-value{min-width:42px;color:var(--link);font-size:12px;font-variant-numeric:tabular-nums;text-align:right}
.media-crop-reset{min-height:44px!important;padding:8px 11px!important;font-size:12px!important}
.media-crop-position-controls{display:flex;align-items:center;gap:10px;min-width:0}
.media-crop-position-label{color:var(--muted);font-size:12px;font-weight:700}
.media-crop-position-pad{display:flex;align-items:center;gap:6px}
.media-crop-position-button{display:grid;place-items:center;width:44px;height:44px;min-height:44px!important;padding:0!important;font-size:18px!important;font-weight:700!important}
.media-crop-position-button:disabled{opacity:.38;cursor:not-allowed}
.media-crop-previews{display:grid;grid-template-columns:minmax(0,1fr) minmax(72px,.6fr);align-items:start;gap:10px;min-width:0}
.media-crop-preview-block{display:grid;gap:6px;min-width:0}
.media-crop-preview-label{color:var(--muted);font-size:10px;font-weight:800;line-height:1.3}
.media-crop-card-preview{display:grid;grid-template-columns:minmax(54px,.8fr) minmax(0,1fr);align-items:center;gap:8px;min-height:76px;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--ink)}
.media-crop-card-image-wrap{position:relative;display:grid;place-items:center;align-self:stretch;min-width:0;min-height:76px;overflow:hidden;background:var(--line)}
.media-crop-preview-image{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--menu-crop-x,50%) var(--menu-crop-y,50%);scale:var(--menu-crop-scale,1);transform-origin:var(--menu-crop-x,50%) var(--menu-crop-y,50%)}
.media-crop-preview-placeholder{display:grid;place-items:center;min-height:54px;padding:5px;color:var(--muted);font-size:9px;line-height:1.3;text-align:center}
.media-crop-card-copy{display:grid;gap:5px;min-width:0;padding:7px 6px 7px 0}
.media-crop-preview-name{overflow:hidden;color:var(--ink);font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.media-crop-preview-price{color:var(--muted);font-size:9px;line-height:1.3}
.media-crop-reel-preview{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:9/16;max-height:180px;overflow:hidden;border:1px solid var(--line-strong);border-radius:9px;background:#2b211b;color:#fff}
.media-crop-reel-preview>.media-crop-preview-image{position:absolute;inset:0}
.media-crop-reel-preview>.media-crop-preview-placeholder{position:relative;z-index:1;color:#fff}
.media-crop-reel-shade{position:absolute;inset:38% 0 0;background:linear-gradient(180deg,transparent,#17120fe8);pointer-events:none}
.media-crop-reel-title{position:absolute;z-index:1;right:7px;bottom:8px;left:7px;overflow:hidden;color:#fff;font-size:10px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:560px){.media-crop-editor{padding:11px}.media-crop-layout{grid-template-columns:minmax(0,1fr)}.media-crop-stage{aspect-ratio:1.35}.media-crop-previews{grid-template-columns:minmax(0,1fr) minmax(78px,.55fr);gap:12px}.media-crop-reel-preview{max-height:210px}.media-crop-controls{grid-template-columns:minmax(0,1fr) auto}}
@media(max-width:360px){.media-crop-previews{grid-template-columns:minmax(0,1fr) 78px}.media-crop-zoom-control{grid-template-columns:auto minmax(0,1fr) 38px;gap:6px!important}.media-crop-reset{padding-inline:8px!important}}
@media(prefers-reduced-motion:reduce){.media-crop-stage-image,.media-crop-preview-image{transition:none}}

.media-crop-preview-block[hidden]{display:none!important}
.media-crop-stage-video,.media-crop-preview-video{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--menu-crop-x,50%) var(--menu-crop-y,50%);scale:var(--menu-crop-scale,1);transform-origin:var(--menu-crop-x,50%) var(--menu-crop-y,50%);pointer-events:none}
.media-crop-stage-video{position:absolute;inset:0;min-width:0;min-height:0}
.media-crop-editor[data-media-type=video] .media-crop-layout{grid-template-columns:minmax(0,.8fr) minmax(78px,.45fr)}
.media-crop-editor[data-media-type=video] .media-crop-stage{aspect-ratio:9/16;max-height:420px}
.media-crop-editor[data-media-type=video] .media-crop-reel-preview{max-height:260px}
@media(max-width:560px){.media-crop-editor[data-media-type=video] .media-crop-layout{grid-template-columns:minmax(0,1fr)}.media-crop-editor[data-media-type=video] .media-crop-stage{width:min(100%,280px);justify-self:center;max-height:420px}.media-crop-editor[data-media-type=video] .media-crop-reel-preview{max-height:280px}}

.media-crop-editor [hidden]{display:none!important}
