:root{--bg-base: #0b0a1a;--violet: #7c3aed;--pink: #ec4899;--blue: #2563eb;--text: #f5f3ff;--text-muted: rgba(245, 243, 255, .72);--glass-bg: rgba(255, 255, 255, .07);--glass-bg-strong: rgba(255, 255, 255, .1);--glass-border: rgba(255, 255, 255, .16);--radius-lg: 28px;--radius-md: 16px;--shadow-card: 0 20px 60px rgba(5, 4, 20, .55);--focus-ring: 0 0 0 3px rgba(236, 72, 153, .55)}*{box-sizing:border-box}html,body{overflow-x:hidden;width:100%}body{margin:0;min-height:100vh;font-family:Vazirmatn,Tahoma,sans-serif;color:var(--text);background:var(--bg-base);-webkit-font-smoothing:antialiased}#root{min-height:100vh}h1,h2,p{margin:0}button{font-family:inherit}.app-shell{position:relative;min-height:100vh;overflow-x:hidden}.app-main{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px 16px}.bg-blobs{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;background:radial-gradient(circle at 20% 20%,#1a1030 0%,var(--bg-base) 55%),linear-gradient(160deg,#0b0a1a,#140f2b 45%,#1a0f2b)}.blob{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;will-change:transform}.blob-a{width:42vmax;height:42vmax;top:-12vmax;right:-10vmax;background:radial-gradient(circle,var(--violet),transparent 70%);animation:drift-a 22s ease-in-out infinite}.blob-b{width:36vmax;height:36vmax;bottom:-14vmax;left:-8vmax;background:radial-gradient(circle,var(--pink),transparent 70%);animation:drift-b 26s ease-in-out infinite}.blob-c{width:30vmax;height:30vmax;top:40%;left:50%;background:radial-gradient(circle,var(--blue),transparent 70%);animation:drift-c 30s ease-in-out infinite}.bg-grain{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.04),transparent 60%)}@keyframes drift-a{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-6vmax,8vmax) scale(1.08)}}@keyframes drift-b{0%,to{transform:translate(0) scale(1)}50%{transform:translate(7vmax,-6vmax) scale(1.06)}}@keyframes drift-c{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-45%,-55%) scale(1.12)}}.glass-card{position:relative;width:100%;max-width:440px;padding:36px 28px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);text-align:center;animation:card-in .55s cubic-bezier(.22,1,.36,1) both}@keyframes card-in{0%{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.creator-title{font-size:clamp(1.5rem,5vw,1.9rem);font-weight:800;margin-bottom:10px}.creator-subtitle{color:var(--text-muted);font-size:.95rem;line-height:1.7;margin-bottom:26px}.creator-form{text-align:right;display:flex;flex-direction:column;gap:8px}.field-label{font-size:.85rem;color:var(--text-muted);font-weight:500}.field-input{width:100%;padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--glass-border);background:#00000038;color:var(--text);font-size:1rem;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.field-input::placeholder{color:#f5f3ff59}.field-input:focus-visible{outline:none;border-color:var(--pink);box-shadow:var(--focus-ring)}.field-help{font-size:.78rem;color:#f5f3ff80}.field-error{font-size:.85rem;color:#ffb4c6;background:#ec48991f;border:1px solid rgba(236,72,153,.35);border-radius:10px;padding:8px 12px}.btn{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:999px;padding:14px 30px;font-size:1rem;font-weight:700;cursor:pointer;text-decoration:none;transition:transform .35s cubic-bezier(.22,1,.36,1),opacity .35s ease,box-shadow .25s ease,background .25s ease;min-height:48px}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn-full{width:100%;margin-top:6px}.btn-small{padding:10px 22px;font-size:.88rem;min-height:40px}.btn-primary{color:#fff;background:linear-gradient(135deg,var(--violet),var(--pink));box-shadow:0 10px 30px #7c3aed73,0 4px 14px #ec489959}.btn-primary:hover{filter:brightness(1.08)}.btn-secondary{color:var(--text);background:var(--glass-bg-strong);border:1px solid var(--glass-border)}.btn-secondary:hover{background:#ffffff29}.btn-ghost{color:var(--text);background:transparent;border:1px solid var(--glass-border)}.btn-ghost:hover{background:#ffffff14}.btn-neutral{color:var(--text-muted);background:#ffffff0f;border:1px solid var(--glass-border)}.btn:disabled{cursor:default;pointer-events:none}.link-result{margin-top:24px;text-align:right;animation:card-in .4s ease both}.link-box{background:#00000047;border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:12px 14px;margin-bottom:12px;direction:ltr;text-align:left}.link-text{display:block;font-size:.85rem;color:var(--text);word-break:break-all;overflow-wrap:anywhere}.link-actions{display:flex;flex-wrap:wrap;gap:10px}.link-feedback{min-height:20px;margin-top:10px;font-size:.85rem}.feedback-success{color:#a7f3d0}.feedback-error{color:#ffb4c6}.viewer-card{padding:40px 26px}.viewer-sentence{font-size:clamp(1.2rem,5vw,1.5rem);font-weight:700;line-height:1.9;margin-bottom:34px}.viewer-name{color:#ffd9ec;font-weight:800}.viewer-buttons{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:22px;min-height:90px}.viewer-buttons-solo{gap:0}.btn-grow,.btn-shrink{transform-origin:center}.error-emoji{font-size:2.2rem;margin-bottom:12px}.viewer-error-title{font-size:1.3rem;font-weight:800;margin-bottom:10px}.viewer-error-text{color:var(--text-muted);font-size:.95rem;line-height:1.7;margin-bottom:24px}.result-card{padding:48px 30px;display:flex;flex-direction:column;align-items:center;gap:22px}.result-text{font-size:clamp(1.6rem,6vw,2.1rem);font-weight:800;background:linear-gradient(135deg,#fff,#ffd9ec);-webkit-background-clip:text;background-clip:text;color:transparent}@media (max-width: 420px){.glass-card{padding:28px 20px;border-radius:22px}.btn{padding:12px 22px;font-size:.92rem}.viewer-buttons{gap:16px}}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.blob{animation:none!important}}
