.zt-stamp{padding:44px 0 58px;background:#f7f9fd;color:#1d2d47;min-height:65vh}
.zt-stamp-hero{max-width:780px;margin:0 auto 30px;text-align:center}
.zt-stamp-hero h1{font-size:38px;line-height:1.25;margin:8px 0}
.zt-stamp-hero p{color:#596a80;line-height:1.75;margin:0 0 14px}
.zt-stamp-hero>span:last-child{display:inline-block;border-radius:30px;padding:7px 12px;background:#eef8f2;color:#277147;font-weight:700;font-size:12px}
.zt-stamp-grid{display:grid;grid-template-columns:minmax(290px,360px) minmax(0,1fr);align-items:start;gap:20px}
.zt-stamp-card{border:1px solid #dce4f0;border-radius:17px;background:#fff;padding:22px;box-shadow:0 10px 26px rgba(24,35,59,.05)}
.zt-stamp-card h2{font-size:17px;margin:0 0 14px;color:#1c3154}
.zt-stamp-settings h2:not(:first-child){margin-top:28px}
.zt-stamp-upload{display:block;padding:20px;border:1px dashed #90b0de;background:#f5f9ff;border-radius:11px;text-align:center;color:#275eaf;font-weight:700;position:relative;cursor:pointer}
.zt-stamp-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.zt-stamp-label{display:grid;gap:7px;margin:13px 0;color:#4f6078;font-size:13px}
.zt-stamp-label input:not([type=range]),.zt-stamp-label select{box-sizing:border-box;width:100%;border:1px solid #d9e2ef;border-radius:8px;padding:9px;font:inherit;background:#fff}
.zt-stamp-label input[type=range]{width:100%;accent-color:#2865bb}
.zt-stamp-hint{font-size:12px;color:#748297;line-height:1.65;margin:10px 0}
.zt-stamp-tabs{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;color:#33445e}
.zt-stamp-tabs label{display:flex;align-items:center;gap:5px}
.zt-stamp-tabs input{accent-color:#2865bb}
#stampDraw{display:block;width:100%;height:auto;border:1px solid #cad8e8;border-radius:9px;touch-action:none;background:#fff;margin-bottom:10px}
.zt-stamp-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}
#stampStatus{font-size:13px;line-height:1.6;color:#526079;margin:14px 0 0}
.zt-stamp-preview-head{display:flex;justify-content:space-between;gap:14px;align-items:start;margin-bottom:16px}
.zt-stamp-preview-head p{margin:3px 0 0;color:#728196;font-size:12px;line-height:1.6}
.zt-stamp-preview-head>div:last-child{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:12px}
.zt-stamp-stage{position:relative;max-width:100%;width:100%;min-height:380px;overflow:hidden;border:1px solid #e0e6f0;border-radius:9px;background:#edf1f7;margin:auto}
.zt-stamp-stage.has-page{width:fit-content;min-height:0}
.zt-stamp-placeholder{display:grid;place-items:center;min-height:380px;color:#8491a3;text-align:center}
#stampPreview{display:block;max-width:100%;height:auto;background:#fff}
#stampPreview[hidden],#stampOverlay[hidden]{display:none}
#stampOverlay{position:absolute;top:10%;left:10%;width:24%;height:auto;cursor:grab;touch-action:none;user-select:none;filter:drop-shadow(0 2px 5px rgba(0,0,0,.16))}
#stampOverlay:active{cursor:grabbing}
@media(max-width:950px){.zt-stamp-grid{grid-template-columns:1fr}.zt-stamp-settings{max-width:none}}
@media(max-width:650px){.zt-stamp{padding-top:28px}.zt-stamp-hero h1{font-size:30px}.zt-stamp-card{padding:16px}.zt-stamp-preview-head{display:block}.zt-stamp-preview-head>div:last-child{margin-top:12px}.zt-stamp-stage,.zt-stamp-placeholder{min-height:260px}}
