/* Wajed & Oula — private personalized gifts. No external fonts, icons or images. */
.wo-personalizer{--wo-p-wine:#762E49;--wo-p-coral:#EE9395;--wo-p-ivory:#FAF7F3;--wo-p-ink:#33262e;direction:inherit;unicode-bidi:isolate;box-sizing:border-box;max-width:100%;margin:24px 0;padding:clamp(16px,2.4vw,28px);border:1px solid #eddae2;border-radius:20px;background:var(--wo-p-ivory);font-family:system-ui,-apple-system,'Segoe UI',Tahoma,Arial,sans-serif;color:var(--wo-p-ink);text-align:start;box-shadow:0 12px 32px #572e3e0c}
.wo-personalizer *{box-sizing:border-box;letter-spacing:normal}
.wo-personalizer__intro small{font-size:10px;color:#956a7d;font-weight:700;letter-spacing:.1em}
.wo-personalizer__intro h3{font-size:clamp(21px,3vw,32px)!important;line-height:1.4;color:var(--wo-p-wine);margin:8px 0;font-weight:750}
.wo-personalizer__intro p{font-size:13px;color:#786971;line-height:1.8;margin:0 0 16px}
.wo-personalizer__layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(260px,1fr);gap:clamp(14px,3vw,26px);align-items:start}
.wo-personalizer__stage{position:relative;border-radius:18px;min-height:365px;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;background:radial-gradient(circle at 50% 30%,#fff4f5,#f5dfe5 58%,#e4cad4)}
.wo-personalizer__mug{position:relative;width:195px;height:211px;filter:drop-shadow(10px 14px 10px #58344f37);margin:17px 28px 12px 0}
.wo-personalizer__handle{position:absolute;right:-49px;top:49px;width:81px;height:116px;border:17px solid #eee7e4;border-radius:48%;z-index:0;background:transparent}
.wo-personalizer__cup{position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,#ded9d4 0%,#fff 23%,#fff 69%,#e0d9d5 100%);border-top:9px solid #eee8e7;border-bottom:5px solid #e5d6d4;border-radius:9px 9px 31px 31px/9px 9px 19px 19px;display:grid;place-items:center;overflow:hidden}
.wo-personalizer__print{width:78%;height:74%;position:relative;background:#f1dce4;overflow:hidden;display:flex;flex-direction:column;align-items:stretch;border:1px solid #e6cbd4}
.wo-personalizer__picbox{position:relative;flex:1;min-height:0;overflow:hidden;display:grid;place-items:center;touch-action:none;cursor:grab}
.wo-personalizer__picbox:active{cursor:grabbing}
.wo-personalizer__picbox img{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;user-select:none;-webkit-user-drag:none;touch-action:none;transform-origin:center;pointer-events:none}
.wo-personalizer__picbox img[hidden]{display:none!important}
.wo-personalizer__placeholder{font:36px Georgia,serif;color:#aa7287}
.wo-personalizer__names{position:relative;flex:0 0 auto;text-align:center;min-height:22px;padding:4px 3px 1px;background:#fffaf5d9;color:var(--wo-p-wine);font-family:Georgia,serif;font-weight:700;font-size:12px;line-height:1.3;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;unicode-bidi:plaintext}
.wo-personalizer__date{position:relative;flex:0 0 auto;text-align:center;min-height:13px;padding:0 4px 3px;font-size:9px;background:#fffaf5d9;color:#916478;unicode-bidi:plaintext}
.wo-personalizer__date:empty{display:none}
.wo-personalizer__stage-note{font-size:11px;line-height:1.6;color:#885e70;text-align:center;max-width:90%;margin:15px 0 0}
.wo-personalizer__controls{min-width:0;display:flex;flex-direction:column;gap:9px}
.wo-personalizer__controls>label:not(.wo-personalizer__agree){font-size:12px;font-weight:750;color:var(--wo-p-wine);margin-top:7px}
.wo-personalizer__controls input[type=text],.wo-personalizer__controls input[type=file]{display:block;width:100%;min-width:0;max-width:100%;background:white;border:1px solid #dfc7d1;border-radius:9px;padding:12px;font-size:14px;line-height:1.45;color:var(--wo-p-ink);box-shadow:none}
.wo-personalizer__controls input[type=file]{font-size:12px;padding:12px 8px}
.wo-personalizer__controls input[type=file]::file-selector-button{border:0;border-radius:7px;background:#f1dce5;color:var(--wo-p-wine);padding:9px 12px;margin-inline-end:10px;cursor:pointer}
.wo-personalizer__controls input[type=range]{width:100%;accent-color:var(--wo-p-wine);min-height:28px}
.wo-personalizer__controls input:focus-visible{outline:2px solid var(--wo-p-coral);outline-offset:3px}
.wo-personalizer__controls small{font-size:11px;color:#816875;line-height:1.65}
.wo-personalizer__controls output{font-size:11px;font-variant-numeric:tabular-nums;font-weight:500}
.wo-personalizer__agree{display:flex!important;align-items:flex-start;gap:10px;font-size:12px!important;line-height:1.8;font-weight:500!important;margin:7px 0 0!important;color:#5c4651!important;cursor:pointer;text-align:start}
.wo-personalizer__agree input{flex:0 0 auto;margin-top:5px;accent-color:var(--wo-p-wine)}
.wo-personalizer__error{background:#fff0f0;border:1px solid #e8a3a3;color:#87363f;font-size:12px;line-height:1.6;padding:9px;border-radius:8px;margin:0}
.wo-personalizer__error[hidden]{display:none}
.wo-personalizer__privacy{padding:9px 0 0;border-top:1px solid #ecdae2}
.wo-personalizer:dir(rtl) .wo-personalizer__mug{direction:ltr}
.wo-personalizer input,.wo-personalizer label{max-width:100%}
@media(max-width:740px){.wo-personalizer{margin:14px 0;padding:16px;border-radius:16px}.wo-personalizer__layout{grid-template-columns:1fr;gap:16px}.wo-personalizer__stage{min-height:320px}.wo-personalizer__mug{transform:scale(.88);margin-top:0;margin-bottom:0}}
@media(max-width:420px){.wo-personalizer__stage{min-height:270px}.wo-personalizer__mug{transform:scale(.78);margin:-12px 28px -15px 0}.wo-personalizer__controls input[type=file]{font-size:11px}}
@media(prefers-reduced-motion:reduce){.wo-personalizer *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
