/* People Studio 2.4: editor surfaces are separate from the slide canvas. */
.is-deck>.sidebar{display:none}.is-deck .main-shell{height:100dvh;overflow:hidden}.is-deck #main-view{height:100%}.deck-identity{display:flex;align-items:center;gap:12px;min-width:0}.deck-identity>div{min-width:0}.deck-identity p{font-size:11px;color:#9096a0;margin-top:4px}.slides-sidebar{display:flex;flex-direction:column;min-height:0;background:#fff;border-right:1px solid var(--line)}.slides-sidebar>header{display:flex;justify-content:space-between;padding:20px 16px 8px;font-size:12px}.slides-sidebar>header>span{color:#949aa5;font-size:11px}.thumb-row{position:relative;margin-bottom:16px;outline-offset:1px;border-radius:5px}.thumb-grip{position:absolute;left:-10px;top:6px;font-size:12px;color:#aeb6c4;opacity:0;cursor:grab}.thumb-row:hover .thumb-grip{opacity:1}.thumb-row.dragging{opacity:.4}.thumb-row.drop-target:before{content:'';height:3px;background:var(--blue);position:absolute;top:-9px;left:0;right:0;border-radius:3px}.slides-sidebar>footer{padding:12px;border-top:1px solid var(--line)}.slides-sidebar>footer .btn{font-size:11px}.slide-strip{flex:1;min-height:0;display:flex;align-items:center;gap:28px;overflow-x:auto;overflow-y:hidden;padding:32px;scrollbar-width:auto;scrollbar-color:#aab1be #e8ebef;overscroll-behavior-x:contain;position:relative;scroll-behavior:auto}.slide-strip::-webkit-scrollbar{height:12px}.slide-strip::-webkit-scrollbar-thumb{background:#b4bbc6;border:3px solid #e8ebef;border-radius:8px}.slide-strip::-webkit-scrollbar-track{background:#e8ebef}.strip-slide{flex:0 0 var(--slide-width,760px);width:var(--slide-width,760px);min-width:0;scroll-margin-inline:32px;content-visibility:auto;contain-intrinsic-size:auto 460px}.strip-slide-label{display:flex;align-items:center;gap:10px;padding:0 2px 11px;color:#99a0ab;font-size:11px}.strip-slide-label>span:first-child{font-variant-numeric:tabular-nums}.strip-slide.is-selected .strip-slide-label{color:#576c9d}.strip-frame{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#fff;box-shadow:0 3px 16px #172d5310;outline:1px solid #dfe3e9;border-radius:2px}.strip-slide.is-selected .strip-frame{outline:2px solid #7f93c4;box-shadow:0 8px 28px #172d5314}.strip-frame>.slide-scene,.thumb-frame>.slide-scene{position:absolute;top:0;left:0;transform-origin:top left}.control-label{font-size:10px;color:#818999;display:flex;justify-content:space-between;margin-top:4px}.control-note{font-size:10px;line-height:1.65;color:#969eab}.slot-tile{display:flex;gap:10px;align-items:center;background:#fafbfc;border:1px solid #e7e9ee;border-radius:8px;padding:9px 8px;width:100%;text-align:left}.slot-tile:hover{border-color:#a9b8d4}.slot-tile>img,.slot-empty{width:40px;height:40px;object-fit:cover;border-radius:5px;flex:none;background:#edf0f6;color:#9aa5b8}.slot-empty{display:flex;align-items:center;justify-content:center}.slot-tile>span:not(.slot-empty){flex:1;min-width:0}.slot-tile b{display:block;font-size:11px;font-weight:500}.slot-tile small{display:block;font-size:9px;color:#8b95a5;margin-top:5px}.slot-tile>svg{color:#a5aebc}.font-settings-link{display:flex;align-items:center;justify-content:space-between;border:0;border-radius:6px;background:#f7f8fa;padding:10px;text-align:left;margin-top:5px;font-size:11px}.font-settings-link small{display:block;font-size:9px;color:#929baa;margin-top:6px;line-height:1.6;max-width:180px}
/* Crop tool */
.modal.image-modal{width:860px;max-width:calc(100vw - 32px)}.image-editor{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:28px}.image-preview-column{min-width:0}.crop-stage{height:360px;border:1px solid #e2e6ed;border-radius:12px;background:repeating-conic-gradient(#f6f7f9 0% 25%,#edf0f4 0% 50%) 50%/16px 16px;display:flex;align-items:center;justify-content:center;padding:20px}.crop-viewport{position:relative;overflow:hidden;max-width:100%;max-height:100%;height:100%;background:#fff;border-radius:8px;box-shadow:0 4px 25px #24364f12;cursor:grab;touch-action:none;user-select:none}.crop-viewport.is-dragging{cursor:grabbing}.crop-viewport.file-over{outline:3px solid var(--blue)}.crop-viewport:not(.has-image){width:100%;height:100%;background:#ffffffd9}.crop-viewport:not(.has-image)>img{visibility:hidden}.crop-empty{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;color:#929eaf}.crop-empty strong{font-weight:500;font-size:13px;color:#56687e}.crop-empty>span{font-size:11px}.has-image .crop-empty{display:none}.crop-grid{pointer-events:none;position:absolute;inset:0;z-index:1;background:linear-gradient(to right,transparent 33%,#ffffff60 33%,#ffffff60 33.25%,transparent 33.25%,transparent 66.5%,#ffffff60 66.5%,#ffffff60 66.75%,transparent 66.75%),linear-gradient(to bottom,transparent 33%,#ffffff60 33%,#ffffff60 33.25%,transparent 33.25%,transparent 66.5%,#ffffff60 66.5%,#ffffff60 66.75%,transparent 66.75%);opacity:0}.is-dragging .crop-grid{opacity:1}.crop-hint{font-size:10px;color:#8d98a8;text-align:center;margin:13px 0 17px}.crop-controls{display:flex;flex-direction:column;gap:18px}.crop-controls .field{margin:0}.crop-controls .field>label{font-size:11px;display:flex;justify-content:space-between;margin-bottom:10px;color:#69778a}.crop-controls output{color:#97a1ae;font-size:10px}.crop-fit.segmented{display:flex;border:1px solid #e2e6ec;padding:3px;border-radius:8px;background:#f7f8fa}.crop-fit>button{border:0;border-radius:5px;flex:1;padding:8px 4px;font-size:11px;background:none;color:#7d8796}.crop-fit>button.selected{color:#4460ac;background:#fff;box-shadow:0 1px 5px #11223312}.crop-controls input[type=range],.style-controls input[type=range]{width:100%;accent-color:#4460ac;cursor:pointer;height:16px;margin:0}.focal-grid{display:grid;grid-template-columns:repeat(3,25px);gap:4px}.focal-grid button{width:25px;height:25px;border:1px solid #e0e5ee;background:#fff;border-radius:4px;display:grid;place-items:center}.focal-grid i{width:4px;height:4px;border-radius:1px;background:#b7c0ce}.focal-grid .selected{border-color:#738bc0;background:#eff3fc}.focal-grid .selected i{background:#4460ac}.footer-space{flex:1}.crop-assets{margin-top:22px;border-top:1px solid var(--line);padding-top:16px;font-size:12px;color:#69778a}.crop-assets summary{cursor:pointer}.crop-assets .gallery-choices{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.crop-assets button{border:1px solid #e0e5ec;padding:0;background:#fafbfc;border-radius:6px;width:90px;height:65px;overflow:hidden}.crop-assets img{width:100%;height:100%;object-fit:cover}
/* Typography / searchable family selector */
.modal.typography-modal{width:900px;max-width:calc(100vw - 32px)}.typography-modal .modal-body{overflow:visible}.typography-modal{max-height:calc(100dvh - 32px);overflow-y:auto}.font-role-grid.three-fonts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.three-fonts .font-role-card{padding:15px;border:1px solid #e5e8ee;border-radius:10px;min-width:0;position:relative;background:#fff}.font-role-label>span{display:flex;align-items:center;justify-content:space-between;font-size:12px}.font-role-label>small{color:#97a0af;font-size:10px;display:block;margin:8px 0 16px}.three-fonts .upload-font{font-size:10px;margin-top:10px;padding-left:0}.font-picker{position:relative}.font-select-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:11px 10px;border:1px solid #dfe5ed;background:#fafbfc;border-radius:7px;font-size:13px;gap:8px}.font-select-trigger>span{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.font-select-trigger>svg{transform:rotate(90deg);color:#a3adbc}.font-select-trigger:hover{border-color:#8fa3cb}.font-select-trigger.loading{opacity:.65;cursor:progress}.font-select-trigger.loading:after{content:'';width:12px;height:12px;border:2px solid #a2b5d8;border-top-color:#4460ac;border-radius:50%;animation:font-spin 1s linear infinite}@keyframes font-spin{to{transform:rotate(360deg)}}.font-popover{position:absolute;z-index:40;top:calc(100% + 7px);left:0;width:315px;background:#fff;border:1px solid #dfe5ed;border-radius:12px;box-shadow:0 12px 45px #1f335c23;overflow:hidden}.font-popover[hidden]{display:none}.three-fonts .font-role-card:last-child .font-popover{left:auto;right:0}.font-popover>header{display:flex;justify-content:space-between;padding:16px 14px 13px;font-size:11px}.font-popover>header>b{font-weight:500}.font-popover>header>span{font-size:9px;color:#8995a8;background:#f2f5fa;padding:2px 6px;border-radius:4px}.font-tabs{display:flex;gap:2px;padding:0 10px 10px}.font-tabs>button{background:none;border:0;padding:7px 9px;font-size:10px;color:#8a94a4;border-radius:5px;white-space:nowrap}.font-tabs>.selected{background:#eef2fa;color:#4460ac}.font-search{padding:0 12px 10px}.font-search input{width:100%;height:34px;font-size:11px;padding:8px 10px;border:1px solid #e4e8ef;background:#fafbfc;border-radius:6px}.font-options{max-height:234px;overflow-y:auto;padding:0 5px 5px}.font-option{display:flex;align-items:center;justify-content:space-between;text-align:left;width:100%;border:0;background:#fff;padding:10px 10px;border-radius:6px}.font-option b{font-size:15px;font-weight:400;line-height:1.3}.font-option small{display:block;margin-top:4px;font-size:9px;color:#9ca5b3}.font-option.highlighted,.font-option:hover{background:#f4f6fb}.font-option[aria-selected=true]{color:#4460ac}.font-picker-note{font-size:9px;line-height:1.6;color:#939fae;padding:10px 13px;border-top:1px solid #edf0f5}.font-empty{padding:20px 10px;color:#939dab;font-size:11px}.type-preview{display:grid;grid-template-columns:1.2fr 1fr;gap:36px;padding:27px;background:#f7f8fb;border-radius:12px;margin-bottom:23px}.preview-overline{font-size:8px;letter-spacing:1.4px;color:#a4adbb}.type-preview h3{font-size:30px;line-height:1.15;font-weight:400;color:#4460ac;letter-spacing:-.4px;margin:12px 0 18px}.type-preview p{font-size:12px;line-height:1.6;color:#4c5769;max-width:335px}.type-preview blockquote{font-size:31px;line-height:1.25;font-weight:400;margin:0;align-self:center;color:#202936;letter-spacing:-.3px}.typography-modal .style-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0 0 14px}.typography-modal .style-controls label{font-size:11px;display:flex;align-items:center;justify-content:space-between}.typography-modal .style-controls select{height:36px;font-size:11px}.typography-modal .check-row{font-size:11px;margin:13px 0}.mini-switch{display:inline-flex;align-items:center;position:relative}.mini-switch input{width:26px;height:15px;opacity:0;position:absolute;cursor:pointer;margin:0}.mini-switch i{width:26px;height:15px;background:#dbe1ea;border-radius:20px;pointer-events:none;position:relative}.mini-switch i:after{content:'';position:absolute;width:11px;height:11px;background:#fff;border-radius:50%;top:2px;left:2px;transition:left .15s}.mini-switch input:checked+i{background:#5874b8}.mini-switch input:checked+i:after{left:13px}.font-role-card.is-disabled .font-picker,.font-role-card.is-disabled .upload-font{opacity:.35;pointer-events:none}.style-extra{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin:7px 0 17px}.style-extra summary{font-size:11px;color:#778296;cursor:pointer}.style-extra[open]>summary{margin-bottom:18px}.style-extra .style-controls{grid-template-columns:1fr 1fr}.save-defaults{margin:17px 0!important}
@media(max-width:1200px){.slide-strip{padding:26px;gap:24px}}
@media(max-width:850px){.deck-identity{gap:5px}.slides-sidebar>footer .btn{font-size:9px;padding:5px}.image-editor{grid-template-columns:minmax(0,1fr) 190px;gap:20px}.crop-stage{height:330px}.font-popover{width:270px}.font-tabs>button{padding:6px;font-size:9px}.three-fonts .font-role-card{padding:12px}.type-preview{gap:20px;padding:22px}}
@media(max-width:620px){.is-deck .main-shell{height:auto;min-height:100dvh;overflow:visible}.slides-sidebar{grid-row:1;grid-column:1}.slides-sidebar>header{font-size:10px;padding:12px 8px 5px}.slides-sidebar>footer{display:none}.thumb-row{margin-bottom:10px}.slide-strip{padding:16px;gap:16px}.image-editor{grid-template-columns:1fr}.crop-stage{height:260px}.crop-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px}.crop-controls .control-note{grid-column:1/-1}.modal.image-modal,.modal.typography-modal{max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.three-fonts.font-role-grid{grid-template-columns:1fr;margin:18px 0;gap:10px}.three-fonts .font-role-card{padding:13px}.font-role-label>small{margin:6px 0 10px}.font-popover,.three-fonts .font-role-card:last-child .font-popover{left:0;right:auto;width:100%}.type-preview{grid-template-columns:1fr;gap:25px}.type-preview h3{font-size:26px}.type-preview blockquote{font-size:28px}.typography-modal .style-controls{gap:10px;grid-template-columns:1fr 1fr}.typography-modal .style-controls select{font-size:10px;padding-left:5px}.typography-modal .modal-footer{position:sticky;bottom:0;background:#fff;z-index:5}.modal-footer .btn{white-space:normal}.font-options{max-height:190px}}
@media(prefers-reduced-motion:reduce){.font-select-trigger.loading:after{animation:none}.mini-switch i:after{transition:none}}
/* Reset legacy single-slide workspace rules at every breakpoint. */


/* Modal bodies scroll independently; the footer never overlaps content. */
.modal.typography-modal,.modal.image-modal{display:flex;flex-direction:column;overflow:hidden;max-height:calc(100dvh - 32px)}
.typography-modal .modal-header,.image-modal .modal-header{flex:none}
.typography-modal .modal-body,.image-modal .modal-body{overflow-y:auto;min-height:0;max-height:none;flex:1}
.typography-modal .modal-footer,.image-modal .modal-footer{flex:none;position:static;background:#fff}
.three-fonts .font-role-label{margin-bottom:12px;gap:0}.three-fonts .font-role-label>small{margin:6px 0 0}.font-role-grid.three-fonts{margin:18px 0}.three-fonts .font-role-card{padding:14px}.three-fonts .upload-font{margin-top:7px}.typography-modal .style-controls .check-row{justify-content:flex-start;gap:8px}.type-preview{padding:23px;margin-bottom:20px}.typography-modal .style-controls .field{margin-bottom:0}.slide-strip{overflow-x:scroll;scrollbar-gutter:stable}
/* Cancel the legacy horizontal thumbnail row at narrow viewports. */



