@import "https://fonts.googleapis.com/css2?family=Aref+Ruqaa:wght@400;700&family=Playfair+Display:ital,wght@1,600;1,700&display=swap";:root{--primary:#ffb6c1;--primary-dark:#f9a0ad;--primary-light:#ffd6dc;--primary-glow:#ffb6c159;--secondary:#fafafa;--accent:#e88fa4;--accent-magenta:#d4728a;--text:#2d2d2d;--text-light:#555;--text-muted:#999;--white:#fff;--gray-50:#f8f8fa;--gray-100:#f0f0f4;--gray-200:#e4e4ea;--gray-300:#d1d1db;--shadow-soft:0 2px 12px #0000000f;--shadow-medium:0 4px 20px #ffb6c12e;--shadow-card:0 1px 8px #0000000d;--radius-sm:10px;--radius-md:16px;--radius-lg:20px;--radius-full:9999px;--transition:.25s cubic-bezier(.4,0,.2,1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:15px}body{color:var(--text);-webkit-font-smoothing:antialiased;direction:rtl;background:linear-gradient(160deg,#fff6f8 0%,#fef0f3 40%,#fdf8fa 100%);min-height:100vh;font-family:Cairo,Tajawal,sans-serif;overflow-x:hidden}#root{min-height:100vh}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:var(--radius-full)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes gentleBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes dotBounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}@keyframes modalIn{0%{opacity:0;transform:scale(.9)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.15)}30%{transform:scale(1)}45%{transform:scale(1.1)}}@keyframes sparkle{0%,to{opacity:.1}50%{opacity:.3}}.navbar{z-index:1000;-webkit-backdrop-filter:blur(16px);transition:var(--transition);background:#fffc;border-bottom:1px solid #ffb6c126;justify-content:space-between;align-items:center;padding:8px 16px;display:flex;position:fixed;top:0;left:0;right:0}.navbar.scrolled{box-shadow:var(--shadow-soft);background:#ffffffeb}.nav-brand{align-items:center;gap:8px;display:flex}.nav-brand-name{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-magenta) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-family:Cairo,sans-serif;font-size:.95rem;font-weight:800}.nav-links{gap:2px;list-style:none;display:flex}.nav-links a{color:var(--text-light);border-radius:var(--radius-full);transition:var(--transition);padding:6px 10px;font-size:.75rem;font-weight:600;text-decoration:none}.nav-links a:hover{color:var(--accent-magenta);background:var(--primary-light)}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:85vh;padding:70px 20px 30px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 40%,#ffb6c11f 0%,#0000 60%);position:absolute;inset:0}.floating-hearts{pointer-events:none;position:absolute;inset:0;overflow:hidden}.floating-heart{opacity:.12;animation:6s ease-in-out infinite float;position:absolute}.hero-mascot{filter:drop-shadow(0 6px 16px #ffb6c140);margin-bottom:20px;animation:4s ease-in-out infinite float}.hero h1{color:var(--text);margin-bottom:8px;font-family:Cairo,sans-serif;font-size:clamp(1.6rem,5vw,2.4rem);font-weight:900;line-height:1.4;animation:.6s ease-out .2s both fadeInUp}.hero h1 .highlight{background:linear-gradient(135deg, var(--primary) 0%, var(--accent-magenta) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-subtitle{color:var(--text-light);margin-bottom:24px;font-size:.9rem;animation:.6s ease-out .35s both fadeInUp}.hero-cta{flex-wrap:wrap;justify-content:center;gap:10px;animation:.6s ease-out .5s both fadeInUp;display:flex}.btn{border-radius:var(--radius-full);cursor:pointer;transition:var(--transition);border:none;align-items:center;gap:6px;padding:10px 22px;font-family:Cairo,sans-serif;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);color:var(--white);box-shadow:0 3px 12px #ffb6c159}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 5px 18px #ffb6c173}.btn-secondary{background:var(--white);color:var(--accent-magenta);border:1.5px solid var(--primary);box-shadow:var(--shadow-card)}.btn-secondary:hover{background:var(--primary-light);transform:translateY(-2px)}.btn-icon{font-size:1.1em}.section-title{text-align:center;color:var(--text);margin-bottom:20px;font-family:Cairo,sans-serif;font-size:1.3rem;font-weight:800}.section-title .emoji{animation:2.5s ease-in-out infinite gentleBounce;display:inline-block}.chat-section{max-width:600px;margin:0 auto;padding:16px 16px 20px}.chat-container{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-medium);border:1px solid #ffb6c11f;overflow:hidden}.chat-header{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);color:var(--white);align-items:center;gap:10px;padding:12px 16px;display:flex}.chat-header-avatar{background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex;overflow:hidden}.chat-header-info h3{margin-bottom:1px;font-size:.9rem;font-weight:700}.chat-header-online{opacity:.9;align-items:center;gap:4px;font-size:.7rem;display:flex}.online-dot{background:#4ade80;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse}.chat-messages{background:var(--gray-50);flex-direction:column;gap:8px;height:380px;padding:14px;display:flex;overflow-y:auto}.message{gap:6px;max-width:82%;animation:.25s ease-out fadeInUp;display:flex}.message-bot{align-self:flex-start}.message-user{flex-direction:row-reverse;align-self:flex-end}.message-avatar{background:var(--primary-light);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex;overflow:hidden}.message-bubble{border-radius:var(--radius-md);word-wrap:break-word;padding:10px 14px;font-size:.88rem;line-height:1.65}.message-bot .message-bubble{background:var(--white);color:var(--text);box-shadow:var(--shadow-card);border:1px solid var(--gray-200)}.message-user .message-bubble{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);color:var(--white);box-shadow:0 2px 8px #ffb6c140}.message-time{color:var(--text-muted);margin-top:2px;padding:0 4px;font-size:.62rem}.message-user .message-time{text-align:left}.typing-indicator{align-items:center;gap:4px;padding:4px 2px;display:flex}.typing-dot{background:var(--gray-300);border-radius:50%;width:7px;height:7px;animation:1.4s ease-in-out infinite dotBounce}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}.chat-input-area{border-top:1px solid var(--gray-200);background:var(--white);align-items:center;gap:8px;padding:10px 12px;display:flex}.chat-input{border:1.5px solid var(--gray-200);border-radius:var(--radius-full);color:var(--text);background:var(--gray-50);transition:var(--transition);direction:rtl;outline:none;flex:1;padding:10px 16px;font-family:Cairo,sans-serif;font-size:.85rem}.chat-input:focus{border-color:var(--primary);background:var(--white);box-shadow:0 0 0 3px var(--primary-glow)}.chat-input::placeholder{color:var(--text-muted)}.chat-send-btn{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);width:40px;height:40px;color:var(--white);cursor:pointer;transition:var(--transition);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.chat-send-btn:hover{transform:scale(1.08);box-shadow:0 3px 12px #ffb6c159}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.widgets-section{max-width:600px;margin:0 auto;padding:12px 16px 20px}.widgets-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.widget-card{background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-card);transition:var(--transition);cursor:pointer;border:1px solid #ffb6c114;align-items:center;gap:10px;padding:16px;display:flex}.widget-card:hover{box-shadow:var(--shadow-medium);transform:translateY(-2px)}.widget-card:active{transform:scale(.98)}.widget-icon{flex-shrink:0;font-size:1.8rem}.widget-title{color:var(--text);font-family:Cairo,sans-serif;font-size:.8rem;font-weight:700;line-height:1.4}.widget-subtitle{color:var(--text-muted);margin-top:2px;font-size:.65rem}.modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:2000;background:#00000059;justify-content:center;align-items:center;padding:20px;animation:.15s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--white);border-radius:var(--radius-lg);text-align:center;width:100%;max-width:400px;padding:28px 24px;animation:.35s cubic-bezier(.34,1.56,.64,1) modalIn;position:relative;box-shadow:0 20px 60px #0000001f}.modal-close{background:var(--gray-100);width:28px;height:28px;color:var(--text-muted);cursor:pointer;transition:var(--transition);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;display:flex;position:absolute;top:12px;left:12px}.modal-close:hover{background:var(--gray-200);color:var(--text)}.modal-icon{margin-bottom:10px;font-size:2.8rem;display:block}.modal-title{color:var(--text);margin-bottom:16px;font-family:Cairo,sans-serif;font-size:1.1rem;font-weight:800}.modal-prescription{border:1.5px dashed var(--primary);border-radius:var(--radius-sm);text-align:right;background:linear-gradient(135deg,#fef9f0,#fdf5ea);margin-bottom:18px;padding:18px}.prescription-label{color:var(--accent-magenta);text-transform:uppercase;letter-spacing:1px;margin-bottom:4px;font-size:.65rem;font-weight:700}.prescription-text{color:var(--text);font-size:.88rem;line-height:1.7}.timeline-section{max-width:600px;margin:0 auto;padding:30px 16px}.timeline{padding:8px 0;position:relative}.timeline:before{content:"";background:linear-gradient(to bottom, var(--primary-light), var(--primary), var(--accent), var(--primary-light));border-radius:var(--radius-full);width:2px;position:absolute;top:0;bottom:0;right:14px}.timeline-item{opacity:0;align-items:center;margin-bottom:16px;padding-right:38px;transition:opacity .5s ease-out,transform .5s ease-out;display:flex;position:relative;transform:translateY(16px)}.timeline-item.visible{opacity:1;transform:translateY(0)}.timeline-dot{background:var(--primary);border:2px solid var(--white);width:14px;height:14px;box-shadow:0 0 0 3px var(--primary-light);z-index:1;border-radius:50%;position:absolute;right:8px}.timeline-card{background:var(--white);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);width:100%;transition:var(--transition);border:1px solid #ffb6c11a;align-items:center;gap:10px;padding:14px 16px;display:flex}.timeline-card:hover{box-shadow:var(--shadow-medium)}.timeline-card-emoji{flex-shrink:0;font-size:1.3rem}.timeline-card h4{color:var(--text);font-family:Cairo,sans-serif;font-size:.85rem;font-weight:700;line-height:1.5}.footer{text-align:center;color:var(--text-muted);padding:24px 16px;font-size:.78rem}.footer-heart{color:var(--primary);animation:2s ease-in-out infinite heartbeat;display:inline-block}.games-section{max-width:600px;margin:0 auto;padding:30px 16px}.games-subtitle{text-align:center;color:var(--text-light);margin-top:-12px;margin-bottom:20px;font-size:.85rem}.game-wrapper{justify-content:center;display:flex}.game-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-medium);border:1px solid #ffb6c11f;width:100%;max-width:460px;overflow:hidden}.game-card-header{text-align:center;background:linear-gradient(135deg,#ffe4f080 0%,#ffc1d64d 100%);border-bottom:1px solid #ffb6c11a;padding:16px 20px;position:relative}.game-badge{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);color:var(--white);border-radius:var(--radius-full);letter-spacing:.5px;margin-bottom:6px;padding:3px 10px;font-size:.65rem;font-weight:700;display:inline-block}.game-card-title{color:var(--text);margin-bottom:2px;font-family:"Baloo 2",Cairo,sans-serif;font-size:1.15rem;font-weight:800}.game-card-desc{color:var(--text-muted);font-size:.78rem}.game-canvas-container{background:var(--gray-50);-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;padding:12px;display:flex}.flappy-canvas{border-radius:var(--radius-sm);cursor:pointer;aspect-ratio:420/640;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;flex-shrink:1;width:min(100%,420px,65.625svh - 65.625px);min-width:0;max-width:100%;height:auto;scroll-margin-block:70px;display:block;box-shadow:0 4px 16px #c8507833}.game-tabs{justify-content:center;gap:8px;margin-bottom:16px;display:flex}.game-tab-btn{border-radius:var(--radius-full);border:2px solid var(--primary-light);background:var(--white);color:var(--text-light);cursor:pointer;transition:var(--transition);-webkit-tap-highlight-color:transparent;padding:8px 18px;font-family:Cairo,sans-serif;font-size:.82rem;font-weight:700}.game-tab-btn:hover{border-color:var(--primary);color:var(--accent-magenta);background:var(--primary-light)}.game-tab-btn.active{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);color:var(--white);border-color:#0000;box-shadow:0 3px 12px #ffb6c159}.catcher-canvas{border-radius:var(--radius-sm);cursor:pointer;aspect-ratio:400/520;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;max-width:100%;height:auto;display:block;box-shadow:0 4px 16px #c8507833}@media (width<=480px){html{font-size:14px}.navbar{padding:6px 12px}.nav-brand-name{font-size:.85rem}.nav-links a{padding:5px 7px;font-size:.68rem}.hero{min-height:75vh;padding:60px 16px 20px}.hero-mascot svg{width:110px!important;height:110px!important}.hero h1{font-size:1.4rem}.hero-subtitle{margin-bottom:18px;font-size:.82rem}.chat-messages{height:320px;padding:10px}.message{max-width:88%}.message-bubble{padding:8px 12px;font-size:.84rem}.chat-input{padding:8px 12px;font-size:.82rem}.chat-send-btn{width:36px;height:36px;font-size:1rem}.widgets-grid{gap:8px}.widget-card{padding:12px}.widget-icon{font-size:1.5rem}.widget-title{font-size:.75rem}.modal-content{padding:22px 18px}.timeline-card{padding:10px 12px}.timeline-card h4{font-size:.8rem}.timeline-item{margin-bottom:12px}.game-card-header{padding:12px 14px}.game-card-title{font-size:1rem}.game-canvas-container{padding:8px}}@media (width>=481px) and (width<=768px){.hero{min-height:78vh;padding:70px 20px 24px}.chat-messages{height:360px}}@media (width>=769px){.chat-section,.widgets-section,.timeline-section,.games-section{max-width:560px}}.birthday-surprise-btn{transform-origin:50%;padding:13px 26px;font-size:1rem;animation:1.4s ease-in-out .3s 2 birthdayAttention}@keyframes birthdayAttention{0%,to{transform:scale(1)rotate(0)}20%{transform:scale(1.09)rotate(0)}32%,56%{transform:scale(1.09)rotate(-4deg)}44%,68%{transform:scale(1.09)rotate(4deg)}82%{transform:scale(1.05)rotate(0)}}@media (prefers-reduced-motion:reduce){.birthday-surprise-btn{animation:none}}.bb-overlay{--bb-hearts:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='76' height='76' viewBox='0 0 76 76'%3E%3Cpath fill='%23B76E79' fill-opacity='.07' d='M38 48s-14-8-14-18c0-9 10-12 14-4 4-8 14-5 14 4 0 10-14 18-14 18z'/%3E%3C/svg%3E");--bb-cream:#f3e8d3;--bb-paper:#ead9ae;--bb-ink:#2b2118;--bb-rose:#b76e79;--bb-wine:#6b1e2b;--bb-gold:#c9a227;z-index:3000;-webkit-backdrop-filter:blur(8px);background:#140a10f0;justify-content:center;align-items:center;padding:64px 20px 56px;animation:.25s ease-out bbFadeIn;display:flex;position:fixed;inset:0}@keyframes bbFadeIn{0%{opacity:0}to{opacity:1}}@keyframes bbPopIn{0%{opacity:0;transform:scale(.72)}to{opacity:1;transform:scale(1)}}@keyframes bbOpenBook{0%{opacity:0;transform:scaleX(.05)rotateY(40deg)}to{opacity:1;transform:scaleX(1)rotateY(0)}}.bb-closed-book{border-radius:var(--radius-sm) var(--radius-md) var(--radius-md) var(--radius-sm);background:linear-gradient(135deg, var(--primary-light) 0%, var(--primary) 45%, var(--accent) 100%);cursor:pointer;width:min(280px,78vw);height:min(360px,68vh);transition:var(--transition);justify-content:center;align-items:center;animation:.5s cubic-bezier(.34,1.56,.64,1) both bbPopIn;display:flex;position:relative;box-shadow:0 25px 60px #d4728a66,inset 6px 0 12px #0000001f}.bb-closed-book:hover{transform:scale(1.03)}.bb-closed-book:before{content:"";background:#ffffff80;width:2px;position:absolute;top:14px;bottom:14px;left:10px}.bb-cover-title{text-align:center;color:var(--white);text-shadow:0 1px 4px #d4728a73;font-family:Playfair Display,Georgia,serif;font-size:2.4rem;font-style:italic;font-weight:600;position:absolute;top:30px;left:0;right:0}.bb-wax{background:radial-gradient(circle at 35% 30%, var(--primary-dark), var(--accent-magenta) 80%);width:64px;height:64px;transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 6px 14px #d4728a80,inset 0 0 10px #0000002e}.bb-closed-book:hover .bb-wax{transform:scale(1.08)rotate(-4deg)}.bb-wax-heart{width:26px;height:26px;fill:var(--white);opacity:.95}.bb-hint{text-align:center;color:#ffffffd9;font-family:inherit;font-size:.8rem;font-weight:600;position:absolute;bottom:18px;left:0;right:0}.bb-book{outline:none;width:min(920px,100%);height:min(560px,100%);position:relative}.bb-spread{background:linear-gradient(120deg, var(--bb-cream), var(--bb-paper));border-radius:var(--radius-lg);border:1px solid #6b1e2b2e;width:100%;height:100%;animation:.6s cubic-bezier(.2,.8,.3,1) bbOpenBook;display:flex;overflow:hidden;box-shadow:0 30px 70px #0a060899}.bb-page{background:linear-gradient(120deg, var(--bb-cream), var(--bb-paper) 90%);flex:1;padding:42px 38px;position:relative}.bb-page-text-page{background:linear-gradient(to left, #2b211824, transparent 14px), linear-gradient(120deg, var(--bb-cream), var(--bb-paper) 90%);border-right:1px solid #6b1e2b2e}.bb-page-photos{background:linear-gradient(to right, #2b21181f, transparent 14px), linear-gradient(120deg, var(--bb-cream), var(--bb-paper) 90%)}.bb-page-text{color:var(--bb-ink);font-family:Playfair Display,Georgia,serif;font-size:clamp(1.2rem,2.2vw,1.4rem);font-weight:400;line-height:1.65}.bb-nav-btn{background:var(--bb-wine);width:42px;height:42px;color:var(--bb-cream);border:2px solid var(--bb-gold);box-shadow:var(--shadow-medium);cursor:pointer;transition:var(--transition);z-index:5;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.bb-nav-btn svg{width:20px;height:20px}.bb-nav-btn:hover:not(:disabled){background:#4e1420;transform:translateY(-50%)scale(1.1)}.bb-nav-btn:disabled{opacity:.3;cursor:default}.bb-prev{left:-54px}.bb-next{right:-54px}.bb-dots{justify-content:center;gap:8px;display:flex;position:absolute;bottom:-36px;left:0;right:0}.bb-dot{background:var(--gray-300);cursor:pointer;width:9px;height:9px;transition:var(--transition);border:none;border-radius:50%;padding:0}.bb-dot.active{background:var(--accent-magenta);transform:scale(1.35)}.bb-close-btn{background:var(--white);width:44px;height:44px;color:var(--accent-magenta);cursor:pointer;box-shadow:var(--shadow-medium);transition:var(--transition);border:none;border-radius:50%;justify-content:center;align-items:center;font-family:inherit;font-size:.95rem;font-weight:800;display:flex;position:absolute;top:-48px;right:0}.bb-close-btn:hover{background:var(--primary-light);transform:scale(1.1)}.bb-closed-book:focus-visible,.bb-nav-btn:focus-visible,.bb-dot:focus-visible,.bb-close-btn:focus-visible{outline:3px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.bb-overlay,.bb-overlay *,.bb-overlay :before,.bb-overlay :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.bb-overlay{width:100%;max-width:none;height:100dvh;max-height:none;color:var(--text);direction:ltr;border:0;margin:0;padding:64px 76px 56px;font-family:Cairo,Tajawal,sans-serif}.bb-overlay::backdrop{background:0 0}.bb-cover-wrap{position:relative}.bb-closed-book{border:0}.bb-page{min-width:0;min-height:0;padding:28px 24px;overflow-y:auto}.bb-page-text{font-style:italic;font-weight:600}.bb-photo-grid{columns:2;column-gap:16px;padding:4px}.bb-photo-grid.single{columns:1}.bb-photo{break-inside:avoid;border:1px solid var(--primary-dark);border-radius:var(--radius-sm);background:linear-gradient(160deg, var(--primary-light), var(--primary));width:100%;box-shadow:var(--shadow-card);transform:rotate(var(--tilt));transition:var(--transition);cursor:zoom-in;font:inherit;margin-bottom:16px;padding:8px 8px 18px;display:block}.bb-photo:hover:not(:disabled){box-shadow:var(--shadow-medium);transform:translateY(-3px)}.bb-photo img{border-radius:calc(var(--radius-sm) / 2);width:100%;height:auto;display:block}.bb-photo:disabled{cursor:default}.bb-fallback{aspect-ratio:4/5;background:var(--gray-50);color:var(--text-light);place-content:center;font-size:.75rem;display:grid}.bb-dot{background:0 0;place-items:center;width:24px;height:24px;display:grid}.bb-dot:before{content:"";border-radius:var(--radius-full);background:#f3e8d366;width:8px;height:8px}.bb-dot.active{background:0 0}.bb-dot.active:before{background:var(--bb-gold)}.bb-overlay button:focus-visible{outline:3px solid var(--text);outline-offset:3px}.bb-lightbox{z-index:10;cursor:zoom-out;background:#000000e0;justify-content:center;align-items:center;padding:64px 20px 20px;display:flex;position:fixed;inset:0}.bb-lightbox img{object-fit:contain;border:4px solid var(--primary-light);border-radius:var(--radius-sm);max-width:100%;max-height:100%}.bb-lightbox .bb-close-btn{top:12px;right:16px}@media (width<=768px){.bb-page-text{font-size:22px;line-height:1.6}.bb-overlay{padding:64px 16px 76px}.bb-spread{flex-direction:column;overflow-y:auto}.bb-page{flex:none;padding:24px 20px;overflow:visible}.bb-page-text-page{border-bottom:1px solid #6b1e2b2e;border-right:none}.bb-page-text-page,.bb-page-photos{background:linear-gradient(120deg, var(--bb-cream), var(--bb-paper) 90%)}.bb-nav-btn{top:auto;bottom:-56px;transform:none}.bb-nav-btn:hover:not(:disabled){transform:scale(1.05)}.bb-prev{left:0}.bb-next{right:0}.bb-dots{bottom:-48px}}@media (width<=480px){.bb-page{padding:20px 16px}.bb-photo-grid{column-gap:12px}}.bb-cover-emoji{margin-top:8px;font-size:1.3rem;font-style:normal;display:block}.bb-arabic-text{color:var(--bb-ink);text-align:right;unicode-bidi:isolate;border-top:1px solid #b76e7940;margin-top:20px;padding-top:16px;font-family:Aref Ruqaa,serif;font-size:25px;font-weight:400;line-height:1.95}.bb-arabic-short{font-size:23px}.bb-page{background-image:var(--bb-hearts), var(--bb-gutter,linear-gradient(transparent, transparent)), linear-gradient(120deg, var(--bb-cream), var(--bb-paper) 90%);background-size:76px 76px,auto,auto}.bb-page-text-page{--bb-gutter:linear-gradient(to left, #2b211824, transparent 14px)}.bb-page-photos{--bb-gutter:linear-gradient(to right, #2b21181f, transparent 14px)}@media (width<=768px){.bb-page{--bb-gutter:linear-gradient(transparent, transparent)}.bb-arabic-text{font-size:26px}.bb-arabic-short{font-size:23px}.bb-dots{gap:2px;left:44px;right:44px}.bb-dot{flex:1;min-width:0;max-width:24px}}.bb-celebrating .bb-spread{animation:.32s ease-in forwards bbDisperse}.bb-celebrating .bb-nav-btn,.bb-celebrating .bb-dots,.bb-celebrating .bb-close-btn{opacity:0;pointer-events:none}.bb-celebrating .bb-page-text-page{animation:.32s ease-in forwards bbSplitLeft}.bb-celebrating .bb-page-photos{animation:.32s ease-in forwards bbSplitRight}.bb-burst{pointer-events:none;z-index:20;position:fixed;inset:0;overflow:hidden}.bb-burst-origin{width:0;height:0;position:absolute}.bb-particle{line-height:1;font-size:var(--size);opacity:0;animation:bbParticleFlight var(--duration) cubic-bezier(.15,.65,.3,1) var(--delay) forwards;position:absolute;top:0;left:0}@keyframes bbDisperse{to{opacity:0;transform:scale(.65)rotate(-7deg)}}@keyframes bbSplitLeft{to{transform:translate(-24px,-14px)rotate(-9deg)}}@keyframes bbSplitRight{to{transform:translate(24px,14px)rotate(9deg)}}@keyframes bbParticleFlight{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(0)}8%{opacity:1}65%{opacity:1;transform:translate(var(--dx), var(--dy)) scale(1) rotate(var(--spin))}to{opacity:0;transform:translate(var(--dx), var(--end-y)) scale(.75) rotate(var(--spin))}}@keyframes bbFinalFade{to{opacity:0}}.bb-celebrating-reduced .bb-spread{animation:.3s ease-out forwards bbFinalFade!important}.bb-celebrating-reduced .bb-page{animation:none!important}@media (prefers-reduced-motion:reduce){.bb-celebrating .bb-spread{animation:.3s ease-out forwards bbFinalFade!important}.bb-celebrating .bb-page{animation:none!important}.bb-burst{display:none}}.birthday-countdown{isolation:isolate;border:1px solid var(--primary);border-radius:var(--radius-lg);background:linear-gradient(135deg, #fff7f9, var(--primary-light));width:min(100%,540px);box-shadow:var(--shadow-medium);text-align:center;direction:rtl;margin:0 auto 24px;padding:24px 20px;position:relative;overflow:hidden}.countdown-content{z-index:1;position:relative}.countdown-kicker{color:#9f4864;font-size:.8rem;font-weight:700}.birthday-countdown h2{color:var(--text);margin:6px 0 16px;font-size:clamp(1.05rem,4vw,1.4rem)}.birthday-countdown p{color:var(--text-light);margin-top:16px;font-size:.85rem}.countdown-clock{justify-content:center;gap:10px;display:flex}.countdown-unit{border-radius:var(--radius-md);border:1px solid var(--primary);background:#fffc;flex-direction:column;flex:1;align-items:center;max-width:96px;padding:8px 4px;display:flex}.countdown-unit strong{font-variant-numeric:tabular-nums;color:#9f4864;direction:ltr;font-size:clamp(1.5rem,6vw,2.3rem);line-height:1.4}.countdown-unit>span:last-child{color:var(--text-light);font-size:.75rem}.countdown-mini-heart{color:var(--accent-magenta);font-size:.7rem}.countdown-hearts{pointer-events:none;z-index:0;position:absolute;inset:0}.countdown-hearts span{left:var(--heart-x);top:var(--heart-y);color:var(--accent-magenta);opacity:.16;animation:countdownFloat 4s ease-in-out var(--heart-delay) infinite;font-size:32px;position:absolute}@keyframes countdownFloat{50%{transform:translateY(-8px)rotate(9deg)}}@media (width<=480px){.birthday-countdown{padding:20px 12px}.countdown-clock{gap:6px}}@media (prefers-reduced-motion:reduce){.countdown-hearts span{animation:none}}.countdown-gift-btn{margin-top:16px;padding:13px 26px;font-size:1rem}.countdown-gift-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}
