.home-popup-open{overflow:hidden}
.home-popup-layer{position:fixed;inset:0;z-index:80;background:rgba(40,24,38,.72);backdrop-filter:blur(9px);overflow:auto;overscroll-behavior:contain;padding:26px 20px;display:flex;align-items:safe center;justify-content:center}
.home-popup-shell{width:min(1040px,100%);margin:auto}
.home-popup-top{display:flex;align-items:center;justify-content:space-between;color:white;padding:0 4px 20px;gap:18px;max-width:920px;margin:auto}
.home-popup-intro{display:flex;align-items:center;gap:12px;min-width:0}
.home-popup-intro strong{display:block;font-size:1.25rem;letter-spacing:-.025em}
.home-popup-intro>div>span{display:block;font-size:.875rem;color:#f6dce9;margin-top:4px;line-height:1.5}
.home-popup-top-mark{display:grid;place-items:center;width:45px;height:45px;flex-shrink:0;border:1px solid #f1ce89;border-radius:16px;color:#ffe5a2;background:#644548;font-size:1.8rem;box-shadow:inset 0 1px 0 #fff6}
.home-popup-top>button{display:flex;align-items:center;gap:14px;border:1px solid #ffffff55;background:#ffffff10;color:white;border-radius:999px;min-height:44px;padding:9px 16px;cursor:pointer;white-space:nowrap;font-size:.9375rem}
.home-popup-top>button>span{font-size:1.6rem;line-height:1}.home-popup-top>button:hover{background:#ffffff25}
.home-popup-grid{display:flex;justify-content:center;align-items:flex-start;gap:22px;flex-wrap:wrap}
.home-popup-card{position:relative;background:#fff;border:1px solid #f3d7e4;border-radius:25px;box-shadow:0 22px 65px #160d2366,0 0 0 5px #ffffff0b;overflow:hidden;min-width:0;flex:0 1 auto;width:min(440px,max(300px,calc((100dvh - 245px)*.562)));max-width:calc(50% - 11px)}
.home-popup-heading{display:flex;align-items:center;gap:10px;padding:15px 16px;background:linear-gradient(115deg,#fffaf0,#fff5fa 72%);border-bottom:1px solid #f6e6ed}
.home-popup-heading>div{min-width:0;flex:1}.home-popup-heading h2{font-family:var(--font-display);font-size:1.2rem;line-height:1.35;letter-spacing:-.02em;margin:2px 0 0;overflow-wrap:anywhere;color:#58334a}
.home-popup-seal{display:grid;place-items:center;width:38px;height:42px;flex-shrink:0;border:1px solid #f1d28c;border-radius:13px;background:#fff3d2;color:#b98222;font-size:1.8rem;box-shadow:inset 0 2px 0 #fff}
.home-popup-kicker{display:block;font-size:.625rem;line-height:1.3;letter-spacing:.13em;font-weight:700;color:#af718b}
.home-popup-x{border:1px solid #efdce6;background:#fff;color:#95677e;width:42px;height:42px;flex:0 0 42px;font-size:1.9rem;line-height:1;border-radius:50%;cursor:pointer;display:grid;place-items:center}
.home-popup-x:hover{background:#fff0f6;color:#d62770;border-color:#efa9c6}
.home-popup-image{background:#fff3f8;display:flex;justify-content:center;min-width:0}.home-popup-image>a{display:flex;justify-content:center;min-width:0;width:100%}
.home-popup-image img,.home-popup-image svg{display:block;max-width:100%;width:100%;height:auto;max-height:calc(100dvh - 245px);object-fit:contain}.home-popup-image svg{aspect-ratio:555/988}
.home-popup-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 16px;font-size:.9375rem;background:#fff;border-top:1px solid #f2e7ed}
.home-popup-footer label{display:flex;align-items:center;gap:8px;cursor:pointer;line-height:1.4;color:#755b6c}.home-popup-footer input{width:19px;height:19px;flex:0 0 19px;accent-color:#e9337a;margin:0;cursor:pointer}.home-popup-footer label:has(input:disabled){opacity:.55;cursor:not-allowed}
.home-popup-footer button{border:1px solid #f3d9e5;background:#fff5f9;border-radius:12px;min-height:40px;padding:8px 15px;color:#bc326b;font-weight:700;cursor:pointer;white-space:nowrap}.home-popup-footer button:hover{background:#ffe8f1}
.home-popup-sample{font-size:.75rem;line-height:1.55;text-align:center;padding:9px 12px;background:#fff9e9;color:#785c25;border-top:1px solid #f5e9c8}
.popup-image-error{display:grid;place-items:center;padding:40px 20px;color:#9f7991;min-height:160px;text-align:center;line-height:1.7}.popup-image-error[hidden]{display:none}
.home-popup-layer button:focus-visible,.home-popup-layer input:focus-visible,.home-popup-layer a:focus-visible{outline:3px solid #efb239;outline-offset:3px}
.popup-admin{margin-top:36px;padding-top:24px;border-top:1px solid #ecdee6}.popup-admin-list{display:grid;gap:16px;margin:20px 0}
.popup-admin-item{display:grid;grid-template-columns:115px minmax(0,1fr);gap:20px;background:#fff;border:1px solid #f0e1e9;border-radius:18px;padding:16px}.popup-admin-thumb{height:155px;background:#fff3f8;border-radius:10px;overflow:hidden;display:flex;justify-content:center}.popup-admin-thumb img,.popup-admin-thumb svg{width:100%;height:100%;object-fit:contain}.popup-admin-item h3{margin:3px 0 8px;font-size:1.25rem}.popup-admin-item p{font-size:.875rem;color:#98818e;overflow-wrap:anywhere;line-height:1.6}.popup-admin-item .row-actions{margin-top:14px}
.popup-edit-preview{height:220px;border:1px dashed #ebc7d9;background:#fff7fb;border-radius:12px;display:flex;align-items:center;justify-content:center;overflow:hidden}.popup-edit-preview img,.popup-edit-preview svg{max-width:100%;height:100%;object-fit:contain}.popup-admin .admin-head{flex-wrap:wrap}.popup-admin .note{font-size:.875rem}
@media(max-width:640px){
 .home-popup-layer{padding:18px 12px}.home-popup-top{padding:0 2px 16px;gap:10px}.home-popup-intro{gap:9px}.home-popup-intro strong{font-size:1.05rem}.home-popup-intro>div>span{font-size:.75rem}.home-popup-top-mark{display:none}.home-popup-top>button{font-size:.8rem;padding:8px 11px;gap:8px}
 .home-popup-grid{flex-direction:column;align-items:center;gap:22px}.home-popup-card{max-width:100%;width:min(420px,100%);border-radius:22px}.home-popup-heading{padding:13px}.home-popup-heading h2{font-size:1.15rem}.home-popup-image img,.home-popup-image svg{max-height:calc(100dvh - 220px)}.home-popup-footer{padding:13px;font-size:.875rem}
 .popup-admin-item{grid-template-columns:85px minmax(0,1fr);gap:12px}.popup-admin-thumb{height:120px}.popup-admin-item .btn{font-size:.875rem;padding:9px}
}
@media(prefers-reduced-motion:reduce){.home-popup-layer *{animation:none!important;transition:none!important}}
