/* Admin-only visual layout editor; isolated from storefront design. */
.layout-editing{overflow:hidden!important}
.layout-editor-shell{position:fixed;inset:0;z-index:800;background:#f3f1ec;color:#253329;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;overflow:auto}
.layout-editor-shell *{box-sizing:border-box}.layout-editor-shell button,.layout-editor-shell input,.layout-editor-shell select{font:inherit}
.layout-editor-frame{min-height:100vh;display:flex;flex-direction:column}
.layout-editor-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 22px;background:#fff;border-bottom:1px solid #e8e6df;position:sticky;top:0;z-index:3}
.layout-editor-brand{display:flex;align-items:center;gap:12px}.layout-monogram{background:#27362e;color:#fff;border-radius:13px;width:40px;height:40px;display:grid;place-items:center;font:normal 31px Georgia,serif}
.layout-editor-brand strong{display:block;font:700 17px Inter,sans-serif}.layout-editor-brand small{display:block;font-size:9px;font-weight:750;letter-spacing:1.5px;color:#a59886;margin-top:5px}
.layout-editor-topactions{display:flex;align-items:center;gap:10px}.layout-editor-topactions button{white-space:nowrap}.layout-save-status{color:#55795c;font-size:11px;font-weight:750}.layout-save-status.unsaved{color:#aa784d}
.layout-editor-body{display:grid;grid-template-columns:280px minmax(250px,1fr) 286px;flex:1;min-height:0}
.layout-editor-rail,.layout-editor-properties{padding:24px 20px 45px;overflow:auto;background:#fbfaf7;max-height:calc(100vh - 74px)}
.layout-editor-rail{border-right:1px solid #e5e2dc}.layout-editor-properties{border-left:1px solid #e5e2dc}
.layout-editor-rail h3,.layout-editor-properties h3{font:700 15px Inter,sans-serif;margin:4px 0 8px}
.layout-hint{font-size:11px;color:#92978d;line-height:1.7;margin:0 0 22px}
.layout-block-list{display:grid;gap:10px}.layout-block-row{background:#fff;border:1px solid #e6e2d9;border-radius:13px;padding:11px 8px;display:flex;align-items:center;gap:8px;min-height:77px;cursor:grab}
.layout-block-row:active{cursor:grabbing}.layout-block-row.is-hidden{opacity:.57}.layout-block-row.drop-zone{border:2px dashed #ac8052;background:#fffaf0}.layout-block-row.being-dragged{opacity:.35}
.layout-drag-handle{font-size:22px;color:#afaa9f;user-select:none}.layout-block-emoji{font-size:24px;color:#aa8157}.layout-block-text{min-width:0;flex:1}.layout-block-text strong{font-size:11px;display:block;line-height:1.5}.layout-block-text small{font-size:9px;line-height:1.5;color:#999b93;display:block;margin-top:3px}
.layout-block-actions{display:grid;grid-template-columns:repeat(2,28px);align-items:center;gap:3px}.layout-block-actions label{grid-column:span 2;display:flex;justify-content:center}.layout-block-actions input{accent-color:#9c7753}.layout-block-actions button{width:28px;height:26px;border:1px solid #eae6de;border-radius:6px;background:#f9f7f2;color:#5d645a;cursor:pointer}.layout-block-actions button:disabled{opacity:.2}
.layout-rail-note{margin-top:28px;border:1px solid #e4dfd2;border-radius:12px;padding:13px;background:#f1eee6}.layout-rail-note strong{font-size:11px}.layout-rail-note p{font-size:10px;color:#7b8176;line-height:1.7;margin:7px 0 0}
.layout-editor-center{padding:24px;background:#eeede8;min-width:0;overflow:auto;max-height:calc(100vh - 74px)}.layout-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}
.layout-preview-toolbar strong{display:block;font-size:13px}.layout-preview-toolbar small{display:block;font-size:10px;color:#969a91;margin-top:5px}
.layout-device-switch{background:#e5e3dc;border-radius:11px;padding:4px;display:flex;gap:4px}.layout-device-switch button{font-size:11px;font-weight:650;border:0;border-radius:8px;background:transparent;padding:9px 11px;color:#7c8279}.layout-device-switch button.chosen{background:#fff;color:#27382f;box-shadow:0 2px 8px #33333310}
.layout-preview-stage{display:flex;justify-content:center;min-height:70vh}.layout-preview-canvas{width:100%;max-width:1024px;transition:max-width .2s ease}.layout-preview-canvas.is-mobile{max-width:375px;min-width:310px}.layout-preview-inner{background:#faf9f6;color:#25352c;border:1px solid #e0ded5;border-radius:19px;box-shadow:0 20px 70px #23312616;overflow:hidden;min-height:650px;pointer-events:none;--lp-face:Georgia,serif}
.layout-preview-inner.lp-modern{--lp-face:Inter,-apple-system,sans-serif}.layout-preview-inner.lp-light{background:#f3f5f8;color:#24323e}.layout-preview-inner.lp-dark{background:#1c2321;color:#eff2ea;border-color:#394b3b}
.lp-navbar{height:59px;padding:0 25px;background:#fff;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e7e5df}.lp-navbar strong{font:700 20px var(--lp-face)}.lp-navbar span{font-size:27px;color:var(--lp-accent)}
.lp-dark .lp-navbar{background:#26332b;border-color:#435244}.lp-main{padding:24px;display:flex;flex-direction:column;gap:var(--lp-gap)}.lp-intro small{letter-spacing:2px;font-size:9px;font-weight:800;color:var(--lp-accent)}
.lp-intro h1{font:normal 32px/1.2 var(--lp-face);margin:9px 0 0}.lp-intro em{color:var(--lp-accent)}.lp-block>section>h2{font:normal 22px var(--lp-face);margin:0 0 15px}
.lp-hero{border-radius:var(--lp-radius);background:linear-gradient(115deg,#e6e5d9,#d8c6b1);padding:27px 30px;min-height:150px}.lp-hero small{letter-spacing:2px;font-size:9px;color:#8f876e}.lp-hero h2{font:normal 27px/1.1 var(--lp-face);margin:13px 0 11px}.lp-hero h2 em{color:var(--lp-accent)}.lp-hero p{font-size:10px;color:#7c7a6c;margin:0}
.lp-light .lp-hero{background:linear-gradient(115deg,#dde8f4,#d4deec)}.lp-dark .lp-hero{background:linear-gradient(115deg,#425349,#4f5244)}.lp-dark .lp-hero p,.lp-dark .lp-hero small{color:#d4d9cd}
.lp-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.lp-stats article,.lp-areas article,.lp-products article{background:#fff;border:1px solid #e8e6df;border-radius:var(--lp-radius);padding:18px}.lp-stats article small{color:#92968d;font-size:10px;display:block}.lp-stats article strong{display:block;font:normal 31px var(--lp-face);margin-top:10px}
.lp-areas{display:grid;grid-template-columns:repeat(var(--lp-areas),minmax(0,1fr));gap:10px}.lp-areas article{min-height:86px;padding:13px}.lp-areas article span{font-size:24px;display:block}.lp-areas article strong{font-size:10px;display:block;margin-top:12px}
.lp-products{display:grid;grid-template-columns:repeat(var(--lp-products),minmax(0,1fr));gap:12px}.lp-products article{padding:7px;min-width:0;overflow:hidden}.lp-products article>.lp-media{background:#f2efe8;border-radius:calc(var(--lp-radius)*.7);aspect-ratio:1;display:grid;place-items:center;overflow:hidden}.lp-media span{font-size:38px}.lp-media img{width:100%;height:100%;object-fit:contain}.lp-products article strong{font-size:10px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:10px 4px 4px}.lp-products article small{display:block;margin:4px 4px 10px;font-size:9px;color:#85877f}
.lp-small .lp-products .lp-media{aspect-ratio:1.25}.lp-large .lp-products .lp-media{aspect-ratio:.86}
.lp-dark .lp-stats article,.lp-dark .lp-areas article,.lp-dark .lp-products article{background:#28362e;border-color:#415246}.lp-dark .lp-media{background:#334137!important}.lp-dark .lp-products article small{color:#bac9ba}
.is-mobile .lp-main{padding:15px;gap:calc(var(--lp-gap)*.6)}.is-mobile .lp-navbar{height:49px;padding:0 14px}.is-mobile .lp-intro h1{font-size:24px}.is-mobile .lp-hero{min-height:125px;padding:21px}.is-mobile .lp-hero h2{font-size:22px}.is-mobile .lp-stats{gap:6px}.is-mobile .lp-stats article{padding:10px 8px}.is-mobile .lp-stats article small{font-size:8px}.is-mobile .lp-stats article strong{font-size:20px}.is-mobile .lp-areas{gap:6px}.is-mobile .lp-areas article{padding:9px;min-height:68px}.is-mobile .lp-areas article span{font-size:21px}.is-mobile .lp-areas article strong{font-size:9px;margin-top:5px}.is-mobile .lp-products{gap:7px}.is-mobile .lp-products article{padding:5px}.is-mobile .lp-products article strong{font-size:9px}.is-mobile .lp-block>section>h2{font-size:19px}
.layout-property{margin-top:16px}.layout-property label{font-size:10px;font-weight:700;color:#70796b;display:block;margin-bottom:7px}.layout-property select{width:100%;min-height:39px;border-radius:9px;padding:9px 10px;background:#fff;border:1px solid #deddd6;color:#26352c;font-size:11px}
.layout-color-input{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e4e2dc;padding:6px;border-radius:10px}.layout-color-input input{border:0;padding:0;height:30px;width:43px;cursor:pointer;background:none}.layout-color-input code{font-size:11px;color:#777f75}
.layout-section-label{font-size:9px;letter-spacing:1.5px;color:#a08c72;font-weight:850;margin:24px 0 6px}.layout-history-controls{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:23px}.layout-history-controls button{padding:10px 7px;font-size:10px;white-space:nowrap}.layout-reset-btn,.layout-lockout-btn{background:transparent;border:0;color:#8d6e4c;text-decoration:underline;margin-top:22px;font-size:11px;cursor:pointer;display:block}.layout-lockout-btn{color:#9e9d94;margin-top:11px}
.layout-loading{display:grid;place-items:center;min-height:100vh;color:#636a61;font-size:13px}.layout-dialog{background:#fff;border:1px solid #e3dfd7;box-shadow:0 30px 100px #1a1d1933;border-radius:24px;padding:40px;width:min(475px,calc(100vw - 24px));position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.layout-dialog h2{font:normal 32px Georgia,serif;margin:10px 0}.layout-dialog p{font-size:12px;line-height:1.8;color:#888f83}.layout-dialog form{display:grid;gap:10px;margin-top:24px}.layout-dialog label{font-size:11px;font-weight:750}.layout-dialog input{min-height:48px;border:1px solid #dcd9d2;border-radius:10px;padding:0 13px}.layout-dialog button{margin-top:4px}.layout-lock-mark{width:54px;height:54px;background:#f3eee4;display:grid;place-items:center;font-size:27px;border-radius:14px}.layout-eyebrow{letter-spacing:1.5px;font-size:10px;color:#ae8c67;margin-top:18px}.layout-form-error{color:#b65d4b!important;margin:0;min-height:14px}
@media(max-width:1180px){.layout-editor-body{grid-template-columns:250px minmax(240px,1fr) 250px}.layout-editor-rail,.layout-editor-properties{padding:18px 13px}.layout-editor-center{padding:17px}}
@media(max-width:950px){.layout-editor-body{grid-template-columns:1fr}.layout-editor-rail,.layout-editor-properties,.layout-editor-center{max-height:none;overflow:visible}.layout-editor-rail{border-right:0;border-bottom:1px solid #dedbd3}.layout-editor-properties{border-left:0;border-top:1px solid #dedbd3}.layout-editor-center{min-height:450px}.layout-editor-top{position:sticky;padding:11px}.layout-editor-brand small{display:none}.layout-editor-brand strong{font-size:13px}.layout-editor-topactions{gap:6px}.layout-editor-topactions .secondary-btn{padding:9px}.layout-editor-topactions .primary-btn{padding:10px;font-size:11px}.layout-save-status{display:none}.layout-preview-stage{min-height:400px}.layout-block-list{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-editor-properties{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.layout-editor-properties h3,.layout-editor-properties>.layout-hint,.layout-editor-properties>.layout-section-label,.layout-editor-properties>.layout-history-controls,.layout-editor-properties>.layout-reset-btn,.layout-editor-properties>.layout-lockout-btn{grid-column:1 / -1}}
@media(max-width:540px){.layout-editor-topactions .secondary-btn{font-size:10px}.layout-editor-brand .layout-monogram{width:31px;height:31px;font-size:23px}.layout-editor-rail{padding:17px 10px}.layout-block-list{grid-template-columns:1fr}.layout-device-switch button{font-size:10px;padding:8px}.layout-preview-toolbar{align-items:flex-start;flex-wrap:wrap}.layout-editor-center{padding:13px}.layout-preview-canvas{max-width:100%}.layout-preview-canvas.is-mobile{width:min(100%,360px);min-width:0}.layout-editor-properties{padding:18px 12px}.layout-dialog{padding:24px}}
