*{box-sizing:border-box}:root{--rose:#c2185b;--rose-deep:#9c1150;--rose-light:#fbe4ec;--plum:#5b3a6b;--plum-deep:#402a4d;--plum-light:#eee6f3;--gold:#d4a656;--gold-light:#faf1de;--teal:#2f8f8a;--teal-light:#e2f3f1;--bg:#f6f1ea;--text:#2a2130;--text-soft:#7a6f80;--card:#fff;--border:#ece3e8;--bubble:#f3e9ee;--board-blank:#e4dee8;--board-path:#fffdf6;--fs-xs:11.5px;--fs-sm:13px;--fs-base:14.5px;--fs-md:15.5px;--fs-lg:17px;--fs-title:23px;--fs-hero:27px}*{scrollbar-width:thin;scrollbar-color:var(--rose) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:var(--rose);border-radius:10px}::-webkit-scrollbar-track{background:transparent}html{scroll-behavior:smooth}body{margin:0;touch-action:manipulation;background:radial-gradient(600px 400px at 8% -5%,rgba(212,166,86,.16),transparent 60%),radial-gradient(700px 500px at 110% 10%,rgba(91,58,107,.14),transparent 55%),radial-gradient(900px 700px at 50% 120%,rgba(194,24,91,.1),transparent 60%),linear-gradient(180deg,#faf5ef 0,var(--bg) 30%,var(--bg) 100%);background-attachment:fixed;color:var(--text);direction:rtl;min-height:100vh;-webkit-font-smoothing:antialiased;position:relative}.bg-blobs{position:fixed;inset:0;overflow:hidden;z-index:0;pointer-events:none}.bg-blob{position:absolute;border-radius:50%;filter:blur(50px);opacity:.35;animation:blobFloat 22s ease-in-out infinite}.bg-blob.b1{width:260px;height:260px;top:-60px;right:-60px;background:radial-gradient(circle,var(--gold),transparent 70%);animation-duration:26s}.bg-blob.b2{width:320px;height:320px;bottom:10%;left:-100px;background:radial-gradient(circle,var(--plum),transparent 70%);animation-duration:30s;animation-delay:-6s}.bg-blob.b3{width:220px;height:220px;top:40%;right:-80px;background:radial-gradient(circle,var(--rose),transparent 70%);animation-duration:24s;animation-delay:-12s}.bg-blob.b4{width:180px;height:180px;bottom:-40px;right:20%;background:radial-gradient(circle,var(--teal),transparent 70%);animation-duration:28s;animation-delay:-3s}@keyframes blobFloat{0%,to{transform:translate(0) scale(1)}33%{transform:translate(18px,-24px) scale(1.08)}66%{transform:translate(-14px,16px) scale(.95)}}@media (prefers-reduced-motion:reduce){.bg-blob{animation:none}}[data-theme=dark]{--bg:#1b1520;--text:#f0e8ee;--text-soft:#b3a4bb;--card:#251e2b;--border:#3a2f42;--bubble:#332a3a;--board-blank:#241d2c;--board-path:#352b3d;--rose-light:#3a2130;--plum-light:#2c2438;--gold-light:#302a1c;--teal-light:#1c2e2c}[data-theme=dark] body{background:radial-gradient(600px 400px at 8% -5%,rgba(212,166,86,.1),transparent 60%),radial-gradient(700px 500px at 110% 10%,rgba(91,58,107,.16),transparent 55%),radial-gradient(900px 700px at 50% 120%,rgba(194,24,91,.1),transparent 60%),linear-gradient(180deg,#17121c 0,var(--bg) 30%,var(--bg) 100%)}[data-theme=dark] .input{background:#2a2230;color:var(--text);border-color:var(--border)}[data-theme=dark] .note{background:#241e2a;border-color:var(--border)}[data-theme=dark] .nav-bottom{background:rgba(27,21,32,.88);border-color:var(--border)}[data-theme=dark] .nav-item{color:#8a7d92}[data-theme=dark] .btn-outline{color:#f0b8cf}[data-theme=dark] .error-box{background:#3a2323;color:#f5a3a3;border-color:#52302f}[data-theme=dark] .success-box{background:#1f3329;color:#8fd6b0;border-color:#2c4a3a}[data-theme=dark] .call-pill{box-shadow:0 8px 20px rgba(0,0,0,.5)}.anniversary-card{background:linear-gradient(135deg,#fff0f5,#f3ecff)}[data-theme=dark] .anniversary-card{background:linear-gradient(135deg,#2c2030,#241f30)}.page-transition{animation:pageIn .35s cubic-bezier(.2,.8,.2,1) both}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.page-transition{animation:none}}.container>.card:first-of-type,.game-container>.card:first-of-type{animation-delay:0s}.container>.card:nth-of-type(2),.game-container>.card:nth-of-type(2){animation-delay:.07s}.container>.card:nth-of-type(3),.game-container>.card:nth-of-type(3){animation-delay:.14s}.container>.card:nth-of-type(4),.game-container>.card:nth-of-type(4){animation-delay:.21s}.container>.card:nth-of-type(5),.game-container>.card:nth-of-type(5){animation-delay:.28s}.bell-ring{animation:bellRing 2.4s ease-in-out infinite}@keyframes bellRing{0%,80%,to{transform:rotate(0)}82%{transform:rotate(-12deg)}84%{transform:rotate(10deg)}86%{transform:rotate(-8deg)}88%{transform:rotate(6deg)}90%{transform:rotate(0)}}.btn-attention{animation:attentionPulse 1.7s ease-in-out infinite}@keyframes attentionPulse{0%,to{box-shadow:0 4px 14px rgba(156,17,80,.28)}50%{box-shadow:0 4px 22px rgba(156,17,80,.55),0 0 0 5px rgba(194,24,91,.12)}}@media (prefers-reduced-motion:reduce){.bell-ring,.btn-attention{animation:none}}.msg-pop-in{animation:msgPopIn .38s cubic-bezier(.26,1.4,.4,1) both}@keyframes msgPopIn{0%{opacity:0;transform:scale(.55) translateY(10px)}60%{opacity:1;transform:scale(1.05) translateY(-2px)}to{opacity:1;transform:scale(1) translateY(0)}}.sticker-pop{animation:stickerPop .5s cubic-bezier(.2,1.6,.4,1) both}@keyframes stickerPop{0%{opacity:0;transform:scale(0) rotate(-25deg)}55%{opacity:1;transform:scale(1.18) rotate(6deg)}75%{transform:scale(.94) rotate(-3deg)}to{opacity:1;transform:scale(1) rotate(0)}}.btn,.btn-outline{position:relative;overflow:hidden}.btn-outline:after,.btn:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle,hsla(0,0%,100%,.55) 0,transparent 60%);opacity:0;transform:scale(.4);transition:opacity .5s ease,transform .5s ease;pointer-events:none}.btn-outline:active:after,.btn:active:after{opacity:1;transform:scale(1.6);transition:none}.send-btn-fire{animation:sendFire .38s ease}@keyframes sendFire{0%{transform:translateX(0) rotate(0)}40%{transform:translateX(6px) rotate(-18deg) scale(1.15)}to{transform:translateX(0) rotate(0)}}.heartbeat{animation:heartbeat 2.6s ease-in-out infinite}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.08)}30%{transform:scale(1)}45%{transform:scale(1.06)}60%{transform:scale(1)}}.feature-card{transform-style:preserve-3d}@media (hover:hover){.feature-card:hover .feature-icon{animation:iconWiggle .5s ease}}@keyframes iconWiggle{0%,to{transform:rotate(0) scale(1)}25%{transform:rotate(-8deg) scale(1.08)}75%{transform:rotate(8deg) scale(1.08)}}.typing-dots{display:inline-flex;gap:3px;align-items:center}.typing-dots span{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.5;animation:typingBounce 1.1s ease-in-out infinite}.typing-dots span:nth-child(2){animation-delay:.15s}.typing-dots span:nth-child(3){animation-delay:.3s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.badge-pop{animation:badgePop .35s cubic-bezier(.3,1.6,.4,1) both}@keyframes badgePop{0%{transform:scale(0)}70%{transform:scale(1.25)}to{transform:scale(1)}}.heart-burst{position:absolute;font-size:64px;animation:heartBurst .8s ease-out both;pointer-events:none;z-index:20}@keyframes heartBurst{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(-15deg)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.25) rotate(6deg)}to{opacity:0;transform:translate(-50%,-85%) scale(1) rotate(0)}}.hero-banner .petal{position:absolute;animation:petalFloat linear infinite;opacity:.35;pointer-events:none}@keyframes petalFloat{0%{transform:translateY(0) translateX(0) rotate(0deg);opacity:0}10%{opacity:.5}to{transform:translateY(-90px) translateX(14px) rotate(200deg);opacity:0}}.nav-icon{transition:transform .25s cubic-bezier(.3,1.5,.4,1)}.nav-item.active .nav-icon{animation:navPop .35s cubic-bezier(.3,1.6,.4,1)}@keyframes navPop{0%{transform:scale(.7)}60%{transform:scale(1.25)}to{transform:scale(1.08)}}.score-pop{animation:scorePop .4s ease}@keyframes scorePop{0%{transform:scale(1)}40%{transform:scale(1.3);color:var(--rose-deep)}to{transform:scale(1)}}.shimmer{background:linear-gradient(90deg,var(--bubble) 25%,var(--card) 50%,var(--bubble) 75%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite;border-radius:10px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.badge-pop,.feature-card:hover .feature-icon,.heart-burst,.heartbeat,.hero-banner .petal,.msg-pop-in,.nav-item.active .nav-icon,.score-pop,.send-btn-fire,.shimmer,.sticker-pop,.typing-dots span{animation:none}}@keyframes sway{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}@keyframes swayPencil{0%,to{transform:rotate(-6deg) translateY(0)}50%{transform:rotate(2deg) translateY(-2px)}}@keyframes blinkFace{0%,90%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}@keyframes twinkle{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}@keyframes riseFloat{0%{transform:translateY(0) scale(1);opacity:.9}to{transform:translateY(-22px) scale(1.15);opacity:0}}@keyframes clap{0%,80%,to{transform:rotate(0deg)}88%{transform:rotate(-16deg)}94%{transform:rotate(-2deg)}}@keyframes tiltScale{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}@keyframes diceSpin{0%,70%,to{transform:rotate(0deg)}80%{transform:rotate(-12deg)}90%{transform:rotate(10deg)}}@keyframes flipPage{0%,to{transform:rotateY(0deg)}50%{transform:rotateY(14deg)}}@keyframes glowPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.9;transform:scale(1.08)}}@keyframes bobUp{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes spinLoader{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.illus-sway{animation:sway 3.4s ease-in-out infinite;transform-origin:bottom center}.illus-pencil{animation:swayPencil 2.2s ease-in-out infinite;transform-origin:bottom right}.illus-blink{animation:blinkFace 4.5s ease-in-out infinite;transform-origin:center}.illus-twinkle{animation:twinkle 1.8s ease-in-out infinite}.illus-rise{animation:riseFloat 2.4s ease-in infinite}.illus-clap{animation:clap 3.5s ease-in-out infinite;transform-origin:right bottom}.illus-tilt{animation:tiltScale 3s ease-in-out infinite;transform-origin:center}.illus-dice{animation:diceSpin 3.2s ease-in-out infinite;transform-origin:center}.illus-flip{animation:flipPage 3.6s ease-in-out infinite;transform-origin:left center}.illus-glow{animation:glowPulse 2.6s ease-in-out infinite}.illus-bob{animation:bobUp 2.8s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.illus-blink,.illus-bob,.illus-clap,.illus-dice,.illus-flip,.illus-glow,.illus-pencil,.illus-rise,.illus-sway,.illus-tilt,.illus-twinkle{animation:none}}a{color:inherit;text-decoration:none}.container{max-width:480px}.container,.game-container{margin:0 auto;padding:20px 16px calc(84px + env(safe-area-inset-bottom));position:relative;z-index:1}.game-container{max-width:640px}.card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:0 1px 2px rgba(46,34,51,.05),0 10px 24px rgba(46,34,51,.06);margin-bottom:14px;animation:fadeInUp .45s cubic-bezier(.2,.8,.2,1) both;transition:box-shadow .2s ease}@media (hover:hover){.card:hover{box-shadow:0 2px 6px rgba(46,34,51,.06),0 14px 30px rgba(46,34,51,.09)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.card{animation:none}}.btn{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:13px 16px;border-radius:13px;border:none;background:linear-gradient(135deg,var(--rose) 0,var(--rose-deep) 100%);background-size:160% 160%;color:#fff;font-weight:600;font-size:var(--fs-base);cursor:pointer;transition:transform .12s ease,box-shadow .15s ease,opacity .15s ease,background-position .4s ease;font-family:inherit;box-shadow:0 4px 14px rgba(156,17,80,.28);position:relative;overflow:hidden}.btn:hover{background-position:100% 0;box-shadow:0 6px 18px rgba(156,17,80,.36)}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-outline{background:transparent;color:var(--rose);border:1.3px solid var(--rose)}.btn-outline:hover{background:var(--rose-light)}.input{width:100%;padding:12px 14px;border-radius:12px;border:1.3px solid var(--border);background:#fff;font-family:inherit;font-size:var(--fs-base);margin-bottom:12px;outline:none;color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}.input:focus{border-color:var(--rose);box-shadow:0 0 0 3px var(--rose-light)}.title{font-family:Vazirmatn,Tahoma,sans-serif;font-size:var(--fs-title);font-weight:800;margin-bottom:3px;letter-spacing:-.2px}.subtitle{font-size:var(--fs-sm);color:var(--text-soft);margin-bottom:18px;line-height:1.7}.error-box{background:#fdeaea;color:#b23a3a;border-radius:12px;border:1px solid #f5d4d4}.error-box,.success-box{padding:11px 14px;font-size:var(--fs-sm);margin-bottom:12px;animation:fadeIn .25s ease both}.success-box{background:#e9f5ef;color:#2a7a54;border-radius:12px;border:1px solid #cfe9dc}.grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.nav-bottom{position:fixed;bottom:0;left:0;right:0;background:hsla(0,0%,100%,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border);display:flex;justify-content:space-around;padding:8px 4px calc(8px + env(safe-area-inset-bottom));max-width:480px;margin:0 auto;z-index:50;box-shadow:0 -6px 20px rgba(46,34,51,.05)}.nav-item{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:var(--fs-xs);font-weight:500;color:#a598a0;padding:6px 10px;border-radius:12px;transition:color .15s ease,background .15s ease,transform .15s ease}.nav-item:active{transform:scale(.92)}.nav-item.active{color:var(--rose-deep);background:var(--rose-light)}.nav-icon{font-size:21px;transition:transform .2s ease}.nav-item.active .nav-icon{transform:translateY(-1px) scale(1.08)}.note{background:#fefbfa;border:1px solid var(--border);border-radius:14px;padding:13px 15px;margin-bottom:10px;font-size:var(--fs-base);position:relative;animation:fadeInUp .35s ease both}.note-meta{font-size:var(--fs-xs);color:var(--text-soft);margin-top:6px}.note-del{left:10px;top:10px;color:#d98;background:none}.note-del,.note-del-big{position:absolute;cursor:pointer;font-size:var(--fs-xs);border:none}.note-del-big{left:8px;top:8px;background:#fdeaea;color:#b23a3a;font-weight:600;padding:7px 12px;border-radius:10px;transition:background .15s ease}.note-del-big:hover{background:#f9d4d4}.note-del-big:active{transform:scale(.95)}.badge{display:inline-block;background:var(--rose-light);color:var(--rose-deep);padding:5px 12px;font-size:var(--fs-sm);font-weight:600;transition:transform .15s ease,box-shadow .15s ease}.badge:active{transform:scale(.95)}.badge-gold{background:var(--gold-light);color:#8a6414}.badge-plum{background:var(--plum-light);color:var(--plum-deep)}.badge-teal{background:var(--teal-light);color:var(--teal)}.tod-card{text-align:center;padding:30px 20px}.tod-prompt{font-size:var(--fs-lg);font-weight:600;margin:16px 0 20px;line-height:1.85}.app-header{gap:12px;margin-bottom:18px}.app-header,.avatar,.avatar-pair{display:flex;align-items:center}.avatar{width:42px;height:42px;border-radius:50%;justify-content:center;font-weight:700;font-size:var(--fs-md);color:#fff;border:2.5px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.08)}.avatar.me{background:linear-gradient(135deg,var(--rose),var(--rose-deep))}.avatar.partner{background:linear-gradient(135deg,var(--plum),#7a5a8a)}.avatar-partner-offset,.avatar.partner{margin-right:-14px}.hero-banner{margin:-20px -16px 18px;padding:28px 16px 24px;background:linear-gradient(120deg,var(--rose) 0,var(--rose-deep) 45%,var(--plum) 100%);background-size:200% 200%;animation:heroShift 12s ease infinite;border-radius:0;color:#fff;box-shadow:0 10px 28px rgba(156,17,80,.22);position:relative;overflow:hidden;animation:fadeIn .5s ease both}.hero-wave{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:22px;display:block}.hero-banner:after,.hero-banner:before{content:"";position:absolute;border-radius:50%;background:hsla(0,0%,100%,.1);pointer-events:none}.hero-banner:before{width:140px;height:140px;top:-60px;left:-30px}.hero-banner:after{width:90px;height:90px;bottom:-40px;right:10%;background:rgba(212,166,86,.18)}@keyframes heroShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.hero-banner .subtitle,.hero-banner .title{color:#fff;position:relative;z-index:1}.hero-banner .subtitle{opacity:.9}.hero-banner .avatar{border-color:hsla(0,0%,100%,.6)}.hero-banner .badge{background:hsla(0,0%,100%,.18);color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hero-banner>*{position:relative;z-index:1}.feature-card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:18px 10px;text-align:center;box-shadow:0 1px 2px rgba(46,34,51,.04),0 6px 16px rgba(46,34,51,.05);animation:fadeInUp .4s cubic-bezier(.2,.8,.2,1) both;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s ease}.feature-card:active{transform:scale(.95)}@media (hover:hover){.feature-card:hover{transform:translateY(-3px);box-shadow:0 4px 8px rgba(46,34,51,.06),0 14px 26px rgba(46,34,51,.1)}}.feature-icon{width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:21px;margin:0 auto 8px;transition:transform .2s ease}.feature-card:active .feature-icon{transform:scale(.9) rotate(-4deg)}.feature-label{font-size:var(--fs-sm);font-weight:600;color:var(--text)}.floaty{animation:floaty 3.2s ease-in-out infinite;display:inline-block}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.call-overlay{position:fixed;inset:0;background:linear-gradient(160deg,#2e1a36,#1a1220);justify-content:center;z-index:2000;color:#fff;padding:24px}.call-card,.call-overlay{display:flex;flex-direction:column;align-items:center}.call-card{gap:18px}.call-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;background:linear-gradient(135deg,var(--rose),var(--plum));color:#fff}.call-avatar.big{width:92px;height:92px;font-size:30px}.pulse-ring{animation:pulse 1.4s infinite}.call-title{font-size:var(--fs-md);font-weight:600}.call-timer{font-size:var(--fs-base);opacity:.8;margin-top:10px}.call-actions{display:flex;gap:16px;margin-top:8px}.call-btn{border:none;border-radius:999px;padding:14px 22px;font-size:var(--fs-base);font-weight:700;cursor:pointer;color:#fff;font-family:inherit;transition:transform .12s ease}.call-btn:active{transform:scale(.93)}.call-btn.accept{background:#2fa96b}.call-btn.decline{background:#d64545}.call-btn.mute{background:hsla(0,0%,100%,.15)}.active-call{justify-content:space-between;padding:40px 20px}.active-call.video-mode{padding:0;background:#000}.remote-video{width:100%;height:100%;inset:0}.local-video,.remote-video{object-fit:cover;position:absolute}.local-video{bottom:110px;left:16px;width:110px;height:150px;border-radius:14px;border:2px solid hsla(0,0%,100%,.4);z-index:2}.video-mode .call-timer{top:24px}.video-mode .call-actions,.video-mode .call-timer{position:absolute;right:50%;transform:translateX(50%);z-index:2}.video-mode .call-actions{bottom:30px}.call-btn.minimize{background:hsla(0,0%,100%,.15);font-size:var(--fs-sm);padding:14px 16px}.call-pill{position:fixed;bottom:76px;left:12px;right:12px;max-width:448px;margin:0 auto;background:linear-gradient(135deg,var(--rose),var(--plum));color:#fff;border-radius:16px;padding:12px 16px;display:flex;align-items:center;gap:10px;font-size:var(--fs-sm);z-index:1500;box-shadow:0 8px 20px rgba(0,0,0,.25);cursor:pointer}.call-pill-dot{width:8px;height:8px;border-radius:50%;background:#3ecf7a;flex-shrink:0}.call-pill span:nth-child(2){flex:1 1}.call-pill-end{background:hsla(0,0%,100%,.2);border:none;color:#fff;border-radius:10px;padding:6px 12px;font-size:var(--fs-xs);font-weight:700;cursor:pointer}.profile-detail{margin:6px 0;font-size:14px;line-height:1.8}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:8px 0;border-bottom:1px solid var(--border)}.settings-row:last-child{border-bottom:none}.nav-canvas{border:none}.nav-canvas.active{color:var(--rose-deep)}body{line-height:1.6}button,input,select,textarea{font-family:inherit}.btn,.btn-outline,.settings-row{min-height:44px}.card{margin-bottom:18px}.section-gap{margin-top:24px}.scroll-page{padding-bottom:calc(92px + env(safe-area-inset-bottom))}.ludo-card{padding:12px}.ludo-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.ludo-player-pills{display:flex;gap:6px;flex-wrap:wrap}.ludo-player-pills span{display:inline-flex;align-items:center;gap:4px;padding:6px 9px;border-radius:999px;background:color-mix(in srgb,var(--pill) 12%,var(--card));border:1px solid color-mix(in srgb,var(--pill) 35%,transparent);font-size:11px;font-weight:700;color:var(--text)}.ludo-board-wrap{width:min(94vw,620px);margin:0 auto;touch-action:manipulation}.ludo-board{display:grid;grid-template-columns:repeat(15,1fr);grid-template-rows:repeat(15,1fr);aspect-ratio:1;border-radius:14px;overflow:hidden;border:2px solid rgba(70,50,80,.14);box-shadow:0 8px 24px rgba(46,34,51,.14)}.ludo-cell{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;border:1px solid rgba(70,50,80,.06)}.ludo-safe-mark{font-size:12px;opacity:.5;color:#8a6414}.ludo-cup{font-size:18px}.ludo-token-button,.ludo-yard-token{border:0;background:transparent;padding:0;margin:0;width:100%;height:100%;display:grid;place-items:center;cursor:pointer}.ludo-pawn{position:relative;width:72%;height:72%;min-width:10px;min-height:10px;filter:drop-shadow(0 2px 2px rgba(0,0,0,.25));transform-origin:center bottom;pointer-events:none}.ludo-pawn i{position:absolute;left:28%;top:0;width:44%;height:44%;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff8,var(--pawn) 48%,#0002);box-shadow:inset 0 -2px 2px #0002}.ludo-pawn b{position:absolute;left:22%;top:28%;width:56%;height:55%;background:linear-gradient(135deg,#fff4,var(--pawn) 40%,#0002);-webkit-clip-path:polygon(30% 0,70% 0,100% 90%,50% 100%,0 90%);clip-path:polygon(30% 0,70% 0,100% 90%,50% 100%,0 90%);border-radius:35% 35% 28% 28%}.ludo-pawn span{position:absolute;inset:auto 0 0;text-align:center;font-size:8px;color:#fff;font-weight:900;text-shadow:0 1px 2px #0009}.ludo-pawn-active{animation:pawnPulse .8s ease-in-out infinite}@keyframes pawnPulse{50%{transform:translateY(-3px) scale(1.08)}}.ludo-yard-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:9px;gap:9px;margin-top:12px}.ludo-yard-card{border:2px solid;border-radius:14px;padding:9px}.ludo-yard-title{display:flex;align-items:center;gap:6px;font-weight:800;font-size:12px}.ludo-yard-title>span{width:9px;height:9px;border-radius:50%}.ludo-yard-title small{-webkit-margin-start:auto;margin-inline-start:auto;font-weight:600;color:var(--text-soft)}.ludo-yard-pawns{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:4px;gap:4px;margin-top:6px;height:54px}.ludo-yard-home-dot{display:grid;place-items:center;border-radius:50%;background:#fff8;color:var(--text-soft);font-weight:800}.ludo-control{text-align:center;margin-top:16px}.ludo-die{width:76px;height:76px;border-radius:18px;margin:0 auto 10px;display:grid;place-items:center;background:linear-gradient(145deg,#fff,#e7dfea);color:#3a2b43;box-shadow:0 8px 18px rgba(46,34,51,.16),inset 0 -3px 0 #0001;perspective:600px}.ludo-die strong{font-size:44px}.ludo-die-rolling{animation:dieRoll .38s ease-in-out infinite}@keyframes dieRoll{50%{transform:rotateX(25deg) rotateY(25deg) scale(1.07)}}.ludo-turn-copy{font-weight:800;margin-bottom:4px}.snake-token{width:68%;height:68%;border-radius:50% 50% 45% 45%;position:relative;display:grid;place-items:center;color:#fff;font-size:9px;font-weight:900;border:2px solid #fff;box-shadow:0 3px 7px rgba(0,0,0,.35),inset 0 -3px 4px rgba(0,0,0,.18);background:radial-gradient(circle at 32% 25%,#fff8,var(--token) 42%,#0003);transform:translateY(-2px)}.snake-token:after{content:"";position:absolute;left:24%;right:24%;bottom:-8%;height:20%;border-radius:50%;background:var(--token);z-index:-1}.snake-color-picker{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:12px 0}.snake-color-picker button{width:36px;height:36px;border-radius:50%;border:3px solid transparent;cursor:pointer;box-shadow:0 2px 7px rgba(0,0,0,.18)}.snake-color-picker button.selected{border-color:var(--text)}.settings-report-meta{margin:10px 0;padding:10px;border-radius:12px;background:var(--bubble);font-size:12px;line-height:1.8;word-break:break-word}.settings-version{padding:10px}.nav-canvas{font:inherit;min-width:44px;min-height:44px;justify-content:center;touch-action:manipulation}@media(max-width:430px){.container,.game-container{padding-left:12px;padding-right:12px}.card{padding:14px}.ludo-yard-grid{gap:7px}.ludo-yard-pawns{height:48px}}@font-face{font-family:Vazirmatn;src:url(/fonts/Vazirmatn-Regular.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Vazirmatn;src:url(/fonts/Vazirmatn-Medium.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Vazirmatn;src:url(/fonts/Vazirmatn-Bold.woff2) format("woff2");font-weight:700;font-display:swap}:root{--brand:#5b3fd0;--brand-strong:#4930ae;--accent:#ff7a9a;--success:#26845f;--warning:#9a6900;--danger:#c33b4a;--r-control:12px;--r-card:16px;--r-sheet:20px}body{font-family:Vazirmatn,Tahoma,Arial,sans-serif;line-height:1.7}.container,.game-container{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.card{border-radius:16px;box-shadow:none;padding:16px}.btn,.input,.settings-row{min-height:44px}.btn{border-radius:12px}.shell-header{max-width:480px;margin:0 auto;padding:calc(10px + env(safe-area-inset-top)) 16px 8px;display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:20}.shell-avatar-link{display:flex}.icon-button{width:44px;height:44px;border:0;border-radius:12px;background:transparent;color:var(--text-soft);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;position:relative;flex:0 0 44px}.shell-action-button{color:var(--text)}.notification-bell-wrap{position:relative}.count-badge{position:absolute;top:1px;left:2px;min-width:16px;height:16px;padding:0 3px;border-radius:9px;background:var(--accent);color:#fff;border:2px solid var(--bg);font:700 9px/12px Vazirmatn;text-align:center}.notification-panel{position:absolute;top:48px;left:0;width:min(320px,calc(100vw - 32px));max-height:420px;overflow:auto;background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:0 8px 22px rgba(38,26,52,.08);padding:10px;direction:rtl}.notification-panel-title{font-weight:700;font-size:15px;padding:6px 4px 10px}.notification-item{padding:10px;border-bottom:1px solid var(--border);font-size:13px}.notification-item:last-child{border-bottom:0}.notification-user{display:flex;align-items:center;gap:8px}.notification-actions{display:flex;gap:6px;margin-top:8px}.notification-actions .btn{width:auto;flex:1 1;padding:7px 10px}.home-feature-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-top:8px}.home-feature-card{min-height:152px;padding:16px;border-radius:16px;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s cubic-bezier(.2,0,0,1)}.home-feature-card:active{transform:scale(.98)}.feature-icon-svg{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:10px}.feature-label{font-size:16px;font-weight:700}.home-feature-card .subtitle{margin:4px 0 8px;line-height:1.55}.home-feature-status{margin-top:auto;color:var(--text-soft);font-size:12px}.settings-page{padding-top:8px}.settings-section{margin-bottom:24px}.settings-section h2{font-size:17px;margin:0 0 8px;font-weight:700}.settings-group{background:var(--card);border:1px solid var(--border);border-radius:16px;overflow:hidden}.setting-item{border-bottom:1px solid var(--border)}.setting-item:last-child{border-bottom:0}.setting-main{min-height:72px;padding:12px 14px;gap:10px}.setting-icon,.setting-main{display:flex;align-items:center}.setting-icon{width:36px;height:36px;border-radius:11px;background:var(--bubble);justify-content:center;color:var(--brand);flex:0 0 36px}.setting-copy{flex:1 1;min-width:0}.setting-title{font-size:15px;font-weight:700}.setting-description{font-size:12.5px;line-height:1.65;color:var(--text-soft)}.info-button{width:36px;height:36px;border:0;background:transparent;color:var(--text-soft);display:flex;align-items:center;justify-content:center;border-radius:10px;cursor:pointer}.setting-action{border:0;background:transparent;font:500 13px Vazirmatn;color:var(--brand);min-height:44px}.text-action{color:var(--brand);font-weight:700;background:none;border:0;font:inherit;cursor:pointer}.text-action.danger{color:var(--danger)}.switch{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:48px;height:30px;border-radius:20px;background:var(--border);position:relative;cursor:pointer;transition:background .2s}.switch:before{content:"";position:absolute;width:22px;height:22px;top:4px;right:4px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:transform .2s}.switch:checked{background:var(--brand)}.switch:checked:before{transform:translateX(-18px)}.settings-inline{padding:14px;border-top:1px solid var(--border)}.privacy-grid{display:grid;grid-gap:8px;gap:8px;padding:14px}.privacy-grid label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.privacy-grid select{min-height:40px;border:1px solid var(--border);border-radius:10px;background:var(--card);color:var(--text);padding:0 10px;font:inherit}.settings-warning{margin:0 14px 14px;padding:10px 12px;background:var(--gold-light);color:var(--text);border-radius:12px;display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.7}.sheet-backdrop{position:fixed;inset:0;z-index:12000;background:rgba(25,18,31,.46);display:flex;align-items:flex-end;justify-content:center;padding-bottom:env(safe-area-inset-bottom)}.sheet{width:min(480px,100%);max-height:82dvh;overflow:auto;background:var(--card);border-radius:20px 20px 0 0;padding:10px 16px 20px;animation:sheetIn .25s cubic-bezier(.2,0,0,1)}.sheet-handle{width:44px;height:4px;border-radius:4px;background:var(--border);margin:2px auto 10px}.sheet-head{display:flex;align-items:center;justify-content:space-between}.sheet-body{padding:8px 0;font-size:15px;line-height:1.8}.sheet-example{margin-top:10px;background:var(--bubble);padding:10px 12px;border-radius:12px}.danger-fill{background:var(--danger)}.toast{position:fixed;right:50%;bottom:calc(88px + env(safe-area-inset-bottom));transform:translateX(50%);z-index:13000;background:var(--text);color:var(--card);padding:9px 14px;border-radius:12px;font-size:12px}@keyframes sheetIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.title{line-height:1.35;letter-spacing:0}.subtitle{line-height:1.75;margin-bottom:16px}body,button,input,select,textarea{font-feature-settings:"tnum" 1}button,input,select,textarea{font-family:Vazirmatn,Tahoma,Arial,sans-serif}.nav-bottom{min-height:64px;padding:8px 6px calc(8px + env(safe-area-inset-bottom));gap:2px}.nav-icon{font-size:22px}.settings-version{padding:12px;text-align:center;color:var(--text-soft);font-size:12px}.error-box{background:#fff0f1;color:#8f2834;border-color:#f0ccd0}.success-box{background:#edf8f2;color:#216d50;border-color:#cae8d8}[data-theme=dark]{--brand:#8f78ea;--brand-strong:#a694ff;--accent:#ff8eaa;--success:#72d0a6;--warning:#e4bd61;--danger:#ff7c8c}[data-theme=dark] body{background:#17131b;color:var(--text)}[data-theme=dark] .home-feature-card,[data-theme=dark] .settings-group,[data-theme=dark] .sheet{background:#241e2b}[data-theme=dark] .settings-warning{background:#332b1b;color:#eadcae}[data-theme=dark] .error-box{background:#382124;color:#ffadb5;border-color:#5a3038}@media(max-width:430px){.container,.game-container{padding-left:16px;padding-right:16px}.home-feature-grid{gap:10px}.home-feature-card{min-height:144px;padding:14px}.setting-main{min-height:68px}}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.mood-partner-link{display:inline-flex;align-items:center;gap:10px;justify-content:center}.mood-partner-link span{display:flex;flex-direction:column;align-items:flex-start}.mood-partner-link small{font-size:11px;color:var(--text-soft)}.profile-username{font-size:12px;color:var(--text-soft);margin-bottom:4px}.profile-edit-grid{display:grid;grid-gap:10px;gap:10px;margin-top:12px}.profile-edit-grid label{font-size:13px;font-weight:600}.profile-edit-grid .input{margin-top:5px}.call-profile-link{display:flex;flex-direction:column;align-items:center;color:inherit;text-decoration:none}.call-actions .call-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px}.call-actions .call-btn svg{flex:0 0 auto}.setting-consequence{font-size:12px;line-height:1.7;color:var(--text-soft);margin-top:3px}.settings-inline-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.settings-inline-head>div{flex:1 1;min-width:0}.home-feature-link{display:block;color:inherit;text-decoration:none;min-width:0}.home-feature-card{color:var(--text);background:var(--card);border:1px solid var(--border);text-align:right;overflow:hidden}.home-feature-card .feature-label{color:var(--text);font-size:16px;line-height:24px;font-weight:700;opacity:1}.home-feature-card .subtitle{font-size:13px;line-height:20px}.home-feature-card .home-feature-status,.home-feature-card .subtitle{color:var(--text-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-feature-card .home-feature-status{font-size:12px;line-height:18px}.feature-icon-svg{flex:0 0 44px;color:var(--brand);background:var(--plum-light);border:1px solid color-mix(in srgb,var(--brand) 10%,transparent)}@media (prefers-contrast:more){.home-feature-card{border-color:var(--text-soft)}}.profile-username-edit{display:flex;direction:ltr;align-items:center;justify-content:flex-start;gap:6px}.profile-username-edit>span{font-weight:700;color:var(--text-soft)}.profile-username-edit .input{direction:ltr;text-align:left}:root{--ds-primary:#5b3fd0;--ds-primary-strong:#4930ae;--ds-accent:#ff7a9a;--ds-success:#26845f;--ds-warning:#9a6900;--ds-danger:#c33b4a;--ds-bg:#f7f5fa;--ds-surface:#fff;--ds-surface-muted:#f3f0f7;--ds-text:#241e2a;--ds-text-secondary:#6e6578;--ds-border:#e4dfe9;--ds-focus:rgba(91,63,208,.16);--ds-s1:4px;--ds-s2:8px;--ds-s3:12px;--ds-s4:16px;--ds-s5:20px;--ds-s6:24px;--ds-s7:32px;--ds-s8:40px;--ds-r-control:12px;--ds-r-card:16px;--ds-r-sheet:20px;--ds-r-pill:999px;--ds-shadow:0 8px 22px rgba(38,26,52,.08);--ds-fs-caption:12px;--ds-lh-caption:18px;--ds-fs-small:14px;--ds-lh-small:22px;--ds-fs-body:16px;--ds-lh-body:26px;--ds-fs-title-sm:17px;--ds-lh-title-sm:24px;--ds-fs-title:20px;--ds-lh-title:28px;--ds-fs-headline:24px;--ds-lh-headline:32px;--ds-fs-display:28px;--ds-lh-display:36px;--ds-motion-fast:120ms;--ds-motion-standard:200ms;--ds-motion-slow:300ms;--ds-ease:cubic-bezier(.2,0,0,1);--ds-ease-in:cubic-bezier(0,0,.2,1);--ds-ease-out:cubic-bezier(.4,0,1,1)}.ds-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:0;border-radius:var(--ds-r-control);font:500 16px/26px Vazirmatn,Tahoma,sans-serif;cursor:pointer;transition:transform var(--ds-motion-fast) var(--ds-ease),background var(--ds-motion-standard) var(--ds-ease),opacity var(--ds-motion-standard) var(--ds-ease);touch-action:manipulation}.ds-button:active:not(:disabled){transform:scale(.97)}.ds-button:disabled{opacity:.5;cursor:not-allowed}.ds-button-primary{background:var(--ds-primary);color:#fff;box-shadow:var(--ds-shadow)}.ds-button-secondary{background:var(--ds-surface-muted);color:var(--ds-text);border:1px solid var(--ds-border)}.ds-button-text{background:transparent;color:var(--ds-primary);padding-inline:8px}.ds-button-danger{background:var(--ds-danger);color:#fff}.ds-button-sm{min-height:40px;font-size:14px;line-height:22px}.ds-button-lg{min-height:48px}.ds-spinner{width:16px;height:16px;border:2px solid;border-inline-start-color:transparent;border-radius:50%;animation:ds-spin .7s linear infinite}@keyframes ds-spin{to{transform:rotate(1turn)}}.ds-icon-button{width:var(--ds-icon-button-size);height:var(--ds-icon-button-size);min-width:44px;min-height:44px;border:0;border-radius:var(--ds-r-control);display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--ds-text-secondary);cursor:pointer;transition:transform var(--ds-motion-fast) var(--ds-ease),background var(--ds-motion-standard) var(--ds-ease),color var(--ds-motion-standard) var(--ds-ease)}.ds-icon-button:active:not(:disabled){transform:scale(.97)}.ds-icon-button-ghost:hover{background:var(--ds-surface-muted);color:var(--ds-text)}.ds-icon-button-filled{background:var(--ds-primary);color:#fff}.ds-field{display:grid;grid-gap:6px;gap:6px;font:400 16px/26px Vazirmatn,Tahoma,sans-serif}.ds-field-label{font-weight:500;color:var(--ds-text)}.ds-input{width:100%;min-height:44px;border:1px solid var(--ds-border);border-radius:var(--ds-r-control);background:var(--ds-surface);color:var(--ds-text);padding:0 12px;font:inherit;outline:none;transition:border-color var(--ds-motion-standard) var(--ds-ease),box-shadow var(--ds-motion-standard) var(--ds-ease)}.ds-input:focus{border-color:var(--ds-primary);box-shadow:0 0 0 3px var(--ds-focus)}.ds-field-hint{font-size:12px;line-height:18px;color:var(--ds-text-secondary)}.ds-field-hint.is-error{color:var(--ds-danger)}.ds-card{background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-r-card);padding:16px;box-shadow:none}.ds-settings-row{min-height:72px;display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid var(--ds-border);font-family:Vazirmatn,Tahoma,sans-serif}.ds-settings-icon{width:36px;height:36px;flex:0 0 36px;border-radius:12px;display:grid;place-items:center;background:var(--ds-surface-muted);color:var(--ds-primary)}.ds-settings-copy{min-width:0;flex:1 1}.ds-settings-title{font-size:17px;line-height:24px;font-weight:700;color:var(--ds-text)}.ds-settings-description{font-size:14px;line-height:22px;color:var(--ds-text-secondary)}.ds-settings-consequence{font-size:12px;line-height:18px;color:var(--ds-text-secondary);margin-top:2px}.ds-settings-info{width:36px;height:36px;border:0;background:transparent;color:var(--ds-text-secondary);display:grid;place-items:center;border-radius:10px}.ds-empty-state,.ds-error-state{text-align:center;padding:32px 16px;color:var(--ds-text)}.ds-empty-icon,.ds-error-icon{width:48px;height:48px;border-radius:16px;margin:0 auto 12px;display:grid;place-items:center;background:var(--ds-surface-muted);color:var(--ds-primary);font-size:22px;font-weight:700}.ds-empty-state h2,.ds-error-state h2{font-size:20px;line-height:28px;margin:0 0 6px}.ds-empty-state p,.ds-error-state p{font-size:16px;line-height:26px;color:var(--ds-text-secondary);margin:0 auto 16px;max-width:34ch}.ds-badge{min-height:24px;padding:0 8px;border-radius:999px;font-size:12px;line-height:18px;font-weight:700}.ds-badge,.ds-switch-wrap{display:inline-flex;align-items:center}.ds-switch-wrap{gap:8px;min-height:44px}.ds-switch{position:absolute;opacity:0}.ds-switch-track{width:48px;height:30px;border-radius:999px;background:var(--ds-border);padding:4px;display:block;transition:background .2s var(--ds-ease)}.ds-switch-track>span{display:block;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:transform .2s var(--ds-ease)}.ds-switch:checked+.ds-switch-track{background:var(--ds-primary)}.ds-switch:checked+.ds-switch-track>span{transform:translateX(-18px)}@media(max-width:430px){.ds-card{padding:14px}}[data-theme=dark]{--ds-bg:#17131b;--ds-surface:#241e2b;--ds-surface-muted:#2d2635;--ds-text:#f2ecf5;--ds-text-secondary:#b8acbf;--ds-border:#413648;--ds-primary:#8f78ea;--ds-primary-strong:#a694ff;--ds-success:#72d0a6;--ds-warning:#e4bd61;--ds-danger:#ff7c8c;--ds-focus:rgba(143,120,234,.24)}@media(prefers-reduced-motion:reduce){.ds-button,.ds-icon-button,.ds-input,.ds-switch-track,.ds-switch-track>span{transition:none!important}.ds-spinner{animation:none!important}}.shell-brand-link{display:inline-flex;align-items:center;min-height:44px;font-size:20px;line-height:28px;font-weight:700;color:var(--ds-text);text-decoration:none}.shell-loading{min-height:100dvh;display:grid;place-items:center;padding:40px 16px}.shell-header-actions{display:flex;align-items:center;gap:4px;direction:ltr}.shell-avatar-link{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center}.nav-icon{display:grid;place-items:center;width:24px;height:24px}.nav-canvas{border:0;font-family:inherit;background:transparent;color:inherit;cursor:pointer}@media(max-width:430px){.shell-header{padding-inline:16px}.nav-item{padding-inline:8px}}.feature-card-v2-link{display:block;min-width:0;color:inherit;text-decoration:none}.feature-card-v2{min-height:152px;padding:16px;border:1px solid var(--ds-border);border-radius:16px;background:var(--ds-surface);display:flex;flex-direction:column;align-items:flex-start;gap:0;transition:transform .12s var(--ds-ease),box-shadow .2s var(--ds-ease),border-color .2s var(--ds-ease)}.feature-card-v2-link:focus-visible{outline:3px solid var(--ds-focus);outline-offset:2px;border-radius:16px}.feature-card-v2-link:active .feature-card-v2{transform:scale(.98)}@media (hover:hover){.feature-card-v2-link:hover .feature-card-v2{box-shadow:var(--ds-shadow);border-color:color-mix(in srgb,var(--ds-primary) 25%,var(--ds-border))}}.feature-card-v2-icon{width:44px;height:44px;border-radius:14px;background:var(--ds-surface-muted);color:var(--ds-primary);display:grid;place-items:center;margin-bottom:12px}.feature-card-v2-title{font-size:17px;line-height:24px;font-weight:700;color:var(--ds-text)}.feature-card-v2-subtitle{font-size:14px;line-height:22px;color:var(--ds-text-secondary);margin-top:2px}.feature-card-v2-status{font-size:12px;line-height:18px;color:var(--ds-text-secondary);margin-top:auto;padding-top:8px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}@media(max-width:430px){.feature-card-v2{min-height:144px;padding:14px}}@media(prefers-reduced-motion:reduce){.feature-card-v2{transition:none!important}}.error-screen{min-height:100dvh;display:grid;place-items:center;padding:24px 16px;background:var(--ds-bg);color:var(--ds-text);font-family:Vazirmatn,Tahoma,sans-serif}.error-state{width:min(100%,460px);padding:28px 22px;text-align:center;background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:20px;box-shadow:var(--ds-shadow)}.error-state-icon{width:56px;height:56px;margin:0 auto 16px;border-radius:18px;display:grid;place-items:center;background:var(--ds-surface-muted);color:var(--ds-danger);font-size:28px;font-weight:800}.error-state h1{margin:0 0 8px;font-size:22px;line-height:30px;color:var(--ds-text)}.error-state p{margin:0 auto 14px;max-width:36ch;font-size:15px;line-height:24px}.error-id,.error-state p{color:var(--ds-text-secondary)}.error-id{margin:0 auto 18px;padding:7px 10px;border-radius:10px;background:var(--ds-surface-muted);font:500 12px/18px ui-monospace,SFMono-Regular,Consolas,monospace;direction:ltr;-webkit-user-select:text;-moz-user-select:text;user-select:text}.error-state .btn{min-height:46px}@media(max-width:430px){.error-state{padding:24px 16px;border-radius:18px}}@media(prefers-reduced-motion:reduce){.error-state .btn{transition:none!important}}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--fs-xs:12px;--fs-sm:14px;--fs-base:16px;--fs-md:17px;--fs-lg:20px;--fs-title:24px;--fs-hero:28px;--radius-control:12px;--radius-card:16px;--radius-sheet:20px;--radius-pill:999px}body{background:var(--ds-bg);color:var(--ds-text);font-size:16px;line-height:26px}.container,.game-container{padding:20px 16px calc(96px + env(safe-area-inset-bottom))}.card,.ds-card{border-radius:var(--radius-card);box-shadow:none;background:var(--ds-surface);border-color:var(--ds-border);padding:16px}.title{font-size:24px;line-height:32px;font-weight:700}.subtitle{font-size:14px;line-height:22px;color:var(--ds-text-secondary)}.btn{min-height:44px;border-radius:var(--radius-control);padding:0 16px;font-size:16px;line-height:26px;font-weight:500;background:var(--ds-primary);box-shadow:var(--ds-shadow)}.btn-outline{color:var(--ds-primary);border:1px solid var(--ds-primary);box-shadow:none}.btn-outline,.input{background:var(--ds-surface)}.input{min-height:44px;padding:0 12px;border-radius:var(--radius-control);border-color:var(--ds-border);color:var(--ds-text);font-size:16px;line-height:26px}.badge{min-height:24px;display:inline-flex;align-items:center;padding:0 8px;border-radius:999px}.badge,.nav-item{font-size:12px;line-height:18px}.nav-item{min-width:44px;min-height:44px;padding:6px 8px;color:var(--ds-text-secondary)}.nav-item.active{color:var(--ds-primary);background:color-mix(in srgb,var(--ds-primary) 10%,var(--ds-surface))}.ds-list{display:grid;grid-gap:0;gap:0;background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:16px;overflow:hidden}.ds-list-row{min-height:56px;display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--ds-border)}.ds-list-row:last-child{border-bottom:0}.ds-section-title{font-size:17px;line-height:24px;font-weight:700;margin:0 0 8px}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--ds-focus);outline-offset:2px}@media(max-width:389px){.container,.game-container{padding-inline:12px}.card{padding:14px}.home-feature-grid{gap:8px}.feature-card-v2,.home-feature-card{min-height:140px;padding:12px}.title{font-size:20px;line-height:28px}}@media(prefers-reduced-motion:reduce){.bell-ring,.btn-attention,.card,.feature-card,.feature-card-v2,.floaty,.heartbeat,.home-feature-card,.page-transition,.shimmer{animation:none!important}}[data-theme=dark] .input{color:var(--ds-text)}[data-theme=dark] .input,[data-theme=dark] .note{background:var(--ds-surface);border-color:var(--ds-border)}