.tplOverlay[hidden],.tplEditor[hidden],.tplCatalog[hidden]{display:none!important}.tplOverlay{position:fixed;inset:0;z-index:14000;display:flex;align-items:center;justify-content:center;background:#25121fbd;padding:12px;box-sizing:border-box}.tplNoScroll{overflow:hidden!important}.tplDialog{background:white;border-radius:19px;width:min(820px,100%);max-height:calc(100dvh - 24px);overflow-y:auto;padding:20px;box-sizing:border-box;color:#573543}.tplDialog header{display:flex;justify-content:space-between;gap:12px;align-items:center}.tplDialog h2{margin:0 0 14px;font-size:24px}.tplClose,.tplBack{background:white;border:1px solid #e6d3da;border-radius:9px;padding:9px 13px}.tplSearch,.tplText{width:100%;box-sizing:border-box;padding:12px;font-size:16px;border:1px solid #e9d6dd;border-radius:10px}.tplCategories{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.tplCategories button{border:1px solid #e4d4da;background:white;border-radius:20px;padding:8px 12px;cursor:pointer}.tplCategories button.selected{background:#75425a;color:white}.tplCards{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px}.tplTile{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:16px;background:#fff6fa;color:#603b4c;border:1px solid #e7d6dc;border-radius:13px;cursor:pointer;text-align:left;font:inherit}.tplEmoji{font-size:32px}.tplTile small{color:#97818b}.tplEditor{display:flex;flex-direction:column;align-items:stretch;gap:12px}.tplEditor h3{margin:0}.tplCanvas{display:block;width:min(100%,340px);height:auto;align-self:center;background:#f8f5f6;border-radius:12px}.tplEditor label{display:flex;flex-direction:column;gap:6px}.tplColors{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tplColors input{width:100%;height:39px}.tplAdd{border:0;border-radius:10px;background:#75425a;color:white;padding:14px;font-weight:700;cursor:pointer}.tplLaunch{border:1px solid #bb8aa3;border-radius:12px;background:white;color:#703f58;padding:12px 16px;font-weight:700;cursor:pointer}@media(max-width:650px){.tplOverlay{align-items:flex-start;padding:8px 8px calc(10px + env(safe-area-inset-bottom,0px))}.tplDialog{max-height:calc(100dvh - 20px - env(safe-area-inset-bottom,0px));padding:15px}.tplCards{grid-template-columns:repeat(2,minmax(0,1fr))}.tplTile{padding:12px}.tplCanvas{width:min(100%,240px)}}
/* Template gallery: live miniature previews instead of emoji-only tiles. */
.tplCategories{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;padding-bottom:4px}
.tplCategories button{flex:none;white-space:nowrap}
.tplCards{grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:12px}
.tplTile{padding:9px;gap:7px;align-items:stretch;background:#fff;border-radius:14px;overflow:hidden}
.tplTilePreview{display:grid;place-items:center;aspect-ratio:1;background:#f8f3f5;border-radius:10px;padding:7px}
.tplTilePreview canvas{width:100%;max-width:220px;aspect-ratio:1;display:block}
.tplTile strong{font-size:14px;line-height:1.3;padding:0 4px}
.tplTileMeta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px;align-items:center;padding:0 4px 4px}
.tplTileMeta small{font-size:11px;color:#937e89}
.tplTileTag{padding:3px 6px;border-radius:6px;background:#f7e8ee;color:#885771!important}
.tplEditor{min-width:0}
.tplEditor .tplCanvas{box-shadow:0 4px 22px #49233414}
@media(max-width:650px){
 .tplCards{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .tplTile{padding:7px}
 .tplTilePreview{padding:3px}
 .tplTile strong{font-size:13px}
 .tplCategories{margin:10px 0;flex-wrap:nowrap}
 .tplDialog{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
 .tplAdd{min-height:49px}
}
