/* Social v71–v73. Frame's approved export scale in Social's exact blue-grey palette. */
#soSocialOutput{font-family:var(--mono);font-weight:400;color:var(--ink)}
#soSocialOutput *{box-sizing:border-box;font-weight:400}
#sxOwners[hidden]{display:none!important}
.sx-doorway{flex:0 0 auto;margin-top:18px;padding-top:18px;border-top:1px solid var(--line-soft)}
.sx-doorway .sx-open,.sx-doorway .sx-share-open,#soSaveLibraryWrap .so-ghost{width:100%;min-height:42px;margin:0;padding:12px 14px;font:400 13px/1.6 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.so.is-export-room .so-rail-tabs,.so.is-export-room .so-nav,.so.is-export-room .sx-doorway{display:none}
.so.is-print-room .sx-doorway{display:none}
.so.is-export-room .so-pane-wrap{flex:0 0 auto;min-height:0;overflow:visible}
.sx-panel{--cta:var(--so-accent);--cta-deep:var(--so-accent-deep);font:400 12px/1.5 var(--mono)}
.sx-panel [hidden]{display:none!important}
.sx-back{display:block;width:max-content;min-height:40px;margin:0 0 14px;padding:8px 0 5px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);font:400 13px/1.5 var(--mono);cursor:pointer}
.sx-back::before{content:'‹';display:inline-block;margin-right:7px;color:var(--so-accent)}
.sx-back:hover{border-color:var(--so-accent)}
.sx-panel h2{font:400 17px/1.5 var(--mono);letter-spacing:.08em;margin:0 0 16px;text-transform:uppercase}
.sx-panel label:not(.fx-choice-label){display:block;font:400 13px/1.5 var(--mono);letter-spacing:.04em;margin:13px 0 6px;text-transform:uppercase}
.sx-panel label[for=sxName]{font-size:14px}
.sx-panel input{width:100%;min-height:40px;padding:9px 8px;border:1px solid var(--line);border-radius:0;background:var(--paper-soft);color:var(--ink);font:400 15px/1.5 var(--mono)}
.sx-panel input:focus-visible,.sx-panel button:focus-visible{outline:2px solid var(--so-accent);outline-offset:3px}
.sx-summary{border-top:1px solid var(--line);padding-top:13px;margin:16px 0 12px;white-space:pre-line;font-size:12px}
.sx-panel .sx-export{width:100%;min-height:42px;margin:12px 0 0;padding:12px 14px;font:400 13px/1.6 var(--mono);letter-spacing:.06em;text-transform:uppercase;background:var(--so-accent);border:1px solid var(--so-accent);color:var(--paper-soft);cursor:pointer}
.sx-panel .sx-export:hover{background:var(--so-accent-deep);border-color:var(--so-accent-deep)}
.sx-panel .sx-export:disabled,.sx-panel .sx-secondary:disabled{opacity:.45;cursor:default}
.sx-actions{display:grid;gap:10px;margin-top:10px}
.sx-secondary{width:100%;min-height:42px;padding:12px 14px;font:400 13px/1.6 var(--mono);letter-spacing:.06em;text-transform:uppercase;background:transparent;border:1px solid var(--so-accent);color:var(--so-accent);cursor:pointer}
.sx-secondary:hover{background:var(--so-accent);color:var(--paper-soft)}
.sx-warning{font:400 13px/1.6 var(--mono);border-left:2px solid var(--so-accent);padding-left:9px;margin:10px 0}
.sx-result{border-top:1px solid var(--line);margin-top:15px;padding-top:16px;font:400 13px/1.5 var(--mono);display:grid;gap:12px;overflow-wrap:anywhere}
.sx-ready{font:400 14px/1.5 var(--mono);margin:0}
.sx-result-actions{display:flex;gap:6px}
.sx-result-button{width:42px;height:38px;padding:9px 11px;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);cursor:pointer}
.sx-result-button:hover{background:var(--paper-soft)}
.sx-result-button svg{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.sx-file-details{margin:0;color:var(--ink-soft)}
.sx-file-details summary{display:flex;align-items:center;gap:8px;list-style:none;font:400 13px/1.5 var(--mono);min-height:32px;width:max-content;padding:6px 0;cursor:pointer}
.sx-file-details summary::-webkit-details-marker{display:none}.sx-file-details summary::marker{content:''}
.sx-file-details p{font-size:13px;line-height:1.5;margin:8px 0 0;overflow-wrap:anywhere}
.sx-file-details .mg-tray-chev{display:inline-block;font:400 13px/1 var(--mono);transition:transform 140ms ease}
.sx-file-details:not([open]) .mg-tray-chev{transform:rotate(0deg)}.sx-file-details[open] .mg-tray-chev{transform:rotate(90deg)}
@media(any-pointer:coarse){.sx-result-button{width:44px;height:44px;padding:12px}}

/* The established Print workspace keeps every route and uses the same approved scale. */
#panePrint .so-zone-h{font:400 17px/1.5 var(--mono);letter-spacing:.08em;margin-bottom:16px}
#panePrint .so-field-label:not(.fx-choice-label){font:400 13px/1.5 var(--mono);letter-spacing:.04em;margin:13px 0 6px}
#panePrint .so-seg-btn{min-height:40px;padding:8px 4px;font:400 13px/1.5 var(--mono)}
#panePrint #printRecipeSeg .so-seg-btn{font-size:13px}
#panePrint .so-page-stepper{margin-top:0}
#panePrint .so-page-stepper button,#panePrint .so-page-stepper input{height:40px;font:400 13px/1 var(--mono)}
#panePrint .so-text-section-head{min-height:40px;padding:13px 0;font:400 13px/1.5 var(--mono)}
#panePrint .so-text-section-label{font:400 13px/1.5 var(--mono);letter-spacing:.04em}
#panePrint .so-view-step,#panePrint .so-view-fit{min-height:40px;font:400 13px/1 var(--mono)}
#panePrint .so-view-step{width:40px;height:40px}
#panePrint .so-view-row{grid-template-columns:40px minmax(0,1fr) 40px 52px}
#panePrint #btnPrintExport{width:100%;min-height:42px;margin:12px 0 0;padding:12px 14px;font:400 13px/1.6 var(--mono);letter-spacing:.06em}
#panePrint #soPrintDone{min-height:40px;font:400 13px/1.5 var(--mono)}
#panePrint label[for=sxPrintName]{display:block;font:400 14px/1.5 var(--mono);letter-spacing:.04em;margin:13px 0 6px;text-transform:uppercase}
#panePrint #sxPrintName{width:100%;min-height:40px;padding:9px 8px;border:1px solid var(--line);border-radius:0;background:var(--paper-soft);color:var(--ink);font:400 15px/1.5 var(--mono)}
#panePrint #sxPrintName:focus-visible{outline:2px solid var(--so-accent);outline-offset:3px}
#panePrint .sx-print-result{border-top:1px solid var(--line);margin-top:15px;padding-top:16px;font:400 13px/1.5 var(--mono);display:grid;gap:12px;overflow-wrap:anywhere}

/* Social v73–v74. Motion: Still · GIF · MP4 inside the same Export view, same scale and accent. */
.sx-seg{display:flex;margin:0 0 4px}
.sx-seg button{flex:1;min-width:0;min-height:40px;padding:8px 2px;border:1px solid var(--line);background:transparent;color:var(--ink);font:400 13px/1.5 var(--mono);cursor:pointer;white-space:nowrap}
.sx-seg button+button{border-left:0}
.sx-seg button[aria-pressed=true]{background:var(--so-accent);border-color:var(--so-accent);color:var(--paper-soft)}
.sx-seg button:disabled{opacity:.45;cursor:default}
.sx-note{font:400 12px/1.6 var(--mono);color:var(--ink-soft);margin:9px 0 0}
.sx-panel .sx-link{display:block;width:max-content;min-height:32px;margin:12px 0 0;padding:4px 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ink);font:400 13px/1.5 var(--mono);cursor:pointer}
.sx-panel .sx-link:hover{border-color:var(--so-accent)}
.sx-panel .sx-link:disabled{opacity:.45;cursor:default}
.sx-progress{margin:12px 0 0}
.sx-progress p{font:400 13px/1.6 var(--mono);margin:0}
.sx-progress progress{width:100%;height:4px;display:block;margin:8px 0 0;accent-color:var(--so-accent)}
.sx-progress .sx-link{margin-top:10px}
.sx-result img,.sx-result video{display:block;width:100%;max-height:230px;object-fit:contain;background:var(--paper-soft);border:1px solid var(--line)}
@media(any-pointer:coarse){.sx-seg button,.sx-panel .sx-link{min-height:44px}}

.sx-doorway .sx-share-open{margin-top:10px;display:flex;align-items:center;justify-content:center;gap:8px}
.sx-share-open svg{width:14px;height:14px;flex:none}

/* A sole movement uses the existing field typography and surface. */
.sx-movement-value{cursor:default}.sx-movement-value::after{content:none}
/* v238 — page tiles for a GIF or MP4: the Still/GIF/MP4 buttons, five to a row */
.sx-pages{margin:8px 0 0}
.sx-pages .sx-seg button{flex:0 0 20%}
