@font-face{font-family:UthmanicHafs;src:url(https://verses.quran.foundation/fonts/quran/hafs/uthmanic_hafs/UthmanicHafs1Ver18.woff2)format("woff2");font-display:swap;font-weight:400;font-style:normal}:root{--primary:#facc15;--primary-hover:#eab308;--bg-dark:#0f172a;--bg-panel:#1e293bb3;--text-light:#f8fafc;--text-muted:#94a3b8;--border-color:#ffffff1a;--glass-blur:16px;--transition:all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-light);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 15%,#facc1514,#0000 25%),radial-gradient(circle at 85% 30%,#38bdf814,#0000 25%);background-attachment:fixed;min-height:100vh;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5}.tutorial-stepper{justify-content:space-between;max-width:800px;margin:0 auto 2rem;padding:0 1rem;display:flex;position:relative}.tutorial-stepper:before{content:"";background:var(--border-color);z-index:-1;height:2px;position:absolute;top:50%;left:2rem;right:2rem;transform:translateY(-50%)}.step{background:var(--bg-dark);flex-direction:column;align-items:center;gap:.5rem;padding:0 1rem;display:flex}.step-circle{background:var(--bg-panel);border:2px solid var(--border-color);width:40px;height:40px;color:var(--text-muted);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:flex}.step.active .step-circle{border-color:var(--primary);color:var(--primary);box-shadow:0 0 15px #facc1533}.step-label{color:var(--text-muted);font-size:.85rem;font-weight:500}.step.active .step-label{color:var(--text-light)}.app-container{max-width:1200px;margin:0 auto;padding:2rem 1rem}header{text-align:center;margin-bottom:2rem;animation:.6s ease-out fadeInDown}header h1{background:linear-gradient(90deg,#fff,#cbd5e1);-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;margin-bottom:.5rem;font-size:2.5rem;font-weight:700}header p{color:var(--text-muted);font-size:1.1rem}.main-content{grid-template-columns:1fr 1fr;align-items:start;gap:2rem;display:grid}@media (width<=900px){.main-content{grid-template-columns:1fr}.tutorial-stepper{flex-direction:column;align-items:flex-start;gap:1.5rem}.tutorial-stepper:before{display:none}.step{flex-direction:row;padding:0}}.glass-panel{background:var(--bg-panel);-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-color);border-radius:20px;padding:1.5rem;animation:.5s ease-out backwards fadeInUp;box-shadow:0 25px 50px -12px #00000080}.left-column .glass-panel{margin-bottom:1.5rem}.right-column{z-index:10;position:sticky;top:2rem}.panel-title{color:#fff;align-items:center;gap:.5rem;margin-bottom:1.25rem;font-size:1.25rem;font-weight:600;display:flex}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-muted);margin-bottom:.5rem;font-size:.9rem;display:block}input[type=text],input[type=number],input[type=password],select{border:1px solid var(--border-color);color:#fff;width:100%;transition:var(--transition);background:#0f172a99;border-radius:12px;outline:none;padding:.875rem 1rem;font-size:1rem}select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='white'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:1rem}input[type=text]:focus,input[type=number]:focus,input[type=password]:focus,select:focus,select:hover{border-color:var(--primary);background-color:#0f172acc}select option{background:var(--bg-dark);color:#fff}.range-inputs{gap:1rem;margin-top:1rem;display:flex}.range-inputs label{color:var(--text-muted);flex-direction:column;flex:1;gap:.5rem;font-size:.875rem;display:flex}.bg-presets{grid-template-columns:repeat(4,1fr);gap:.75rem;display:grid}.bg-preset{transition:var(--transition);aspect-ratio:3/4;cursor:pointer;background:#000;border:2px solid #0000;border-radius:12px;position:relative;overflow:hidden}.bg-preset img{object-fit:cover;opacity:.7;width:100%;height:100%;transition:var(--transition)}.bg-preset:hover{transform:translateY(-2px);box-shadow:0 10px 20px #0000004d}.bg-preset:hover img{opacity:1}.bg-preset.selected{border-color:var(--primary)}.bg-preset.selected img{opacity:1}.badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;background:#0009;border:1px solid #ffffff1a;border-radius:6px;padding:3px 6px;font-size:.7rem;position:absolute;top:6px;right:6px}.badge-order{background:var(--primary);color:#000;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.8rem;font-weight:700;display:flex;position:absolute;top:6px;left:6px}.btn-primary,.btn-secondary{cursor:pointer;width:100%;transition:var(--transition);border:none;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;padding:1rem;font-size:1rem;font-weight:600;display:flex}.btn-primary{background:var(--primary);color:#0f172a;box-shadow:0 4px 14px #facc154d}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 6px 20px #facc1566}.btn-secondary{color:#fff;border:1px solid var(--border-color);background:#ffffff0d}.btn-secondary:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff4d}button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.action-buttons{gap:1rem;margin-top:2rem;display:flex}.preview-container{aspect-ratio:9/16;border:4px solid var(--bg-panel);background:#000;border-radius:20px;width:100%;max-width:360px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #000000b3}.preview-container.landscape{aspect-ratio:16/9;max-width:640px}.preview-container canvas{width:100%;height:100%;display:block}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.loading-spinner{border:3px solid #0000001a;border-top-color:#000;border-radius:50%;width:20px;height:20px;animation:1s ease-in-out infinite spin}@keyframes spin{to{transform:rotate(360deg)}}
