*,*:before,*:after{box-sizing:border-box}body{margin:0 auto;background-color:#7b1fa2;color:#fff;padding:1.2rem;max-width:800px;line-height:1.8;overflow-x:hidden;transition:all .4s ease-in-out}h1,h2,h3,h4{margin-bottom:1rem}.section{margin-bottom:3rem;text-align:center;animation:fadeInUp 1.2s ease;opacity:0;transform:translateY(20px);animation-fill-mode:forwards}.card{background:#fff;color:#000;border-radius:20px;max-width:800px;margin:2rem auto;padding:1rem 2rem;box-shadow:0 10px 25px #0003;animation:fadeInUp 1.5s ease;opacity:0;transform:translateY(20px);animation-fill-mode:forwards}.img{animation:fadeInUp 1.5s ease;opacity:0;transform:translateY(50px);animation-fill-mode:forwards}.animate-on-scroll{opacity:0;transform:translateY(50px);transition:opacity .3s ease,transform .3s ease}.animate-on-scroll.animate{opacity:1;transform:translateY(0)}.card:nth-child(2){animation-delay:.2s}.card:nth-child(3){animation-delay:.4s}.card:nth-child(4){animation-delay:.6s}.card:nth-child(5){animation-delay:.8s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.cta{display:inline-block;background-color:#fff;color:#7b1fa2;padding:1rem 2rem;border-radius:2rem;font-size:1.2rem;font-weight:700;text-decoration:none;transition:background-color .3s ease}.cta:hover{background-color:#eee}.highlight{font-weight:700;color:#fdd835}.line{height:1px;border-radius:2px;background:linear-gradient(15deg,#de5a45,#ff7660,#f9d689,#fff2ac);margin:30px;animation:fadeInUp 1.5s ease;opacity:0;transform:translateY(50px);animation-fill-mode:forwards}.cta-container{text-align:center;margin:20px 0}.cta-button{display:inline-block;background:gold;color:#6a1b9a;border:2px solid #6a1b9a;padding:0 30px;margin:10px;font-size:1.2rem;font-weight:700;border-radius:30px;text-decoration:none;transition:all .3s ease-in-out}.cta-button:hover{background:#fff;color:#6a1b9a;transform:scale(1.1);box-shadow:0 0 10px #ffd700cc}.accordion{font-family:Cairo,sans-serif;background-color:#f1f1f1;color:#444;cursor:pointer;padding:1rem;width:100%;border:none;text-align:right;outline:none;font-size:1rem;transition:background-color .3s ease;border-radius:5px;margin-bottom:10px}.accordion:hover{background-color:#e2e2e2}.accordion.active{background-color:#ddd}.panel{background-color:#fff;max-height:0;overflow:hidden;transition:max-height .3s ease-out;margin-bottom:20px;border:1px solid #ccc;border-radius:5px}.span{font-weight:700;color:transparent;color:#0fe85b;text-align:center}.span-right{background:linear-gradient(15deg,#de5a45,#ff7660,#f9d689,#fff2ac);font-weight:700;background-clip:text;color:#0fe85b;text-align:right}.card-background{background-image:linear-gradient(32deg,#0462b7,#616ecc 23.5%,#f66ca8 50%,#ffd36f,#fffdc1);color:#000;padding:2rem;border-radius:20px;box-shadow:0 10px 25px #0003}.interaction-box{display:flex;align-items:center;justify-content:start;gap:15px;margin-top:15px}.heart-button,.share-button{font-size:24px;background:none;border:none;cursor:pointer;transition:transform .2s}.heart-button.active{color:red;transform:scale(1.3)}.small-message{font-size:14px;color:#0fe85b}.thank-you-particles{position:absolute;top:0;pointer-events:none;z-index:5}.particle{position:absolute;font-size:1.8rem;animation:flyParticle 2.5s ease-out forwards;opacity:1;top:0;pointer-events:none;transform:translate(0) scale(1)}@keyframes flyParticle{0%{transform:translate(0) scale(1) rotate(0);opacity:1}50%{transform:translate(var(--offset-x),calc(var(--offset-y) * .6)) scale(1.4) rotate(20deg)}to{transform:translate(var(--offset-x),var(--offset-y)) scale(1.6) rotate(45deg);opacity:0}}@keyframes shake{0%{transform:translate(0)}25%{transform:translate(-5px)}50%{transform:translate(5px)}75%{transform:translate(-5px)}to{transform:translate(0)}}.shake{animation:shake .4s}#share-btn img:hover{transform:scale(1.5);transition:transform .2s ease}#share-btn img:active{filter:brightness(.7)}.dashboard-container{max-width:100%;margin:auto;border-radius:16px;box-shadow:0 2px 10px #e5e10680;padding:16px}h1{text-align:center;color:#fff}section{margin-top:16px;padding-bottom:16px}button{padding:10px 15px;border:none;border-radius:8px;background:#4caf50;color:#fff;cursor:pointer}button.danger{background:#dc143c}.profile-pic-container{display:flex;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap}.profile-pic-container img{width:80px;height:80px;border-radius:50%;object-fit:cover;border:2px solid white}.profile-pic-container input[type=file]{display:block}.file-link{color:#fff;text-decoration:none}.file-link:hover{color:#fc0}.vision-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-top:2rem}.vision-box-container{position:relative;cursor:pointer;transition:transform .2s ease}.vision-box-container:hover{transform:scale(1.03)}.vision-box{width:100%;aspect-ratio:1 / 1;position:relative;overflow:hidden;box-shadow:0 2px 6px #0000001a;transform:rotate(-1deg)}.vision-image{width:100%;height:100%;object-fit:cover;display:block}.vision-overlay{position:absolute;bottom:0;width:100%;background:#00000080;padding:6px 8px;text-align:center}.vision-label{color:#fff;font-size:.85rem;font-weight:700;margin:0}.vision-box+.vision-box{border-left:1px solid transparent}.modal{position:fixed;z-index:1000;inset:0;background:#000c;display:flex;align-items:center;justify-content:center}.modal.hidden{display:none}.modal-content{max-width:600px;width:90%;text-align:center;background-image:linear-gradient(32deg,#0462b7,#616ecc 23.5%,#f66ca8 50%,#ffd36f,#fffdc1);color:#000;padding:2rem;border-radius:20px;box-shadow:0 10px 25px #0003}.close-button{float:right;font-size:1.5rem;cursor:pointer}.image-results-grid{margin-top:1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:1rem}.image-option{width:100%;border-radius:8px;cursor:pointer;transition:.3s ease}.image-option:hover{transform:scale(1.05)}.dream-btn.glow{background-color:#ffe066;color:#000;padding:5px 20px 0;border:none;border-radius:8px;font-weight:700;font-size:1.1rem;cursor:pointer;display:inline-block;animation:pulse 1.8s infinite alternate}@keyframes pulse{0%{box-shadow:0 0 #ffdf00}to{box-shadow:0 0 20px #ffdf00}}.toast{position:fixed;bottom:20px;right:20px;background-color:#333;color:#fff;padding:12px 18px;border-radius:8px;opacity:0;transition:opacity .5s ease-in-out;z-index:1000;font-size:14px}.toast.show{opacity:1}
