:root{--bg:#f6f5fb;--surface:#fff;--text:#17142b;--muted:#6c6884;--border:#e7e4f2;--primary:#5b3df5;--primary-2:#c13ef0;--primary-soft:#efebff;--error:#d32f4f;--radius:18px;--shadow:0 1px 2px #17142b0a, 0 12px 32px -12px #3c28a02e;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:Plus Jakarta Sans,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-height:100vh;margin:0}button{font:inherit}[lang=ar]{font-family:Noto Sans Arabic,Plus Jakarta Sans,sans-serif}.app{max-width:1180px;margin:0 auto;padding:20px 24px 40px;position:relative}.bg-glow{pointer-events:none;z-index:-1;background:radial-gradient(40% 60% at 20% 30%,#5b3df52e,#0000 70%),radial-gradient(35% 55% at 80% 20%,#c13ef024,#0000 70%);height:520px;position:fixed;inset:-20% 0 auto}.nav{justify-content:flex-end;align-items:center;padding:8px 0 28px;display:flex}.pill{color:var(--primary);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:7px 14px;font-size:.8rem;font-weight:600}.hero{text-align:center;max-width:820px;margin:0 auto 36px}.hero h1 .gradient-text{white-space:nowrap}.hero h1{letter-spacing:-.03em;margin:0 0 12px;font-size:clamp(1.8rem,4vw,2.75rem);font-weight:800;line-height:1.15}.gradient-text{background:linear-gradient(90deg, var(--primary), var(--primary-2));color:#0000;-webkit-background-clip:text;background-clip:text}.hero p{color:var(--muted);margin:0;font-size:1.05rem;line-height:1.6}.layout{grid-template-columns:380px 1fr;align-items:start;gap:24px;display:grid}.layout>*{min-width:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 12px;font-size:.78rem;font-weight:700}.section-label:not(:first-child){margin-top:24px}.dropzone{text-align:center;cursor:pointer;background:#fbfaff;border:2px dashed #d6d0f0;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:170px;padding:20px;transition:border-color .2s,background .2s,transform .2s;display:flex}.dropzone:hover,.dropzone.is-dragging,.dropzone:focus-visible{border-color:var(--primary);background:var(--primary-soft);outline:none}.dropzone.is-dragging{transform:scale(1.01)}.dropzone.has-file{text-align:start;flex-direction:row;justify-content:flex-start;min-height:0}.dropzone-text{flex-direction:column;gap:4px;min-width:0;display:flex}.dropzone-text small{color:var(--muted)}.dropzone-thumb{object-fit:contain;border:1px solid var(--border);background:#fff;border-radius:10px;flex-shrink:0;width:64px;height:64px}.file-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upload-icon{width:52px;height:52px;color:var(--primary);border:1px solid var(--border);background:#fff;border-radius:14px;place-items:center;font-size:1.5rem;display:grid}.lang-row{align-items:stretch;gap:10px;display:flex}.lang-switch{background:#f1eff8;border-radius:12px;flex:1;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.lang-option{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:9px;flex-direction:column;align-items:center;gap:1px;padding:7px 4px;transition:background .2s,color .2s,box-shadow .2s;display:flex}.lang-option:hover{color:var(--text)}.lang-option.is-active{color:var(--primary);background:#fff;box-shadow:0 2px 8px #17142b14}.lang-native{font-size:.92rem;font-weight:700}.lang-code{letter-spacing:.06em;opacity:.7;font-size:.68rem;font-weight:600}.btn{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;font-weight:700;transition:transform .15s,box-shadow .2s,background .2s,opacity .2s;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{color:#fff;background:linear-gradient(135deg, var(--primary), var(--primary-2));width:100%;margin-top:24px;padding:15px;font-size:1rem;box-shadow:0 10px 24px -10px #5b3df5b3}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 28px -10px #5b3df5cc}.btn-ghost{color:var(--primary);background:var(--primary-soft);white-space:nowrap;padding:0 16px}.btn-ghost:hover:not(:disabled){background:#e3dcff}.btn-small{color:var(--text);background:#f1eff8;padding:8px 14px;font-size:.85rem}.btn-small:hover{background:#e7e3f5}.spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}.spinner.dark{border-color:#5b3df540;border-top-color:var(--primary)}@keyframes spin{to{transform:rotate(360deg)}}.error{color:var(--error);background:#fdecef;border-radius:10px;margin:14px 0 0;padding:10px 14px;font-size:.9rem}.preview{min-height:460px}.empty{text-align:center;height:100%;min-height:410px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-art{background:var(--primary-soft);border-radius:24px;place-items:center;width:84px;height:84px;margin-bottom:16px;font-size:2.2rem;display:grid}.empty h3{color:var(--text);margin:0 0 6px}.empty p{margin:0}.product{grid-template-columns:minmax(220px,300px) 1fr;align-items:start;gap:28px;display:grid}.product-media{aspect-ratio:1;border:1px solid var(--border);background:linear-gradient(#fbfaff,#f3f1fa);border-radius:14px;place-items:center;padding:16px;display:grid}.product-media img{object-fit:contain;max-width:100%;max-height:100%}.product-body{min-width:0}.hint h3{margin:4px 0 8px}.hint p{color:var(--muted);margin:0;line-height:1.6}.slider:focus-visible{outline:2px solid var(--primary);outline-offset:6px;border-radius:8px}.slider-head{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.badge{color:#fff;background:linear-gradient(135deg, var(--primary), var(--primary-2));border-radius:999px;padding:5px 11px;font-size:.75rem;font-weight:700}.badge-soft{color:var(--primary);background:var(--primary-soft)}.slider-viewport{transition:opacity .25s,filter .25s;overflow:hidden}.slider-viewport.is-translating{opacity:.25;filter:blur(3px)}.slider-track{align-items:flex-start;transition:transform .45s cubic-bezier(.22,1,.36,1);display:flex}.slide{flex:0 0 100%;padding:2px;animation:.35s fade-in}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.product-title{letter-spacing:-.02em;margin:0 0 12px;font-size:1.55rem;font-weight:800;line-height:1.3}.product-desc{color:#4a4663;margin:0;font-size:1rem;line-height:1.75}[lang=ar] .product-title{letter-spacing:0}[lang=ar] .product-desc{line-height:1.95}.slider-controls{border-top:1px solid var(--border);align-items:center;gap:10px;margin-top:22px;padding-top:18px;display:flex}.icon-btn{border:1px solid var(--border);width:38px;height:38px;color:var(--text);cursor:pointer;background:#fff;border-radius:50%;place-items:center;font-size:1.35rem;line-height:1;transition:border-color .2s,color .2s,transform .15s;display:grid}.icon-btn:hover{border-color:var(--primary);color:var(--primary);transform:scale(1.05)}.dots{gap:6px;display:flex}.dot{cursor:pointer;background:#d9d4ec;border:none;border-radius:999px;width:8px;height:8px;padding:0;transition:width .3s,background .3s}.dot.is-active{background:var(--primary);width:24px}.slider-controls .btn-small{margin-inline-start:auto}.skeleton{flex-direction:column;gap:12px;display:flex}.sk{background:linear-gradient(90deg,#efedf6 25%,#f8f7fc 50%,#efedf6 75%) 0 0/200% 100%;border-radius:8px;height:14px;animation:1.3s infinite shimmer}.sk-badge{border-radius:999px;width:110px;height:22px}.sk-title{width:90%;height:26px}.sk-title.short{width:60%;margin-bottom:8px}.sk-line.short{width:70%}@keyframes shimmer{to{background-position:-200% 0}}.footer{text-align:center;color:var(--muted);margin-top:36px;font-size:.85rem}@media (width<=980px){.layout{grid-template-columns:1fr}}@media (width<=640px){.app{padding:16px 16px 32px}.pill{display:none}.product{grid-template-columns:1fr}.product-media{width:100%;max-width:320px;margin:0 auto}.lang-row{flex-direction:column}.btn-ghost{padding:12px}}
