:root{--bg: #f6f3ee;--ink: #262626;--ink-3: #3d3d3d;--muted: #5f5f5f;--card: #ffffff;--fill: #e3e2dc;--hi: #f4d95b;--doodle: #ffe600;--flame: #ff8a1f;--badge: #111111;--dash: #b5b4ad;--ph: #8a8983;--font: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--serif: "DM Serif Text", Georgia, serif;--shadow-card: 0 0 5px rgba(0, 0, 0, .1);--shadow-field: 0 0 10px rgba(0, 0, 0, .1);--shadow-raised: 0 2px 4px rgba(0, 0, 0, .1);--shadow-chip: 0 2px 2px rgba(0, 0, 0, .1);--shadow-record: 0 4px 14px rgba(0, 0, 0, .12);--shadow-hi: 0 0 10px var(--hi);--glow: 0 -28px 88.3px var(--hi);--glow-dict: 0 -28px 44px var(--hi);--glow-flame: 0 -28px 88.3px var(--flame)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;height:100dvh;overflow:hidden;background:#d9d8d2;color:var(--ink);font-family:var(--font);font-size:16px;font-variation-settings:"opsz" 14;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;justify-content:center;align-items:center}#root{width:100%;display:flex;justify-content:center;align-items:center}button{font-family:inherit;font-variation-settings:inherit;color:inherit;cursor:pointer}h1,p{margin:0}img{display:block}.phone{position:relative;min-width:0;width:390px;height:min(844px,100dvh);margin:0;background:var(--bg);display:flex;flex-direction:column;overflow:hidden;border-radius:28px;box-shadow:0 10px 40px #0000002e}@media (max-width: 430px),(display-mode: standalone){.phone{position:fixed;top:0;right:0;bottom:0;left:0;width:auto;height:auto;max-height:none;border-radius:0;box-shadow:none}.screen{padding-top:max(24px,env(safe-area-inset-top))}}.screen{flex:1;min-height:0;min-width:0;overflow:hidden;padding:24px 24px calc(96px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:16px}.screen.today-word{justify-content:center;padding-bottom:max(24px,env(safe-area-inset-bottom,0px))}.today-word-stack{display:flex;flex-direction:column;gap:24px;width:100%}.eyebrow{font-size:12px;font-weight:500;letter-spacing:1.5px;color:var(--muted)}.muted{color:var(--muted)}.small{font-size:14px}.grow{flex:1}.top-row{display:flex;justify-content:space-between;align-items:baseline}.date,.top-row{position:relative;z-index:2}.date{font-size:16px;font-weight:700;color:var(--muted)}.prompt{font-size:18px;font-weight:500;line-height:24px}.word{font-family:var(--serif);font-size:36px;font-weight:400;letter-spacing:-.5px;line-height:46px}.hl{position:relative;z-index:0}.hl:before{content:"";position:absolute;z-index:-1;left:0;right:0;top:29px;height:17px;border-radius:4px;background:var(--hi)}.pron{font-size:14px;color:var(--muted)}.def{font-size:15px;line-height:24px;color:var(--muted)}hr.divider{border:none;height:2px;margin:0;width:100%;background:var(--dash)}.card{background:var(--card);border-radius:14px;box-shadow:var(--shadow-card)}.word-card{position:relative;z-index:0;flex:none;padding:10px 14px;display:flex;flex-direction:column;gap:4px;box-shadow:var(--glow)}.word-card .word{line-height:41px}.word-card .hl:before{top:21px;height:20px}.today-word .word-card{animation:today-word-card-in .64s ease-out both}@keyframes today-word-card-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.today-word .hl-sweep:before{content:none}.today-hl{position:absolute;z-index:-1;left:0;right:0;top:21px;height:20px;border-radius:4px;overflow:hidden;pointer-events:none}.today-hl-ink{display:block;width:100%;height:100%;background:var(--hi);transform:translate(-101%);animation:today-word-highlight 1.1s cubic-bezier(.4,0,.15,1) .92s forwards}@keyframes today-word-highlight{0%{transform:translate(-101%)}to{transform:translate(0)}}.today-word-respond{opacity:0;transform:translateY(6px);visibility:hidden;pointer-events:none}.today-word-respond.is-in{visibility:visible;pointer-events:auto;animation:today-word-respond-in .5s ease-out both}@keyframes today-word-respond-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.today-word .word-card{animation:none}.today-hl-ink{animation:none;transform:none}.today-word-respond,.today-word-respond.is-in{animation:none;opacity:1;transform:none;visibility:visible;pointer-events:auto}}.word-card .def{line-height:20px}.word-card .divider{height:1px;background:var(--fill)}.word-detail{display:flex;flex-direction:column;gap:10px;width:100%}.pron-row{display:flex;align-items:center;gap:10px}.listen{flex:none;width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border:none;border-radius:16px;background:var(--card);box-shadow:var(--shadow-chip)}.ipa{font-size:16px;color:var(--muted)}.field{display:flex;flex-direction:column;gap:8px}textarea{width:100%;height:96px;border:none;border-radius:14px;padding:12px;font-family:inherit;font-variation-settings:inherit;font-size:16px;line-height:22px;background:var(--card);color:var(--ink);box-shadow:var(--shadow-field);resize:none}textarea::placeholder{color:var(--muted)}textarea:focus{outline:none}textarea:focus-visible{outline:2px solid var(--hi);outline-offset:0}.primary{flex:none;padding:14px;background:var(--ink);color:var(--card);border:none;border-radius:999px;box-shadow:var(--shadow-raised);font-size:18px;font-weight:500}.primary:disabled{opacity:.4;cursor:not-allowed}.link{border:none;background:none;font-size:15px;text-decoration:underline;min-height:44px;padding:0}.back{border:none;background:none;font-size:16px;font-weight:500;min-height:44px;padding:0}.attach-row{flex:none;display:flex;gap:12px;align-items:stretch}.attach-btn{flex:1 1 0;min-width:0;min-height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px;border:none;border-radius:12px;background:var(--card);color:var(--muted);font-size:16px;line-height:20px}.attach-btn:focus,.attach-btn:focus-visible,.attach-added{outline:2px solid var(--hi);outline-offset:0}.attach-added{flex:1 1 0;min-width:0;min-height:96px;display:flex;align-items:center;gap:8px;padding:6px;border-radius:12px;background:var(--card);box-shadow:var(--shadow-raised)}.attach-thumb{width:64px;height:84px;flex:none;object-fit:cover;border-radius:8px}.attach-play{flex:none;width:44px;height:44px;padding:0;display:flex;align-items:center;justify-content:center;border:none;border-radius:22px;background:none}.attach-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start;font-size:14px;line-height:18px;color:var(--ink)}.attach-copy .link{min-height:44px}.shortcut{flex:none;min-height:44px;padding:12px;border:2px dashed var(--muted);border-radius:12px;background:none;color:var(--muted);font-size:15px}.photo{width:100%;border-radius:8px;object-fit:cover}.photo.fill{flex:none;height:249px;border-radius:10px 10px 0 0}.photo-open{display:block;width:100%;padding:0;border:none;background:none;text-align:left}.lightbox{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;display:flex;align-items:center;justify-content:center;padding:36px 24px;background:color-mix(in srgb,var(--ink) 52%,transparent);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.lightbox-shot{position:relative;max-width:100%;max-height:100%;display:flex}.lightbox-shot img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;border-radius:14px}.photo-close{position:absolute;top:12px;right:12px;width:44px;height:44px;padding:0;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:#fff;box-shadow:0 2px 8px #00000047}.photo.placeholder{background:var(--fill);overflow:hidden}.avatar{width:40px;height:40px;flex:none;border-radius:50%;background:var(--fill);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:500}.avatar.sm{width:36px;height:36px;background:var(--hi)}.avatar.sm.pending{border:1px solid var(--fill);background:var(--card);color:var(--muted)}.avatars{display:flex;gap:6px}.progress{flex:none;display:flex;align-items:center;gap:12px}.progress-note{font-size:15px;color:var(--muted)}.screen.saved{position:relative;justify-content:flex-start;padding-bottom:0}.screen.saved>.date,.screen.saved>.saved-hero,.screen.saved>.saved-footer{position:relative;z-index:1}.streak-glow{position:absolute;left:-40%;right:-40%;bottom:0;height:52%;pointer-events:none;z-index:0;overflow:visible;opacity:.8;transform-origin:50% 100%;animation:glow-rise 1.15s ease-out both}.glow-wash,.glow-core,.glow-wave{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:50% 100%}.glow-wash{background:radial-gradient(ellipse 90% 100% at 50% 108%,var(--flame) 0%,var(--flame) 28%,rgba(255,138,31,.6) 48%,rgba(255,138,31,.22) 70%,transparent 86%);animation:glow-pulse 5.5s ease-in-out infinite}.glow-core{left:18%;right:18%;top:auto;bottom:-12%;height:58%;background:radial-gradient(ellipse 80% 75% at 50% 100%,var(--doodle) 0%,var(--flame) 42%,transparent 78%);filter:blur(28px);animation:glow-pulse 4.8s .4s ease-in-out infinite}.glow-wave{top:auto;bottom:-8%;width:46%;height:86%;border-radius:50%;filter:blur(40px);animation:glow-radiate 6s ease-in-out infinite}.glow-wave.a{left:2%;background:color-mix(in srgb,var(--flame) 80%,#ff4d00)}.glow-wave.b{left:28%;width:44%;height:96%;background:color-mix(in srgb,var(--doodle) 55%,var(--flame));animation-delay:-2s;animation-duration:7s}.glow-wave.c{left:auto;right:2%;background:color-mix(in srgb,var(--flame) 70%,#ff6a00);animation-delay:-3.5s;animation-duration:6.4s}.saved-hero{flex:1;min-height:0;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center}.confirm,.streak-hero{position:absolute;left:16px;right:16px;top:50%;translate:0 -48px;display:flex;flex-direction:column;align-items:center;gap:6px}.mark-slot{height:96px;display:flex;align-items:center;justify-content:center}.confirm{animation:confirm-in .28s ease-out}.confirm.out{animation:confirm-out .32s ease-in forwards;pointer-events:none}.check{width:52px;height:52px;border-radius:26px;background:var(--hi);box-shadow:var(--shadow-raised);display:flex;align-items:center;justify-content:center}.check-mark{color:var(--ink)}.check-mark path{stroke-dasharray:32;stroke-dashoffset:32;animation:check-draw .52s 80ms cubic-bezier(.2,.7,.2,1) forwards}.confirm h1,.streak-hero h1{font-family:var(--serif);font-size:30px;font-weight:400;letter-spacing:-.4px;line-height:34px}.streak-hero{animation:flame-in .56s cubic-bezier(.2,1.15,.3,1) both}.flame{display:block;filter:drop-shadow(0 4px 10px rgba(255,138,31,.35))}.saved-footer{flex:none;display:flex;flex-direction:column;gap:12px;margin:0 -24px;visibility:hidden}.saved-footer.in{visibility:visible;animation:panel-in .48s 60ms cubic-bezier(.2,.8,.2,1) both}.saved-footer .primary{margin:0 24px}.streak-panel{background:var(--card);border-radius:24px 24px 0 0;box-shadow:var(--shadow-field);padding:18px 24px calc(16px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:center;gap:12px}.streak-week{width:100%;display:flex;gap:6px}.streak-day{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:8px}.streak-label{font-size:12px;font-weight:500;color:var(--muted)}.streak-dot{width:100%;height:36px;border-radius:8px;border:1.5px solid var(--fill);background:var(--card)}.streak-day.on .streak-dot{border:none;background:var(--flame)}.streak-day.on .streak-label{color:var(--ink)}.streak-note{font-size:14px;color:var(--muted)}@keyframes check-draw{to{stroke-dashoffset:0}}@keyframes confirm-in{0%{opacity:0;transform:translateY(8px)}}@keyframes confirm-out{to{opacity:0;transform:scale(.92)}}@keyframes flame-in{0%{opacity:0;transform:scale(.55) rotate(-8deg)}62%{opacity:1;transform:scale(1.08) rotate(2deg)}to{opacity:1;transform:none}}@keyframes glow-rise{0%{transform:scaleY(.18);opacity:0}to{transform:scaleY(1);opacity:.8}}@keyframes glow-pulse{0%,to{opacity:.72;transform:scale(1)}50%{opacity:.95;transform:scale(1.05)}}@keyframes glow-radiate{0%,to{opacity:.4;transform:scale(.97)}50%{opacity:.62;transform:scale(1.07)}}@keyframes panel-in{0%{opacity:0;transform:translateY(28px)}}@media (prefers-reduced-motion: reduce){.confirm,.confirm.out,.check-mark path,.streak-hero,.saved-footer,.streak-glow,.glow-core,.glow-wave{animation:none!important}.check-mark path{stroke-dashoffset:0}}.answer{display:flex;flex-direction:column;gap:10px}.answer.me{background:var(--hi)}.answer.me .avatar{background:var(--card)}.answer.none{border:2px dashed var(--ph);background:none;box-shadow:none;color:var(--muted)}.answer.none .avatar{border:2px dashed var(--ph);background:var(--card);color:var(--muted)}.answer-main{display:flex;flex-direction:column;gap:10px;padding:12px 14px}.answer.has-photo .answer-main{padding-top:0}.answer-top{display:flex;gap:12px;align-items:flex-start}.answer-text{display:flex;flex-direction:column;gap:2px;min-width:0}.answer-name{font-size:14px;font-weight:500;color:var(--ink-3)}.answer.none .answer-name{color:var(--muted)}.answer-body{font-size:16px;line-height:22px}.song-chip{align-self:flex-start;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 14px 0 10px;border:none;border-radius:999px;background:var(--card);box-shadow:var(--shadow-chip);color:var(--ink);font-size:14px;font-weight:500}.reactions{display:flex;align-items:center;gap:6px;margin-left:-1px}.react{position:relative;width:44px;height:44px;padding:0;display:flex;align-items:center;justify-content:center;border:none;background:none}.react:disabled{cursor:default}.chip{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:var(--card);box-shadow:var(--shadow-chip)}.tally{position:absolute;left:28px;top:-4px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border:2px solid var(--card);border-radius:999px;background:var(--badge);color:var(--card);font-size:11px;font-weight:700;line-height:1}.tip{position:absolute;z-index:5;left:50%;bottom:calc(100% + 2px);display:flex;flex-direction:column;align-items:center;transform:translate(-50%);pointer-events:none;animation:tip-in .16s ease-out}.tip-pill{padding:8px 12px;border-radius:999px;background:var(--doodle);color:var(--badge);font-size:13px;font-weight:500;white-space:nowrap}@keyframes tip-in{0%{opacity:0;transform:translate(-50%,4px)}}.screen.calendar{gap:14px;overflow:auto;padding-left:20px;padding-right:20px}.month-header{display:flex;align-items:center;justify-content:space-between}.month-titles{display:flex;flex-direction:column;align-items:center;gap:2px}.month-title{font-family:"DM Serif Text",serif;font-size:24px;font-weight:400;letter-spacing:-.3px}.month-group{font-size:14px;font-weight:500;color:var(--muted)}.nav-btn{width:44px;height:44px;border:none;border-radius:12px;background:var(--card);box-shadow:var(--shadow-raised);font-size:22px;line-height:1;padding:0}.grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.weekdays{font-size:13px;font-weight:500;color:var(--muted);text-align:center}.cell{min-width:0;height:68px;overflow:hidden;padding:5px 4px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;border:none;border-radius:12px;background:var(--card);box-shadow:var(--shadow-raised);text-align:left;color:var(--ink)}.cell.blank{background:none;box-shadow:none}.cell.group{background:var(--flame)}.cell.you{background:var(--doodle)}.cell.future{border:1.5px solid var(--fill);border-radius:8px;background:none;box-shadow:none;color:var(--muted)}.cell .n{font-size:13px;font-weight:500;line-height:1}.cell .w{font-size:10px;line-height:12px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-legend{margin:0;font-size:14px;line-height:20px;color:var(--muted)}.streaks{display:flex;flex-direction:column;gap:10px}.streaks h2{margin:0;font-size:12px;font-weight:500;letter-spacing:1.5px;color:var(--muted)}.streak-card{background:var(--card);border-radius:16px;padding:4px 16px}.streak-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--fill)}.streak-row:last-child{border-bottom:none}.streak-row img{width:40px;height:40px;flex:none}.streak-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.streak-copy strong{font-size:15px;font-weight:500}.streak-copy span{font-size:13px;line-height:17px;color:var(--muted)}.streak-count{display:flex;flex-direction:column;align-items:flex-end}.streak-count b{font-family:"DM Serif Text",serif;font-size:26px;font-weight:400;line-height:30px}.streak-count span{font-size:12px;color:var(--muted)}.note{border:2px dashed var(--muted);border-radius:12px;padding:10px 14px;font-size:14px;color:var(--muted)}.screen.answers{gap:0;padding-top:0;padding-bottom:0}.screen.answers .date{color:var(--ink)}.answers-intro{flex:none;display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.section-label{flex:none;font-size:10px;line-height:20px;letter-spacing:.3px;font-variation-settings:"opsz" 9;color:var(--muted)}.feed{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px;margin:0 -24px;padding:max(24px,env(safe-area-inset-top,0px)) 24px calc(108px + env(safe-area-inset-bottom,0px));overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}.feed::-webkit-scrollbar{display:none}.slide{flex:none}.feed.deal .slide{animation:deal .56s cubic-bezier(.2,.9,.25,1.15) both;animation-delay:calc(var(--i) * 90ms)}@keyframes deal{0%{opacity:0;transform:translateY(120px) scale(.88) rotate(-3deg)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.feed .slide,.tip{animation:none!important}}@media (prefers-reduced-transparency: reduce){.bottom-blur span{display:none}}.tabbar-wrap{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;justify-content:center;pointer-events:none;padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}.bottom-blur{position:absolute;left:0;right:0;bottom:0;height:74px;pointer-events:none}.bottom-blur span{position:absolute;top:0;right:0;bottom:0;left:0;-webkit-backdrop-filter:blur(var(--b));backdrop-filter:blur(var(--b));-webkit-mask-image:linear-gradient(to bottom,transparent var(--a),#000 var(--c));mask-image:linear-gradient(to bottom,transparent var(--a),#000 var(--c))}.bottom-blur span:nth-child(1){--b: .5px;--a: 0%;--c: 28%}.bottom-blur span:nth-child(2){--b: 1px;--a: 16%;--c: 44%}.bottom-blur span:nth-child(3){--b: 2px;--a: 32%;--c: 62%}.bottom-blur span:nth-child(4){--b: 5px;--a: 48%;--c: 80%}.bottom-blur span:nth-child(5){--b: 10px;--a: 64%;--c: 100%}.bottom-blur:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,transparent,#fff)}.tabbar{position:relative;z-index:1;display:flex;gap:8px;padding:4px;border-radius:999px;background:var(--card);box-shadow:var(--shadow-card);pointer-events:auto}.tab{width:104px;height:63px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:none;border-radius:999px;background:none;font-size:14px;font-weight:500;white-space:nowrap}.tab.active{background:var(--hi)}:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.screen.dictionary{padding:16px 14px calc(96px + env(safe-area-inset-bottom,0px));background:radial-gradient(120% 28% at 50% 0%,color-mix(in srgb,var(--hi) 55%,transparent),transparent 70%),var(--bg)}.dict-head{display:flex;align-items:center;gap:10px;padding:0 4px 12px}.dict-head h1{flex:1;min-width:0;font-family:inherit;font-size:15px;font-weight:700;letter-spacing:0}.dict-head span{font-size:13px;color:var(--muted)}.dict-stage{position:relative;flex:1;min-height:0}.dict-shadow{position:absolute;left:8%;right:14%;bottom:0;height:26px;background:radial-gradient(ellipse at center,rgba(38,30,10,.35),transparent 70%)}.dict-board{position:absolute;top:0;right:0;bottom:14px;left:0;border-radius:5px 12px 12px 5px;background:linear-gradient(90deg,#1d1c1a 0,#1d1c1a 5%,#2c2a27 5%);box-shadow:0 34px 60px #261e0a73,0 14px 24px #261e0a59,0 2px 3px #00000040}.dict-spine{position:absolute;left:9px;top:0;bottom:0;width:2px;background:#00000073;z-index:4;pointer-events:none}.dict-ribbon{position:absolute;z-index:1;left:58%;bottom:-16px;width:16px;height:44px;pointer-events:none}.fore-edge{position:absolute;z-index:2;top:11px;bottom:20px;right:22px;width:8px;pointer-events:none;border-radius:0 1px 1px 0;background:linear-gradient(to right,#f6f0e2 0,#f6f0e2 1px,#8f8774 1px,#8f8774 2px,#fbf6ec 2px,#fbf6ec 3px,#6f685c 3px,#6f685c 4px,#f3ecdf 4px,#f3ecdf 5px,#a79e8b 5px,#a79e8b 6px,#f8f3e8 6px,#f8f3e8 7px,#7a7364 7px,#7a7364 8px)}.dict-pages{position:absolute;left:12px;top:8px;right:30px;bottom:18px;z-index:3;perspective:1600px;perspective-origin:left center;touch-action:none}.dict-page{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;padding:0 14px 0 18px;border-radius:1px 3px 3px 1px;background:linear-gradient(90deg,rgba(60,45,20,.2),rgba(60,45,20,.04) 3%,transparent 8%),#fdfbf5;overflow:auto;border-right:1px solid #e6e1d2}.dict-page.sheet{z-index:1;transform-origin:left center;transform-style:preserve-3d;backface-visibility:hidden}.dict-stage:not(.open) .dict-pages{pointer-events:none}.page-shade{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,rgba(38,30,10,.45),transparent 55%)}.guide{display:flex;gap:8px;align-items:baseline;padding:14px 0 8px;border-bottom:2px solid var(--dash);font-family:"DM Serif Text",serif;font-size:13px}.guide span:first-child,.guide span:last-child{flex:1}.guide span:last-child{text-align:right}.guide .num{font-family:DM Sans,sans-serif;font-size:11px;font-weight:500;color:var(--muted)}.dict-entries{padding-top:8px}.dict-entry{border-top:1px dashed var(--dash)}.dict-entry:first-child{border-top:none}.dict-hit{display:flex;flex-direction:column;gap:3px;align-items:flex-start;width:100%;min-height:80px;padding:9px 0 10px;border:none;background:none;text-align:left}.dict-hit .hw{display:flex;gap:6px;align-items:baseline;max-width:100%}.dict-hit b{font-family:"DM Serif Text",serif;font-weight:400;font-size:19px;line-height:22px}.dict-hit i,.dict-hit .hw span{font-size:12.5px;color:var(--muted)}.dict-hit .ddef{font-size:13.5px;line-height:19px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.dict-hit .dmeta{font-size:11.5px;color:var(--ph)}.dict-reading{flex:none;display:flex;flex-direction:column;min-height:min-content}.dict-back{align-self:flex-start;min-height:44px;margin:0;padding:14px 0 10px;border:none;background:none;font-size:14px;font-weight:400}.dict-word{display:flex;flex-direction:column;gap:10px;padding:18px 20px;border-radius:14px;background:var(--card);box-shadow:var(--glow-dict)}.dict-word .eyebrow{margin:0}.dict-read-word{position:relative;z-index:0;align-self:flex-start;margin:0;font-family:var(--serif);font-size:36px;font-weight:400;letter-spacing:-.5px;line-height:1.15}.dict-read-word:before{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:7px;height:17px;border-radius:4px;background:var(--hi)}.dict-listen{background:var(--hi);box-shadow:var(--shadow-raised)}.dict-phon{font-size:16px;color:var(--muted)}.dict-word .divider{height:2px;background:var(--dash)}.dict-meaning{margin:0;font-size:15px;line-height:1.35;color:var(--muted)}.dict-added{margin:0;font-size:14px;color:var(--muted)}.dict-responses-label{padding:22px 0 10px;font-size:10.5px;font-weight:500;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}.dict-responses{display:flex;flex-direction:column;gap:10px}.dict-response{overflow:hidden;border-radius:14px;background:var(--card);box-shadow:var(--shadow-field)}.dict-response.me{background:var(--hi)}.dict-response.me .avatar{background:var(--card)}.dict-shot{display:block;width:100%;height:168px;border-radius:0;object-fit:cover}.dict-response .photo.placeholder.dict-shot{border-radius:0}.dict-response-body{display:flex;gap:12px;align-items:flex-start;padding:12px 14px 14px}.dict-response-body p{margin:0;font-size:16px;line-height:22px}.folio{margin-top:auto;padding:8px 0 12px;text-align:center;font-family:"DM Serif Text",serif;font-size:13px;color:var(--muted)}.end-mark{padding:14px 0 18px;text-align:center;font-family:var(--serif);font-size:20px;line-height:1;color:var(--dash)}.dict-cover{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;border-radius:inherit;background:linear-gradient(90deg,#1d1c1a 0,#1d1c1a 5%,#2c2a27 5%);transform-origin:left center;transform:perspective(1100px) rotateY(0)}.dict-cover.swing{animation:cover-open 1.3s cubic-bezier(.22,.7,.2,1) forwards}.dict-stage.open .dict-cover{visibility:hidden}.cover-foil{position:absolute;top:21px;right:16px;bottom:21px;left:28px;border:1px solid var(--hi);border-radius:4px 10px 10px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;box-shadow:inset 0 0 0 5px #2c2a27,inset 0 0 0 6.5px var(--hi)}.cover-foil p{font-family:"DM Serif Text",serif;font-size:40px;color:var(--hi);letter-spacing:-.5px;text-align:center;line-height:1.05}.cover-foil i{width:64px;height:1.5px;background:var(--hi)}.cover-foil em{font-family:"DM Serif Text",serif;font-size:15px;color:var(--hi)}.cover-foil small{position:absolute;bottom:22px;font-size:10.5px;font-weight:500;letter-spacing:2px;color:var(--hi)}.thumb-index{position:absolute;right:0;top:46px;bottom:22px;display:flex;flex-direction:column;gap:5px;z-index:4}.thumb-index button{width:22px;height:54px;border:none;padding:0;border-radius:0 7px 7px 0;background:linear-gradient(90deg,#e9e4d5,#fdfbf5 25%);box-shadow:1px 1px 2px #00000040;color:var(--muted);font-family:"DM Serif Text",serif;font-size:11px;writing-mode:vertical-rl;text-orientation:sideways}.thumb-index button.on{background:var(--hi);color:var(--ink)}.screen.dictionary.adding{overflow:auto;padding:12px 24px calc(34px + env(safe-area-inset-bottom,0px));padding-top:max(12px,env(safe-area-inset-top))}.add-flow{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;gap:24px;min-height:100%}.add-flow.done{padding-top:60px}.add-top{display:flex;align-items:center;justify-content:space-between;min-height:45px}.add-back{border:none;background:none;padding:0;min-height:45px;font-size:16px;font-weight:700}.add-top span{font-size:14px;font-weight:500;color:var(--muted)}.add-head{display:flex;flex-direction:column;gap:8px}.add-head h1{margin:0;font-family:var(--serif);font-size:34px;font-weight:400;letter-spacing:-.5px;line-height:1.15}.add-head p{margin:0;font-size:16px;line-height:1.4;color:var(--muted)}.add-mark{position:relative;z-index:0}.add-mark:before{content:"";position:absolute;z-index:-1;left:0;right:0;top:22px;height:18px;border-radius:4px;background:var(--hi)}.add-field{display:flex;flex-direction:column;gap:8px}.add-field span{font-size:12px;font-weight:500;letter-spacing:1.5px;color:var(--muted)}.add-field input,.add-field textarea{width:100%;border:none;border-radius:14px;background:var(--card);box-shadow:var(--shadow-field);color:var(--ink);font-size:16px;font-family:inherit;font-variation-settings:inherit}.add-field input{height:52px;padding:0 14px}.add-field textarea{height:132px;padding:14px;line-height:1.4;resize:none}.add-field input::placeholder,.add-field textarea::placeholder{color:var(--muted)}.add-hint{margin:0;font-size:14px;line-height:1.4;color:var(--muted)}.add-hint.warn{color:var(--ink)}.add-chip{display:flex;align-items:baseline;gap:10px;align-self:flex-start;padding:10px 14px;border-radius:14px;background:var(--card);box-shadow:var(--shadow-hi)}.add-chip b{font-family:var(--serif);font-size:22px;font-weight:400;letter-spacing:-.3px}.add-chip span{font-size:16px;color:var(--muted)}.add-spacer{flex:1;min-height:16px}.add-go,.add-ghost{width:100%;height:51px;border:none;border-radius:999px;font-size:18px;font-weight:500}.add-go{background:var(--fill);color:var(--muted)}.add-go.on{background:var(--ink);color:var(--card)}.add-go:disabled{cursor:default}.add-ghost{background:var(--card);color:var(--ink);box-shadow:var(--shadow-card)}.add-actions{display:flex;flex-direction:column;gap:12px}.add-check{width:52px;height:52px;border-radius:26px;background:var(--hi);box-shadow:var(--shadow-raised);display:flex;align-items:center;justify-content:center}.recorder{display:flex;flex-direction:column;align-items:center;gap:12px}.say-word{position:relative;z-index:0;font-family:var(--serif);font-size:46px;letter-spacing:-.5px;line-height:1.15;text-align:center}.say-word:before{content:"";position:absolute;z-index:-1;left:0;right:0;top:33px;height:25px;border-radius:4px;background:var(--hi)}.say-phon{font-size:18px;color:var(--muted)}.rec-start,.rec-stop{border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0}.rec-start{width:112px;height:112px;border:none;background:var(--hi);box-shadow:var(--shadow-record)}.rec-stop{width:132px;height:132px;border:6px solid var(--hi);background:var(--ink)}.rec-stop i{width:32px;height:32px;border-radius:6px;background:var(--card)}.rec-caption{margin:0;font-size:16px;font-weight:500}.rec-caption.muted{color:var(--muted)}.rec-time{font-size:20px;font-weight:700}.live-wave,.clip-wave{display:flex;align-items:center;gap:3px;height:36px}.live-wave span,.clip-wave i{width:3px;border-radius:1.5px;background:var(--ink);display:block}.live-wave span{transform-origin:center;animation:wave .7s ease-in-out infinite alternate;animation-delay:calc(var(--i) * 35ms)}.live-wave span.rest{background:var(--dash);animation:none}.audio-clip{width:100%;height:64px;border:none;border-radius:14px;background:var(--card);box-shadow:var(--shadow-card);display:flex;align-items:center;gap:12px;padding:12px 16px 12px 12px}.clip-play{width:40px;height:40px;border-radius:20px;background:var(--ink);display:flex;align-items:center;justify-content:center;flex:none}.clip-wave{flex:1;min-width:0;height:28px;overflow:hidden}.clip-time{font-size:14px;font-weight:500;color:var(--muted)}@keyframes wave{0%{transform:scaleY(.45)}to{transform:scaleY(1)}}@media (prefers-reduced-motion: reduce){.live-wave span{animation:none}}@keyframes cover-open{0%{transform:perspective(1100px) rotateY(0)}to{transform:perspective(1100px) rotateY(-158deg)}}@media (prefers-reduced-motion: reduce){.dict-cover.swing{animation:none;visibility:hidden}.dict-page.sheet{transition:none}}.screen.onboard{gap:24px;padding:12px 24px calc(34px + env(safe-area-inset-bottom,0px));padding-top:max(12px,env(safe-area-inset-top))}.screen.onboard.intro{padding-top:max(72px,env(safe-area-inset-top))}.screen.onboard.splash{position:relative;align-items:center;justify-content:center;gap:0;padding:0 24px 80px;border:none;background:var(--bg);cursor:default;text-align:center;--splash-rise: 1.15s;--splash-beat: .24s}.splash-glow{position:absolute;left:-115px;top:-230px;pointer-events:none}.splash-brand{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:14px}.splash-name-space{height:72px}.splash-name{position:absolute;z-index:2;left:0;right:0;top:100%;display:flex;justify-content:center;margin:0;animation:splash-rise var(--splash-rise) cubic-bezier(.16,.78,.28,1) both}.splash-word{position:relative;font-family:var(--serif);font-size:64px;line-height:72px;letter-spacing:-1px}@keyframes splash-rise{0%{top:100%}to{top:calc(50% - 95px)}}.splash-mark{position:absolute;z-index:-1;left:-6px;top:42px;width:calc(100% + 12px);height:26px;border-radius:6px;overflow:hidden;pointer-events:none}.splash-mark-ink{display:block;width:100%;height:100%;background:var(--hi);transform:translate(-101%);animation:splash-highlight 1.15s cubic-bezier(.4,0,.15,1) calc(var(--splash-rise) + var(--splash-beat)) forwards}@keyframes splash-highlight{0%{transform:translate(-101%)}to{transform:translate(0)}}.splash-tag{font-size:17px;line-height:24px;color:var(--muted);opacity:0;animation:splash-tag-in .45s ease calc(var(--splash-rise) - .16s) forwards}@keyframes splash-tag-in{0%{opacity:0}to{opacity:1}}.splash-mist{position:absolute;z-index:3;left:0;right:0;bottom:0;height:46%;pointer-events:none}.splash-mist>div{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}.splash-mist>div:nth-child(1){z-index:1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 20%,black 100%);mask-image:linear-gradient(to bottom,transparent 0%,black 20%,black 100%)}.splash-mist>div:nth-child(2){z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);-webkit-mask-image:linear-gradient(to bottom,transparent 35%,black 55%,black 100%);mask-image:linear-gradient(to bottom,transparent 35%,black 55%,black 100%)}.splash-mist>div:nth-child(3){z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);-webkit-mask-image:linear-gradient(to bottom,transparent 70%,black 86%,black 100%);mask-image:linear-gradient(to bottom,transparent 70%,black 86%,black 100%)}.splash-mist>div:nth-child(4){z-index:4;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);-webkit-mask-image:linear-gradient(to bottom,transparent 88%,black 100%);mask-image:linear-gradient(to bottom,transparent 88%,black 100%)}.splash-mist-fade{z-index:5;background:linear-gradient(to bottom,transparent 0%,transparent 80%,color-mix(in srgb,var(--bg) 35%,transparent) 92%,var(--bg) 100%)}.screen.onboard:not(.splash){animation:onboard-fade-in .48s ease both}@keyframes onboard-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.splash-name{animation:none;top:calc(50% - 95px)}.splash-mark-ink{animation:none;transform:none}.splash-tag{animation:none;opacity:1}.screen.onboard:not(.splash){animation:none}}.onboard-bar{flex:none;display:flex;align-items:center;justify-content:space-between;height:45px}.onboard-bar .back{min-height:45px}.onboard-step{font-size:14px;font-weight:500;color:var(--muted)}.onboard-head{display:flex;flex-direction:column;gap:8px}.onboard-head h1{margin:0;font-family:var(--serif);font-size:30px;font-weight:400;line-height:34px;letter-spacing:-.4px}.onboard-head p{font-size:16px;line-height:22px;color:var(--muted)}.onboard-avatar-row{display:flex;justify-content:center}.onboard-avatar{display:flex;flex-direction:column;align-items:center;gap:12px;width:112px;padding:0;border:none;background:none;color:var(--muted);font-size:15px;font-weight:500}.onboard-avatar-ring{width:112px;height:112px;border-radius:56px;border:2px solid var(--fill);background:var(--card);display:flex;align-items:center;justify-content:center;overflow:hidden}.onboard-avatar.has-photo .onboard-avatar-ring{border:none;box-shadow:var(--shadow-field)}.onboard-avatar .face{width:112px;height:112px;object-fit:cover}.onboard-field{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:500}.onboard-field input{height:52px;border:none;border-radius:999px;padding:0 14px;background:var(--card);box-shadow:var(--shadow-raised);color:var(--ink);font-family:inherit;font-variation-settings:inherit;font-size:16px;font-weight:400}.onboard-field input::placeholder{color:var(--muted)}.onboard-field input:focus{outline:none}.screen.onboard .primary{height:51px;padding:0 14px}.screen.onboard .primary:disabled{opacity:1;background:var(--fill);color:var(--muted);box-shadow:none;cursor:default}.screen.onboard .primary.ghost{background:var(--card);color:var(--ink);box-shadow:var(--shadow-chip)}.option-list{display:flex;flex-direction:column;gap:16px}.option{display:flex;align-items:center;gap:14px;width:100%;padding:18px 20px;border:none;border-radius:14px;background:var(--card);box-shadow:var(--shadow-card);text-align:left}.option-icon{width:52px;height:52px;flex:none;border-radius:12px;background:var(--hi);box-shadow:var(--shadow-raised);display:flex;align-items:center;justify-content:center}.option-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.option-text strong{font-size:18px;font-weight:500}.option-text span{font-size:14px;font-weight:400;color:var(--muted)}.option-chev{font-size:28px;font-weight:500;line-height:1}.code-row{position:relative;display:flex;justify-content:center;gap:8px}.code-box{width:46px;height:58px;border-radius:12px;background:var(--card);box-shadow:var(--shadow-chip);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700}.code-box.on{background:var(--hi)}.code-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none;padding:0;opacity:0;font-size:16px;caret-color:transparent}.found{display:flex;flex-direction:column;gap:12px;padding:18px 20px;border-radius:14px;background:var(--card);box-shadow:var(--shadow-field)}.found-kicker{font-size:12px;font-weight:500;letter-spacing:1.2px;line-height:16px;color:var(--muted)}.found-name{font-family:var(--serif);font-size:24px;line-height:30px;letter-spacing:-.3px}.found-avatars{display:flex;gap:6px}.mini{width:36px;height:36px;border-radius:18px;background:var(--fill);color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:500}.mini.out{background:var(--card);color:var(--muted);border:1px solid var(--fill)}.found p{font-size:14px;line-height:18px;color:var(--muted)}.check-badge{width:52px;height:52px;flex:none;border-radius:26px;background:var(--hi);box-shadow:var(--shadow-raised);display:flex;align-items:center;justify-content:center}
