.upvps{max-width:1100px;margin:20px auto;color:#302d28;font-family:inherit}.upvps *{box-sizing:border-box}.upvps h2,.upvps h3{color:#244638}.upvps-tabs{display:flex;gap:8px;margin:24px 0}.upvps button{cursor:pointer}.upvps-tabs button{padding:12px 20px;border:1px solid #c2a36b;border-radius:8px;background:#fff}.upvps-tabs button.active{background:#244638;color:#fff}.upvps-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,1fr);gap:36px}.upvps-designs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.upvps-design{padding:8px;border:2px solid #e4ded1;border-radius:10px;background:#fff;text-align:left;color:#302d28}.upvps-design.selected{border-color:#244638}.upvps-thumb{height:110px;display:grid;place-items:center;background:#f7f3ea center/cover;border-radius:6px;font-size:42px;color:#763d43;margin-bottom:8px}.upvps-design strong{font-size:13px}.upvps label{display:block;font-weight:600;margin:15px 0 6px}.upvps input:not([type=file]),.upvps select,.upvps textarea{display:block;width:100%;max-width:100%;padding:11px;border:1px solid #c8c3b9;border-radius:7px;background:white;color:#302d28}.upvps-photo{padding:12px;border:1px solid #ded9d0;border-radius:8px;background:#fdfcf9}.upvps-photo input{display:block;margin-top:8px}.upvps-photo img{display:block;width:100px;max-height:100px;object-fit:contain;margin:8px 0}.upvps-photo small{display:block;color:#666;font-weight:400}.upvps-help{font-size:13px;color:#68635b}.upvps-preview{padding:18px;background:#f7f3ea;border-radius:12px}.upvps-preview-art{min-height:320px;aspect-ratio:5/7;background:linear-gradient(135deg,#763d43,#244638);background-position:center;background-size:cover;color:white;display:flex;flex-direction:column;justify-content:space-between;align-items:center;text-align:center;padding:30px 14px;border:9px solid #fff;box-shadow:0 2px 12px #0002}.upvps-preview-art span{font-family:Georgia,serif;font-size:clamp(20px,3vw,36px)}.upvps-preview-art strong{font-size:18px}.upvps-preview-art.with-image{background-color:#244638}.upvps-submit{margin-top:20px;padding:14px 22px;border:0;border-radius:8px;background:#244638;color:white;font-weight:700}.upvps-submit:disabled{opacity:.5}.upvps-status{min-height:22px;color:#763d43}.upvps [hidden]{display:none!important}@media(max-width:700px){.upvps-layout{grid-template-columns:1fr}.upvps-designs{grid-template-columns:repeat(2,minmax(0,1fr))}}
.upvps-preview-art{position:relative;overflow:hidden}.upvps-preview-art>[data-preview-photo]{display:none;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.upvps-preview-art>span,.upvps-preview-art>strong{position:relative;z-index:1;text-shadow:0 2px 6px #000b}.upvps-crop-modal{position:fixed;inset:0;z-index:999999;background:#000a;display:flex;align-items:center;justify-content:center;padding:16px}.upvps-crop-box{width:min(100%,480px);max-height:95vh;overflow:auto;background:white;border-radius:12px;padding:20px;color:#302d28}.upvps-crop-stage{width:min(350px,100%);aspect-ratio:1;position:relative;overflow:hidden;margin:16px auto;touch-action:none;background:#ddd;cursor:grab}.upvps-crop-stage img{position:absolute;max-width:none!important;pointer-events:none;user-select:none}.upvps-crop-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:14px}.upvps-crop-actions button,.upvps-recrop{padding:8px 12px;border-radius:6px;border:1px solid #244638;background:white;color:#244638}.upvps-crop-actions [data-crop-save]{background:#244638;color:white}.upvps-cropping{overflow:hidden}.upvps [hidden]{display:none!important}

/* 0.3: compact crop dialog and layout-aware preview */
.upvps-crop-modal{padding:12px;align-items:center}.upvps-crop-box{width:min(95vw,480px);max-height:calc(100dvh - 24px);display:flex;flex-direction:column;overflow:hidden;padding:16px}.upvps-crop-box h3{font-size:20px;margin:0 0 4px}.upvps-crop-box p{margin:3px 0 8px;font-size:13px}.upvps-crop-stage{width:auto!important;max-width:min(100%,350px);height:auto;max-height:min(53dvh,440px);margin:6px auto;flex:0 1 auto}.upvps-crop-box label{margin:4px 0}.upvps-crop-box input[type=range]{width:100%}.upvps-crop-actions{flex-shrink:0;margin-top:6px}.upvps-crop-actions button{min-height:40px}.upvps-preview-art>[data-preview-overlay]{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:1;pointer-events:none}.upvps-preview-art>span,.upvps-preview-art>strong{position:absolute;left:4%;width:92%;z-index:2;line-height:1.1}.upvps-preview-art>strong{bottom:10%}.upvps-preview-art>[data-preview-photo]{inset:auto;object-fit:cover}.upvps-photo{position:relative}.upvps-photo .upvps-recrop{margin-left:10px}.upvps-photo img{width:80px;max-height:90px}

.upvps-crop-stage{width:280px!important;max-width:100%;max-height:none;height:auto}.upvps-crop-box{overflow-y:auto}.upvps-crop-box>p{line-height:1.3}
