#sm-launch { min-height: 44px; margin: 0 0 .5rem; }
body:not([data-stage="2"]) #sm-launch, #sm-dialog [hidden] { display: none !important; }
#sm-dialog { width: min(46rem, calc(100% - 1rem)); max-height: 92vh; max-height: 92dvh; padding: clamp(.9rem,3vw,1.6rem); overflow-y: auto; }
#sm-dialog h2 { margin: 0 2.1rem .7rem 0; }
#sm-dialog p { margin: .55rem 0; }
#sm-dialog :is(select,input:not([type="checkbox"])) { width: 100%; min-width: 0; font-size: 1rem; }
#sm-dialog :is(select,input:not([type="checkbox"]),summary,button:not(.dialog-close)) { min-height: 44px; }
#sm-dialog .field-pair { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .6rem; }
#sm-dialog label { min-width: 0; }
.sm-photo { display: grid; place-items: center; background: #eae5dc; border-radius: .5rem; overflow: hidden; margin: .65rem 0; }
#sm-image { display: block; max-width: 100%; max-height: 44vh; max-height: 44dvh; height: auto; width: auto; cursor: crosshair; touch-action: manipulation; }
.sm-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .8rem; margin: .4rem 0; }
#sm-dialog .sm-actions label { min-height: 44px; display: flex; flex-direction:row; align-items:center; gap:.4rem; }
#sm-dialog input[type="checkbox"] { width:1.2rem; height:1.2rem; }
#sm-dialog summary { cursor: pointer; padding: .6rem 0; }
#sm-status[data-error="true"] { color: #8a3620; }
