:root{--bg:#0a0712;--bg2:#140e24;--panel:rgba(26,18,42,.72);--panel2:rgba(34,24,56,.85);--line:rgba(232,198,106,.16);--line2:rgba(232,198,106,.34);--gold:#e8c66a;--gold2:#f6e0a0;--ink:#eadfc8;--muted:#8a7f9c;--good:#8fd0a9;--mid:#e8c66a;--ill:#d98a8a;--r:16px;--r-sm:11px;--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--ease-drawer:cubic-bezier(.32,.72,0,1);--t-press:.12s;--t-ui:.2s;--t-panel:.24s;--t-rite:.6s}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;background:#050309}body{font-family:Vazirmatn,system-ui,sans-serif;color:var(--ink);line-height:1.7}body[dir=ltr]{line-height:1.62}button,input,textarea{font-family:inherit}.app{position:relative;max-width:420px;min-height:100dvh;margin:0 auto;display:flex;flex-direction:column;background:radial-gradient(120% 55% at 50% -8%,#1c1233 0%,var(--bg) 58%) fixed,var(--bg);border-inline:1px solid rgba(232,198,106,.08);overflow:hidden}main{flex:1;overflow-y:auto;padding:14px 16px 96px;scroll-behavior:smooth}.mist{position:fixed;z-index:0;width:420px;height:340px;pointer-events:none;opacity:.07;filter:blur(46px);background:radial-gradient(closest-side,#8a5fb0,transparent 70%)}.mist.a{top:-60px;inset-inline-start:-120px;animation:drift1 74s var(--ease-in-out) infinite alternate}.mist.b{bottom:-80px;inset-inline-end:-140px;background:radial-gradient(closest-side,#e8c66a,transparent 70%);opacity:.05;animation:drift2 96s var(--ease-in-out) infinite alternate}@keyframes drift1{to{transform:translate(90px,60px)}}@keyframes drift2{to{transform:translate(-80px,-70px)}}.top,main,.tabs{position:relative;z-index:1}.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:10px;padding:12px 16px 10px;background:linear-gradient(var(--bg) 62%,transparent)}.top img{filter:drop-shadow(0 0 6px rgba(232,198,106,.35))}.top .name{font-weight:700;color:var(--gold2);letter-spacing:.02em}.top .badge{margin-inline-start:auto;font-size:.66rem;color:var(--muted);border:1px solid var(--line);border-radius:99px;padding:2px 9px}.top .badge:empty{display:none}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:16px;margin-bottom:14px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.h-sec{font-size:.8rem;color:var(--gold);letter-spacing:.06em;margin:20px 4px 10px;display:flex;align-items:center;gap:8px}.h-sec:after{content:"";flex:1;height:1px;background:linear-gradient(to var(--to-end,left),var(--line2),transparent);transform:scaleX(0);transform-origin:var(--from-start,right);transition:transform .5s var(--ease-out)}.panel.on .h-sec:after{transform:scaleX(1)}body[dir=ltr]{--to-end:right;--from-start:left}.muted{color:var(--muted);font-size:.8rem}.btn{font-size:.92rem;border-radius:12px;padding:11px 20px;cursor:pointer;border:1px solid var(--line2);background:transparent;color:var(--gold2);transition:transform var(--t-press) var(--ease-out),opacity var(--t-ui) var(--ease-out)}.btn:active{transform:scale(.97)}.btn[disabled]{opacity:.4;pointer-events:none}.btn.primary{background:linear-gradient(180deg,#e8c66a33,#e8c66a14);font-weight:500}.btn.ghost{border-color:transparent;color:var(--muted)}.tone{display:inline-block;width:9px;height:9px;border-radius:50%;flex:none}.tone.good{background:var(--good);box-shadow:0 0 7px var(--good)}.tone.mid{background:var(--mid);box-shadow:0 0 7px var(--mid)}.tone.ill{background:var(--ill);box-shadow:0 0 7px var(--ill)}.caret{display:inline-block;width:2px;height:1.05em;margin-inline-start:2px;vertical-align:-.15em;background:var(--gold2);box-shadow:0 0 8px #f6e0a0e6;animation:blink 1.05s steps(2,start) infinite}.caret.think{animation:think .5s var(--ease-in-out) infinite alternate}@keyframes blink{50%{opacity:0}}@keyframes think{0%{box-shadow:0 0 4px #f6e0a080}to{box-shadow:0 0 14px #f6e0a0}}.scribing{cursor:pointer}.tabs{position:fixed;bottom:0;inset-inline:0;max-width:420px;margin:0 auto;z-index:20;display:flex;background:#0a0712eb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:6px 4px calc(8px + env(safe-area-inset-bottom))}.tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 0;cursor:pointer;color:var(--muted);font-size:.7rem;border:0;background:none;transition:color var(--t-ui) var(--ease-out),transform var(--t-press) var(--ease-out)}.tab:active{transform:scale(.94)}.tab svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.5}.tab.on{color:var(--gold2)}.tab.on svg{filter:drop-shadow(0 0 5px rgba(232,198,106,.6))}.panel{display:none}.panel.on{display:block;animation:fadeUp var(--t-panel) var(--ease-out)}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.wake{opacity:0;animation:fadeUp .24s var(--ease-out) forwards;animation-delay:var(--d,0ms)}.date-line{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.85rem;margin:2px 4px 14px;min-height:1.5em}.date-line .moon{color:var(--gold2);font-size:1.05rem}.seal-card{position:relative;height:292px;perspective:1100px;margin-bottom:14px;cursor:pointer}.seal-inner{position:absolute;inset:0;transition:transform .9s var(--ease-in-out);transform-style:preserve-3d}.seal-card.open .seal-inner{transform:rotateY(180deg)}.face{position:absolute;inset:0;backface-visibility:hidden;border-radius:var(--r);border:1px solid var(--line2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px;text-align:center;overflow:hidden}.face.front{background:linear-gradient(160deg,#241839,#120c20)}.face.front:after{content:"";position:absolute;inset:10px;border:1px solid var(--line);border-radius:11px;pointer-events:none}.face.front img{width:58px;height:58px;filter:drop-shadow(0 0 12px rgba(232,198,106,.45));animation:breathe 3.4s var(--ease-in-out) infinite}@keyframes breathe{50%{transform:scale(1.06)}}.face.front .t{color:var(--gold2);font-weight:700;font-size:1.05rem}.face.back{background:linear-gradient(160deg,#1c1330,#0e0919);transform:rotateY(180deg);justify-content:flex-start;padding-top:14px}.night-img{height:150px;border-radius:9px;border:1px solid var(--line2);animation:materialize .9s var(--ease-out) both}.night-img.rev{transform:rotate(180deg)}@keyframes materialize{0%{opacity:0;filter:blur(10px);transform:scale(1.04)}to{opacity:1;filter:blur(0);transform:none}}.night-name{color:var(--gold2);font-weight:700;margin-top:8px;min-height:1.4em}.night-omen{font-size:.85rem;line-height:1.95;min-height:3.4em;padding:0 4px}.streak{display:flex;align-items:center;gap:12px}.flames{display:flex;gap:7px}.flame{width:11px;height:11px;border-radius:50% 50% 50% 0;transform:rotate(45deg);background:#2c2140;border:1px solid var(--line)}.flame.lit{background:radial-gradient(circle at 40% 35%,var(--gold2),#c98a2e);border-color:var(--gold);box-shadow:0 0 9px #e8c66a8c;animation:flick 2.8s var(--ease-in-out) infinite;animation-delay:var(--d,0ms)}@keyframes flick{50%{transform:rotate(45deg) scale(.88);opacity:.72}}.hour-card{display:flex;gap:12px;align-items:center}.hour-card .glyph{font-size:1.5rem;color:var(--gold2)}.hour-card .nat{font-size:.66rem;border:1px solid var(--line2);border-radius:99px;padding:1px 8px;margin-inline-start:auto;flex:none}.row-link{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink);cursor:pointer;background:var(--panel);margin-bottom:10px;font-size:.9rem;text-align:start;width:100%;transition:transform var(--t-press) var(--ease-out),border-color var(--t-ui) var(--ease-out)}.row-link:active{transform:scale(.98)}.row-link .arr{margin-inline-start:auto;color:var(--muted)}body[dir=ltr] .row-link .arr{transform:scaleX(-1)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.art{position:relative;border:1px solid var(--line);border-radius:var(--r);padding:14px 12px;cursor:pointer;background:var(--panel);text-align:start;color:inherit;overflow:hidden;transition:border-color var(--t-ui) var(--ease-out),transform var(--t-press) var(--ease-out)}.art:active{transform:scale(.975)}@media (hover:hover) and (pointer:fine){.art:hover{border-color:var(--line2)}}.art .ic{width:44px;height:44px;margin-bottom:6px;font-size:1.7rem;color:var(--gold2);display:flex;align-items:center}.art .ic img{width:44px;height:44px}.art h4{margin:0 0 2px;font-size:.95rem;color:var(--gold2);font-weight:500}.art p{margin:0;font-size:.74rem;color:var(--muted);line-height:1.55}.art .lore{position:absolute;top:9px;inset-inline-end:10px;font-size:.6rem;color:var(--muted);border:1px solid var(--line);padding:1px 7px;border-radius:99px}.salname{margin-bottom:14px}.sal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-top:10px}.sal-day{aspect-ratio:1;border-radius:9px;border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:.62rem;color:var(--muted);cursor:pointer;background:none;padding:0;transition:transform var(--t-press) var(--ease-out),border-color var(--t-ui) var(--ease-out)}.sal-day:active{transform:scale(.92)}.sal-day .d8{width:6px;height:6px;border-radius:50%;background:transparent}.sal-day.good .d8{background:var(--good);box-shadow:0 0 5px var(--good)}.sal-day.mid .d8{background:var(--mid);box-shadow:0 0 5px var(--mid)}.sal-day.ill .d8{background:var(--ill);box-shadow:0 0 5px var(--ill)}.sal-day{position:relative}.sal-day.today{border-color:var(--gold)}.sal-day.today:after{content:"";position:absolute;inset:-1px;border-radius:9px;pointer-events:none;box-shadow:0 0 12px #e8c66a73;opacity:0;animation:todayPulse 2.6s var(--ease-in-out) infinite}@keyframes todayPulse{50%{opacity:1}}.scroll-item{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--panel);margin-bottom:10px;overflow:hidden}.scroll-head{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;width:100%;background:none;border:0;color:inherit;text-align:start}.scroll-head .g{font-size:1.15rem;color:var(--gold2);width:26px;text-align:center;flex:none}.scroll-head .q{flex:1;min-width:0}.scroll-head .q b{display:block;font-size:.88rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scroll-head .q span{font-size:.72rem;color:var(--muted)}.scroll-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s var(--ease-out)}.scroll-body>div{overflow:hidden;min-height:0;padding:0 14px}.scroll-item.open .scroll-body{grid-template-rows:1fr}.scroll-item.open .scroll-body>div{padding-bottom:13px}.scroll-body .inner-t{font-size:.85rem;white-space:pre-wrap}.field{margin-bottom:14px}.field label{display:block;font-size:.78rem;color:var(--gold);margin-bottom:6px}.field input{width:100%;background:#0a071299;border:1px solid var(--line);border-radius:var(--r-sm);padding:11px 13px;color:var(--ink);font-size:.95rem;transition:border-color var(--t-ui) var(--ease-out)}.field input:focus{outline:none;border-color:var(--line2)}.pills{display:flex;gap:8px}.pill{flex:1;text-align:center;padding:9px;border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer;color:var(--muted);font-size:.9rem;background:none;transition:color var(--t-ui),border-color var(--t-ui)}.pill.on{color:var(--gold2);border-color:var(--line2);background:#e8c66a14}.switch-row{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line);gap:12px}.switch-row:last-child{border:0}.switch-row span{font-size:.9rem}.sw{width:44px;height:25px;border-radius:99px;background:#241a3a;border:1px solid var(--line);position:relative;cursor:pointer;flex:none;padding:0;transition:background var(--t-ui) var(--ease-out),border-color var(--t-ui)}.sw:after{content:"";position:absolute;top:2px;inset-inline-start:2px;width:19px;height:19px;border-radius:50%;background:var(--muted);transition:transform var(--t-ui) var(--ease-out),background var(--t-ui)}.sw.on{background:#e8c66a40;border-color:var(--line2)}.sw.on:after{transform:translate(19px);background:var(--gold2)}body[dir=rtl] .sw.on:after{transform:translate(-19px)}.ritual{position:fixed;inset:0;z-index:40;max-width:420px;margin:0 auto;background:radial-gradient(120% 50% at 50% -5%,#201540,#0a0712 60%),var(--bg);display:none;flex-direction:column}.ritual.on{display:flex;animation:fadeUp .28s var(--ease-out)}.rit-top{display:flex;align-items:center;gap:10px;padding:14px 16px}.rit-top .ttl{color:var(--gold2);font-weight:700}.rit-top .x{margin-inline-start:auto;background:none;border:0;color:var(--muted);font-size:1.25rem;cursor:pointer;transition:transform var(--t-press) var(--ease-out)}.rit-top .x:active{transform:scale(.9)}.steps{display:flex;justify-content:center;gap:22px;padding:2px 0 10px}.step{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:.68rem;color:var(--muted);transition:color var(--t-ui) var(--ease-out)}.step .d{width:8px;height:8px;border-radius:50%;background:#2c2140;border:1px solid var(--line);transition:background var(--t-ui) var(--ease-out),transform var(--t-ui) var(--ease-out),box-shadow var(--t-ui)}.step.on{color:var(--gold2)}.step.on .d{background:var(--gold);box-shadow:0 0 8px #e8c66ab3;transform:scale(1.25)}.step.done .d{background:var(--gold2)}.rit-body{flex:1;overflow-y:auto;padding:8px 20px 30px;text-align:center}.rit-stage{display:none}.rit-stage.on{display:block;animation:stageIn .3s var(--ease-out)}@keyframes stageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.candle{font-size:2rem;display:inline-block;animation:flick2 2.6s var(--ease-in-out) infinite}@keyframes flick2{25%{transform:rotate(-2deg) scale(1.04)}60%{transform:rotate(2deg)}}.rit-lead{color:var(--ink);font-size:.95rem;margin:10px 0 18px;min-height:2.6em}.rit-body textarea{width:100%;min-height:86px;background:#0a07128c;border:1px solid var(--line);border-radius:var(--r);padding:13px;color:var(--ink);font-size:.95rem;resize:none;transition:border-color var(--t-ui) var(--ease-out)}.rit-body textarea:focus{outline:none;border-color:var(--line2)}.rit-fields{display:grid;gap:10px;margin-bottom:14px;text-align:start}.actions{display:flex;gap:8px;justify-content:center;margin-top:18px;flex-wrap:wrap}.gesture{margin:6px auto 14px;min-height:120px;border:1px dashed var(--line2);border-radius:var(--r);display:flex;align-items:center;justify-content:center;color:var(--gold);cursor:pointer;position:relative;overflow:hidden;background:radial-gradient(80% 100% at 50% 100%,rgba(232,198,106,.05),transparent);transition:opacity .3s var(--ease-out);-webkit-user-select:none;user-select:none}.gesture:active{background:radial-gradient(80% 100% at 50% 100%,rgba(232,198,106,.14),transparent)}.gesture.spent{opacity:.45;pointer-events:none}.gesture .hint{pointer-events:none}.spark{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--gold2);animation:sp .8s var(--ease-out) forwards}@keyframes sp{to{opacity:0;transform:translateY(-46px) scale(.4)}}.ring{position:absolute;width:14px;height:14px;border:1px solid var(--gold2);border-radius:50%;pointer-events:none;animation:ringOut .6s var(--ease-out) forwards}@keyframes ringOut{to{opacity:0;transform:scale(5)}}.deck{display:flex;justify-content:center;align-items:center;height:96px;position:relative}.deck i{position:absolute;width:44px;height:70px;border-radius:6px;border:1px solid var(--line2);background:linear-gradient(160deg,#241839,#120c20);transition:transform .38s var(--ease-out)}.gesture.shuffling .deck i{transition-duration:.26s}.bag{font-size:2.4rem;transition:transform .2s var(--ease-out)}.gesture.shaking .bag{animation:shake .5s var(--ease-in-out)}@keyframes shake{25%{transform:rotate(-14deg)}75%{transform:rotate(14deg)}}.coins{display:flex;gap:14px}.coin{width:30px;height:30px;border-radius:50%;border:1px solid var(--line2);background:radial-gradient(circle at 35% 30%,#f6e0a0,#8a6a1e);transition:transform .42s var(--ease-in-out)}.gesture.tossing .coin{animation:toss .5s var(--ease-in-out);animation-delay:var(--d,0ms)}@keyframes toss{50%{transform:translateY(-26px) rotateX(540deg)}}.cupgest{font-size:2.6rem;transition:transform .5s var(--ease-in-out)}.mirror{position:absolute;inset:10px;border-radius:12px;background:radial-gradient(60% 60% at 50% 45%,#241a3a,#0b0714);border:1px solid var(--line)}.breath{position:absolute;inset:0;border-radius:50%;border:1px solid var(--gold2);opacity:.5;animation:ripple 1.6s var(--ease-out) forwards;pointer-events:none}@keyframes ripple{to{opacity:0;transform:scale(3.6)}}.kamea{display:grid;gap:3px;margin:0 auto}.kamea b{display:flex;align-items:center;justify-content:center;min-width:26px;min-height:26px;font-size:.7rem;font-weight:400;border:1px solid var(--line);border-radius:5px;color:var(--muted);opacity:0;transition:opacity .26s var(--ease-out),color .26s var(--ease-out),border-color .26s}.kamea b.lit{opacity:1;color:var(--gold2);border-color:var(--line2)}.wheel{width:104px;height:104px;border-radius:50%;border:1px solid var(--line2);position:relative;background:conic-gradient(from 0deg,rgba(232,198,106,.13),transparent 30%,rgba(232,198,106,.13) 60%,transparent);transition:transform 2.6s cubic-bezier(.15,.85,.2,1)}.wheel:after{content:"";position:absolute;inset-inline-start:50%;top:-6px;width:2px;height:12px;background:var(--gold2);transform:translate(-50%)}.book{font-size:2.6rem;transition:transform .6s var(--ease-out)}.gesture.opening .book{transform:rotateY(38deg) scale(1.08)}.pend{width:2px;height:56px;background:linear-gradient(var(--line2),var(--gold2));margin:0 auto;transform-origin:top center}.gesture.swinging .pend{animation:swing 2.2s var(--ease-in-out) 2}@keyframes swing{25%{transform:rotate(-18deg)}75%{transform:rotate(18deg)}}.pend:after{content:"";position:absolute;bottom:-6px;inset-inline-start:-4px;width:10px;height:10px;border-radius:50%;background:var(--gold2);box-shadow:0 0 10px #f6e0a0b3}.mothers{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;min-height:96px}.figc{display:flex;flex-direction:column;align-items:center;gap:4px;animation:fadeUp .34s var(--ease-out) both}.fig{display:flex;flex-direction:column;gap:4px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel2)}.fig .fr{display:flex;gap:5px;justify-content:center}.fig .dt{width:6px;height:6px;border-radius:50%;background:var(--gold2);box-shadow:0 0 4px #e8c66a99;animation:dotPop .3s var(--ease-out) both;animation-delay:var(--d,0ms)}@keyframes dotPop{0%{opacity:0;transform:scale(.45)}to{opacity:1;transform:scale(1)}}.figc .cap{font-size:.66rem;color:var(--muted)}.fig.judge{border-color:var(--gold);animation:bloom .9s var(--ease-out) both}@keyframes bloom{0%{box-shadow:0 0 #e8c66a00;transform:scale(.92)}45%{box-shadow:0 0 34px #e8c66a66}to{box-shadow:0 0 16px #e8c66a38;transform:scale(1)}}.shield{display:flex;flex-direction:column;gap:10px;align-items:center}.shield .rowf{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.shield.dim .figc:not(.keep){opacity:.4;transition:opacity .5s var(--ease-out)}.reveal-cap{font-size:.72rem;color:var(--muted)}.verdict-name{margin:10px 0 2px;color:var(--gold2);font-weight:700;font-size:1.02rem;min-height:1.5em}.verdict-mean{min-height:1.6em;font-size:.84rem;color:var(--muted)}.chip{display:inline-block;font-size:.7rem;padding:2px 11px;border-radius:99px;border:1px solid var(--line2);margin-top:6px;animation:fadeUp .3s var(--ease-out) both}.spread{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:4px 0 10px}.tcard{width:92px;display:flex;flex-direction:column;align-items:center;gap:5px;animation:cardIn .52s var(--ease-out) both;animation-delay:var(--d,0ms)}@keyframes cardIn{0%{opacity:0;transform:translateY(10px) rotateY(80deg)}to{opacity:1;transform:none}}.tcard img{width:92px;border-radius:7px;border:1px solid var(--line2);animation:materialize .7s var(--ease-out) both;animation-delay:var(--d,0ms)}.tcard img.rev{transform:rotate(180deg)}.tcard .nm{font-size:.7rem;color:var(--gold2);text-align:center;line-height:1.4}.tcard .ps{font-size:.62rem;color:var(--muted)}.glyphline{display:flex;gap:12px;justify-content:center;font-size:1.9rem;color:var(--gold2);flex-wrap:wrap}.glyphline span{animation:dotPop .4s var(--ease-out) both;animation-delay:var(--d,0ms)}.hexlines{display:flex;flex-direction:column-reverse;gap:6px;align-items:center;margin:6px 0}.hexlines i{display:block;height:7px;width:80px;background:var(--gold2);border-radius:2px;animation:dotPop .32s var(--ease-out) both;animation-delay:var(--d,0ms)}.hexlines i.broken{background:linear-gradient(90deg,var(--gold2) 42%,transparent 42% 58%,var(--gold2) 58%)}.lines{text-align:start;font-size:.86rem;line-height:1.95}.lines div{animation:fadeUp .32s var(--ease-out) both;animation-delay:var(--d,0ms)}.reading{text-align:start;font-size:.94rem;line-height:2.05}.reading p{margin:0 0 14px;min-height:1em}.reading .inv{color:var(--gold);font-size:.9rem}.reading .verdict{color:var(--gold2)}.divider{width:120px;height:1px;margin:4px auto 16px;background:linear-gradient(to left,transparent,var(--line2),transparent)}.chat{margin-top:16px;text-align:start}.bubble{max-width:88%;border-radius:14px;padding:9px 14px;font-size:.86rem;margin-bottom:8px;animation:bubIn .22s var(--ease-out) both}@keyframes bubIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.bubble.you{background:#e8c66a1a;border:1px solid var(--line);margin-inline-start:auto}.bubble.cup{background:var(--panel2);border:1px solid var(--line)}.dots3{display:inline-flex;gap:4px;padding:2px 0}.dots3 i{width:5px;height:5px;border-radius:50%;background:var(--gold);animation:d3 1s var(--ease-in-out) infinite;animation-delay:calc(var(--i)*.14s)}@keyframes d3{40%{transform:translateY(-4px);opacity:1}80%{opacity:.4}}.chatline{display:flex;gap:8px;margin-top:10px}.chatline input{flex:1;background:#0a07128c;border:1px solid var(--line);border-radius:99px;padding:10px 16px;color:var(--ink);font-size:.88rem;transition:opacity .4s var(--ease-out),border-color var(--t-ui)}.chatline input:focus{outline:none;border-color:var(--line2)}.chatline.veiled{opacity:.45;pointer-events:none}.sheet-veil{position:fixed;inset:0;z-index:30;background:#05030999;opacity:0;pointer-events:none;transition:opacity .26s var(--ease-out)}.sheet-veil.on{opacity:1;pointer-events:auto}.sheet{position:fixed;bottom:0;inset-inline:0;max-width:420px;margin:0 auto;z-index:31;background:#161028;border-radius:22px 22px 0 0;border:1px solid var(--line2);border-bottom:0;padding:20px 20px 30px;transform:translateY(105%);transition:transform .34s var(--ease-drawer);text-align:center}.sheet.on{transform:none}.sheet .ic{font-size:2.1rem;color:var(--gold2)}.sheet .ic img{width:52px;height:52px}.sheet h3{margin:6px 0 4px;color:var(--gold2)}.sheet .gest{color:var(--gold);font-size:.88rem;margin:8px 0;min-height:1.5em}.toast{position:fixed;bottom:92px;inset-inline:0;margin:0 auto;width:fit-content;max-width:320px;z-index:50;background:#241a3a;border:1px solid var(--line2);color:var(--ink);font-size:.82rem;padding:9px 18px;border-radius:99px;opacity:0;transform:translateY(8px);transition:opacity .2s var(--ease-out),transform .2s var(--ease-out);pointer-events:none;text-align:center}.toast.on{opacity:1;transform:none}.skel{color:var(--muted);font-size:.85rem;text-align:center;padding:18px 0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:1ms!important;transition-duration:1ms!important;animation-iteration-count:1!important}.mist{display:none}}
