:root{--bg-primary: #fafbfd;--bg-secondary: rgba(255,255,255,.6);--bg-tertiary: rgba(255,255,255,.7);--bg-body: linear-gradient(180deg, #f0f4f8 0%, #e3e9f1 100%);--bg-body-solid: #e8edf3;--bg-card: rgba(255,255,255,.7);--bg-card-solid: #ffffff;--bg-nav: rgba(255,255,255,.72);--text-primary: #0f0f12;--text-secondary: #3a3d46;--text-tertiary: #8a8d96;--text-muted: #b4b8c2;--border-primary: rgba(15,15,18,.06);--border-secondary: rgba(15,15,18,.08);--border-card: rgba(255,255,255,.8);--shadow-card: 0 1px 0 rgba(255,255,255,.7) inset, 0 4px 20px rgba(15,15,18,.06);--shadow-card-hover: 0 1px 0 rgba(255,255,255,.7) inset, 0 8px 28px rgba(15,15,18,.1);--shadow-nav: 0 -1px 0 rgba(255,255,255,.6) inset;--shadow-btn: 0 2px 8px rgba(15,15,18,.12);--accent: #0f0f12;--accent-light: rgba(15,15,18,.06);--accent-blue: #4a7fb8;--fam-navy-1: #26355c;--fam-navy-2: #12203c;--fam-amber: #f5c86e;--fam-coral: #ef8863;--fam-coral-deep: #d96a42;--fam-coral-tint: #fdeee5;--fam-violet: #7a6de8;--fam-violet-deep: #6658d4;--fam-violet-tint: #efedfc;--fam-teal: #2db198;--fam-teal-deep: #1e8f7a;--fam-teal-tint: #e3f5ef;--fam-honey: #ecaa3e;--fam-honey-deep: #cf8f22;--fam-honey-tint: #fcf3de;--fam-blue: #5b95dc;--fam-blue-deep: #3f7ac4;--fam-blue-tint: #e9f2fc;--news-ai-bg: var(--fam-coral-tint);--news-ai-border: rgba(217,106,66,.16);--news-invest-bg: var(--fam-blue-tint);--news-invest-border: rgba(63,122,196,.16);--news-weekly-bg: var(--fam-violet-tint);--news-weekly-border: rgba(102,88,212,.16);--mood-bg: rgba(255,248,236,.85);--mood-border: rgba(245,226,192,.7);--mood-text: #8a6d3b;--tag-bg: var(--fam-teal-tint);--tag-text: var(--fam-teal-deep);--cat-bg: var(--fam-teal-tint);--cat-text: var(--fam-teal-deep);--cat-border: transparent;--input-bg: rgba(255,255,255,.6);--input-border: rgba(15,15,18,.08);--skeleton: rgba(15,15,18,.06);--overlay: rgba(15,15,18,.35);--toast-bg: rgba(28,30,36,.92);--toast-border: transparent;--code-bg: rgba(15,15,18,.05);--code-inline-bg: rgba(15,15,18,.06);--radius-card: 18px;--radius-button: 99px;--radius-input: 12px;--blur-glass: blur(20px) saturate(180%)}[data-theme=dark]{--bg-primary: #15171c;--bg-secondary: rgba(255,255,255,.04);--bg-tertiary: rgba(255,255,255,.06);--bg-body: linear-gradient(180deg, #15171c 0%, #1a1d24 100%);--bg-body-solid: #15171c;--bg-card: rgba(255,255,255,.05);--bg-card-solid: #1f2229;--bg-nav: rgba(21,23,28,.75);--text-primary: #f0f1f3;--text-secondary: #c4c7cf;--text-tertiary: #8a8d96;--text-muted: #5a5d66;--border-primary: rgba(255,255,255,.06);--border-secondary: rgba(255,255,255,.08);--border-card: rgba(255,255,255,.08);--shadow-card: 0 1px 0 rgba(255,255,255,.04) inset, 0 4px 20px rgba(0,0,0,.25);--shadow-card-hover: 0 1px 0 rgba(255,255,255,.06) inset, 0 8px 28px rgba(0,0,0,.35);--shadow-nav: 0 -1px 0 rgba(255,255,255,.04) inset;--shadow-btn: 0 2px 8px rgba(0,0,0,.4);--accent: #f0f1f3;--accent-light: rgba(255,255,255,.08);--accent-blue: #6ba3d8;--fam-coral-deep: #f09b78;--fam-coral-tint: rgba(239,136,99,.13);--fam-violet-deep: #a99ef2;--fam-violet-tint: rgba(122,109,232,.15);--fam-teal-deep: #4cc7ae;--fam-teal-tint: rgba(45,177,152,.15);--fam-honey-deep: #f0bd5e;--fam-honey-tint: rgba(236,170,62,.14);--fam-blue-deep: #85b2e8;--fam-blue-tint: rgba(91,149,220,.15);--news-ai-bg: var(--fam-coral-tint);--news-ai-border: rgba(239,136,99,.22);--news-invest-bg: var(--fam-blue-tint);--news-invest-border: rgba(91,149,220,.22);--news-weekly-bg: var(--fam-violet-tint);--news-weekly-border: rgba(122,109,232,.22);--mood-bg: rgba(74,58,32,.4);--mood-border: rgba(74,58,32,.6);--mood-text: #d4a853;--tag-bg: rgba(255,255,255,.1);--tag-text: #f0f1f3;--cat-bg: rgba(107,163,216,.15);--cat-text: #6ba3d8;--cat-border: rgba(107,163,216,.25);--input-bg: rgba(255,255,255,.04);--input-border: rgba(255,255,255,.08);--skeleton: rgba(255,255,255,.06);--overlay: rgba(0,0,0,.6);--toast-bg: #2c2f37;--toast-border: rgba(255,255,255,.1);--code-bg: rgba(255,255,255,.07);--code-inline-bg: rgba(255,255,255,.09)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{height:100%;height:-webkit-fill-available;height:100dvh}body{height:100vh;height:-webkit-fill-available;height:100dvh;overflow:hidden;background:var(--bg-body-solid);background-image:var(--bg-body);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,PingFang SC,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;color:var(--text-primary);position:fixed;inset:0;letter-spacing:-.01em}#root{height:100vh;height:-webkit-fill-available;height:100dvh;max-width:480px;margin:0 auto;background:transparent;box-shadow:0 0 60px #0f0f1214;position:relative;overflow:hidden;overflow:clip;display:flex;flex-direction:column}#root:before{content:"";position:absolute;top:-120px;right:-80px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(180,200,240,.45) 0%,transparent 70%);pointer-events:none;z-index:0}#root:after{content:"";position:absolute;bottom:-120px;left:-80px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(220,200,240,.35) 0%,transparent 70%);pointer-events:none;z-index:0}[data-theme=dark] #root:before{background:radial-gradient(circle,rgba(80,120,180,.18) 0%,transparent 70%)}[data-theme=dark] #root:after{background:radial-gradient(circle,rgba(120,80,160,.15) 0%,transparent 70%)}@media(max-width:520px){#root{box-shadow:none;max-width:100%}}@media all and (display-mode:standalone){body{height:100vh;height:-webkit-fill-available;height:100dvh}}@media(min-width:768px)and (display-mode:browser){body:before,body:after{content:"";position:fixed;pointer-events:none;z-index:0;border-radius:50%;filter:blur(80px)}body:before{top:-15vh;left:-10vw;width:55vw;height:55vw;background:radial-gradient(circle,#e67e2238,#e67e2200 65%)}body:after{bottom:-20vh;right:-10vw;width:60vw;height:60vw;background:radial-gradient(circle,#3498db33,#3498db00 65%)}body{background:radial-gradient(ellipse at 30% 0%,rgba(255,235,210,.55),transparent 50%),radial-gradient(ellipse at 70% 100%,rgba(210,225,255,.55),transparent 50%),linear-gradient(135deg,#f6f4f0,#eef2f8)}#root{max-width:440px;height:calc(100dvh - 48px)!important;max-height:920px;margin:24px auto;border-radius:32px;overflow:hidden;background:#ffffff8c;backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);border:.5px solid rgba(255,255,255,.6);box-shadow:0 30px 80px -20px #0f0f1e40,0 10px 30px -10px #0f0f1e26,inset 0 1px #ffffff80;position:relative;z-index:1}.glass-card{background:#ffffffb3!important}}@media(min-width:768px)and (display-mode:browser){[data-theme=dark] body{background:radial-gradient(ellipse at 30% 0%,rgba(60,40,80,.4),transparent 50%),radial-gradient(ellipse at 70% 100%,rgba(30,50,90,.4),transparent 50%),linear-gradient(135deg,#14141a,#1a1c25)}[data-theme=dark] body:before{background:radial-gradient(circle,rgba(230,126,34,.1) 0%,transparent 65%)}[data-theme=dark] body:after{background:radial-gradient(circle,rgba(52,152,219,.1) 0%,transparent 65%)}[data-theme=dark] #root{background:#1e1e268c;border-color:#ffffff14;box-shadow:0 30px 80px -20px #0009,0 10px 30px -10px #0006,inset 0 1px #ffffff0d}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}@keyframes pageFade{0%{opacity:.6}to{opacity:1}}.animate-fadeIn{animation:fadeIn .2s ease-out}.animate-slideUp{animation:slideUp .3s ease-out}.animate-slideIn{animation:slideIn .25s ease-out}.animate-pageFade{animation:pageFade .2s ease-out}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-preview{display:-webkit-box;-webkit-line-clamp:8;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap;word-break:break-word}.card-preview-short{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap;word-break:break-word}.card-preview-short.rich-content h1,.card-preview-short.rich-content h2,.card-preview-short.rich-content h3,.card-preview-short.rich-content h4{font-size:13px!important;font-weight:600!important;margin:2px 0!important;color:var(--text-secondary)!important}.card-preview-short.rich-content p,.card-preview-short.rich-content li{font-size:13px!important;margin:2px 0!important;line-height:1.6!important}.card-preview-short.rich-content img{max-height:60px!important;margin:4px 0!important}.toast{position:fixed;top:calc(env(safe-area-inset-top,20px) + 20px);left:50%;transform:translate(-50%);background:var(--toast-bg);border:.5px solid var(--toast-border);color:#fff;padding:12px 28px;border-radius:24px;font-size:15px;z-index:9999;animation:toastIn .2s ease-out;box-shadow:0 4px 12px #00000026}input,textarea{font-family:inherit;-webkit-appearance:none;font-size:16px;color:var(--text-primary)}textarea{line-height:1.8}.tasks-page{min-height:100%;padding:calc(env(safe-area-inset-top,20px) + 24px) 20px 40px;background:transparent}.tasks-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:0 4px;margin-bottom:14px}.tasks-header__add{display:flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;border:0;border-radius:50%;background:#26355c;color:#fff;font-size:30px;font-weight:300;line-height:1;cursor:pointer;box-shadow:var(--shadow-btn);transition:transform .12s ease}.tasks-header__add:active{transform:scale(.9)}.tasks-header__add:focus-visible{border-radius:50%}.tasks-title{font-size:30px;font-weight:700;letter-spacing:0;margin-bottom:2px;color:var(--text-primary)}.tasks-date{font-size:14px;color:var(--text-tertiary)}.task-hero2{position:relative;overflow:hidden;margin-bottom:12px;padding:14px 10px 10px 8px;border-radius:22px;display:flex;align-items:stretch;gap:4px;background:radial-gradient(60% 80% at 82% 40%,rgba(255,205,110,.22),transparent 70%),linear-gradient(135deg,rgba(255,205,110,.16) 0%,rgba(255,205,110,.04) 45%,transparent 70%),var(--bg-card);border:1px solid var(--border-card);box-shadow:var(--shadow-card)}.task-hero2__gauge{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.task-arc{position:relative;width:100%;max-width:230px;aspect-ratio:180 / 112}.task-arc__svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;display:block}.task-arc__groove{stroke:#26355c1c}.task-arc__tick{stroke:#26355c2e}[data-theme=dark] .task-arc__groove{stroke:#ffffff1a}[data-theme=dark] .task-arc__tick{stroke:#ffffff2e}.task-arc__spark{position:absolute;width:0;height:0;pointer-events:none}.task-arc__spark:before,.task-arc__spark:after{content:"";position:absolute;border-radius:50%}.task-arc__spark:before{left:-10px;top:-10px;width:20px;height:20px;background:radial-gradient(circle,#ffe28cbf,#ffd66e00 70%);animation:arcHalo 1.8s ease-in-out infinite}.task-arc__spark:after{left:-3.5px;top:-3.5px;width:7px;height:7px;background:#fffdf2;box-shadow:0 0 4px 1px #fff0bee6}.task-arc__spark i{position:absolute;left:-7px;top:-7px;width:14px;height:14px;background:#fff;clip-path:polygon(50% 0,58% 42%,100% 50%,58% 58%,50% 100%,42% 58%,0 50%,42% 42%);animation:arcTwinkle 1.8s ease-in-out infinite}@keyframes arcHalo{50%{transform:scale(1.5);opacity:.35}}@keyframes arcTwinkle{0%,to{transform:scale(.5) rotate(0);opacity:.45}50%{transform:scale(1) rotate(45deg);opacity:1}}.task-arc__center{position:absolute;left:0;right:0;top:45%;display:flex;flex-direction:column;align-items:center;line-height:1;pointer-events:none}.task-arc__center b{font-size:42px;font-weight:800;letter-spacing:-1.5px;font-variant-numeric:tabular-nums;color:var(--text-primary)}.task-arc__center small{font-size:13px;font-weight:600;letter-spacing:0;margin-left:2px;color:var(--text-tertiary)}.task-arc__done{font-size:11.5px;color:var(--text-tertiary);margin-top:3px;white-space:nowrap}.task-arc__pulls{position:absolute;transform:translate(-50%,-50%);font-size:10.5px;font-weight:700;color:var(--sock-deep);white-space:nowrap;pointer-events:none}.task-hero2__sub{font-size:12.5px;color:var(--text-secondary);margin-top:8px;text-align:center;white-space:nowrap}.task-hero2__sub b{color:#d9822b;font-variant-numeric:tabular-nums}.task-hero2__machine{position:relative;flex:0 0 auto;width:120px;border:0;background:transparent;padding:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.task-hero2__mm{position:relative;display:block;width:120px;height:166px;transform-origin:50% 100%}.task-hero2__machine svg{width:120px;height:166px;display:block}.task-hero2__machine--ready .task-hero2__mm{animation:heroMachineIdle 2.8s ease-in-out infinite}@keyframes heroMachineIdle{0%,80%,to{transform:rotate(0)}85%{transform:rotate(-3deg)}90%{transform:rotate(3deg)}95%{transform:rotate(-1.5deg)}}.task-hero2__machine--shake .task-hero2__mm{animation:heroMachineShake .55s linear}@keyframes heroMachineShake{15%{transform:translate(-2px,1px) rotate(-3deg)}35%{transform:translate(2px,-1px) rotate(3deg)}55%{transform:translate(-1px) rotate(-2deg)}75%{transform:rotate(1deg)}}.task-hero2__machine:active .task-hero2__mm{transform:scale(.95)}.task-hero2__machine--ready .mm-bulb{animation:mmBulbChase .84s linear infinite}@keyframes mmBulbChase{0%,40%,to{opacity:.35}15%{opacity:1}}.task-hero2__slot{position:absolute;left:24px;top:125px;width:5px;height:16px;pointer-events:none}.task-hero2__badge{position:absolute;top:2px;right:4px;min-width:22px;height:22px;border-radius:11px;background:#e2483a;color:#fff;font-size:12.5px;font-weight:800;display:grid;place-items:center;padding:0 6px;box-shadow:0 0 0 2px var(--bg-card-solid),0 2px 6px #e2483a59;animation:heroBadgeIn .45s cubic-bezier(.2,.9,.3,1.6)}@keyframes heroBadgeIn{0%{transform:scale(.3)}}.task-hero2__go{height:18px;font-size:12px;font-weight:700;color:#26355c;white-space:nowrap}.task-hero2__machine--ready .task-hero2__go{color:#d9534a}.task-rail__socket{position:absolute;z-index:1;transform:translate(-50%,-50%)}.task-rail__socket--bronze{--sock: #d9a26c;--sock-deep: #a2622c}.task-rail__socket--silver{--sock: #aeb7c4;--sock-deep: #6b7686}.task-rail__socket--gold{--sock: #f2c33c;--sock-deep: #b07a0e}.task-rail__hole{position:relative;z-index:1;box-sizing:border-box;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--bg-card-solid);border:1.5px dashed var(--sock);transition:box-shadow .3s ease,border-color .3s ease}.task-rail__at{font-size:10.5px;font-weight:800;color:var(--sock-deep);font-variant-numeric:tabular-nums}.task-rail__socket--lit .task-rail__hole{border:0;background:transparent;box-shadow:0 0 0 2px var(--bg-card-solid),0 0 0 3.5px var(--sock),0 0 12px 2px color-mix(in srgb,var(--sock) 45%,transparent)}.task-rail__socket--next .task-rail__hole{animation:socketPulse 1.8s ease-in-out infinite}@keyframes socketPulse{50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--sock) 25%,transparent)}}.task-rail__pulls{font-size:10.5px;font-weight:600;color:var(--sock-deep);white-space:nowrap}.task-rail__socket--shine .gacha-coin{animation:railCoinShine .7s ease-out}@keyframes railCoinShine{45%{transform:scale(1.3) rotateY(180deg);filter:brightness(1.25)}}.task-rail__socket--pop .gacha-coin{animation:railCoinPop .7s cubic-bezier(.2,.9,.3,1.5)}@keyframes railCoinPop{0%{transform:scale(.2) rotateY(0)}55%{transform:scale(1.7) rotateY(540deg)}to{transform:scale(1) rotateY(720deg)}}.task-rail__burst{position:absolute;left:50%;top:15px;width:104px;height:104px;margin:-52px 0 0 -52px;border-radius:50%;pointer-events:none;background:repeating-conic-gradient(color-mix(in srgb,var(--sock) 80%,#fff) 0deg 7deg,transparent 7deg 20deg);-webkit-mask-image:radial-gradient(circle,#000 15%,transparent 65%);mask-image:radial-gradient(circle,#000 15%,transparent 65%);animation:railBurst .9s ease-out forwards}@keyframes railBurst{0%{transform:scale(.2) rotate(0);opacity:1}to{transform:scale(1.4) rotate(70deg);opacity:0}}.task-hero2__shower{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:3}.task-hero2__drop{position:absolute;top:-24px;animation:heroCoinFall 1.3s cubic-bezier(.4,0,.8,.6) forwards}@keyframes heroCoinFall{to{transform:translateY(210px) rotate(600deg);opacity:.2}}@media(prefers-reduced-motion:reduce){.task-hero2__machine--ready .task-hero2__mm,.mm-bulb,.task-rail__socket--next .task-rail__hole,.task-arc__spark:before,.task-arc__spark i,.gacha-coin:after{animation:none}}.task-add-sheet{position:fixed;inset:0;z-index:3000;visibility:hidden;pointer-events:none;transition:visibility 0s linear .26s}.task-add-sheet--open{visibility:visible;pointer-events:auto;transition-delay:0s}.task-add-sheet__backdrop{position:absolute;inset:0;background:#00000059;opacity:0;transition:opacity .26s ease;touch-action:none}.task-add-sheet--open .task-add-sheet__backdrop{opacity:1;transition-duration:.38s}.task-add-sheet__lift{position:absolute;bottom:0;left:0;right:0;width:100%;max-width:480px;margin:0 auto;transform:translate3d(0,calc(-1 * var(--sheet-keyboard)),0);transition:transform .18s ease}.task-add-sheet__panel{display:flex;flex-direction:column;max-height:var(--sheet-max-height);box-sizing:border-box;border-radius:20px 20px 0 0;border:1px solid var(--border-card);border-bottom:0;background:var(--bg-card-solid);color:var(--text-primary);box-shadow:0 -12px 44px #00000029;transform:translate3d(0,calc(100% + var(--sheet-keyboard) + 24px),0);transition:transform .26s cubic-bezier(.32,.72,0,1)}.task-add-sheet--open .task-add-sheet__panel{transform:translate3d(0,var(--sheet-drag),0);transition-duration:.38s}.task-add-sheet--dragging .task-add-sheet__panel{transition:none}.task-add-sheet__header{flex:0 0 auto;padding:10px 20px 12px;touch-action:none;user-select:none}.task-add-sheet__handle{width:36px;height:4px;border-radius:999px;background:var(--border-secondary);margin:0 auto 12px}.task-add-sheet__heading{display:flex;justify-content:space-between;align-items:center}.task-add-sheet__heading h2{margin:0;font-size:20px;font-weight:700}.task-add-sheet__heading button{border:0;padding:6px 0 6px 12px;background:transparent;color:var(--text-secondary);font-size:14px;cursor:pointer}.task-add-sheet__form{display:flex;flex-direction:column;gap:16px;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 20px calc(20px + env(safe-area-inset-bottom))}.task-add-sheet__input{box-sizing:border-box;flex:0 0 auto;width:100%;min-width:0;border:1px solid var(--border-secondary);border-radius:12px;padding:13px 14px;font-size:16px;outline:none;background:var(--input-bg);color:var(--text-primary)}.task-add-sheet__input:focus,.task-add-sheet__input:focus-visible{outline:none;border-radius:12px;border-color:var(--task-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--task-color) 18%,transparent)}.task-add-sheet__categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.task-add-sheet__category{display:flex;align-items:center;gap:8px;min-width:0;border:1px solid var(--border-secondary);border-radius:12px;background:transparent;color:var(--text-secondary);padding:12px 10px;text-align:left;font-size:14px;cursor:pointer;transition:transform .18s ease}.task-add-sheet__category small{display:block;margin-top:3px;font-size:12px;color:var(--text-tertiary)}.task-add-sheet__category--active{border-color:var(--category-color);background:color-mix(in srgb,var(--category-color) 10%,transparent);transform:scale(1.02)}.task-add-sheet__dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--category-color)}.task-add-sheet__points{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:var(--text-secondary)}.task-add-sheet__submit{flex:0 0 auto;width:100%;border:0;border-radius:14px;padding:14px;background:var(--task-color);color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:transform .12s ease,opacity .12s ease}.task-add-sheet__submit:active:not(:disabled){transform:scale(.98)}.task-add-sheet__submit:disabled{opacity:.35;cursor:default}.task-enter{position:relative;animation:taskEnter .6s ease-out .24s both}.task-enter:before{content:"";position:absolute;inset:0;background:var(--task-color);pointer-events:none;animation:taskEnterFlash .7s ease-out .24s both}@keyframes taskEnter{0%{transform:translateY(-12px);opacity:0}35%,to{transform:translateY(0);opacity:1}}@keyframes taskEnterFlash{0%{opacity:.2}to{opacity:0}}@media(prefers-reduced-motion:reduce){.task-add-sheet__panel,.task-add-sheet--open .task-add-sheet__panel{transform:none;opacity:0;transition:opacity .12s ease}.task-add-sheet--open .task-add-sheet__panel{opacity:1}.task-add-sheet__lift,.task-add-sheet__category,.tasks-header__add{transition:none}.task-add-sheet__category--active{transform:none}.task-add-sheet__backdrop,.task-add-sheet--open .task-add-sheet__backdrop{transition-duration:.12s}.task-enter{animation:fadeIn .12s ease-out}.task-enter:before{animation:none;opacity:0}}.task-check.task-check--ongoing{color:var(--task-color);border-style:dashed;border-color:var(--task-color)}.task-check.task-check--ongoing svg{opacity:1;transform:none}.task-check.task-check--followed{border-style:solid;background:var(--task-color);color:#fff;animation:followPop .35s cubic-bezier(.3,1.7,.5,1)}@keyframes followPop{50%{transform:scale(1.25)}}.task-follow-tag{display:inline-flex;align-items:center;align-self:flex-start;margin-top:4px;padding:1px 8px;border-radius:999px;font-size:11.5px;color:var(--task-color);background:color-mix(in srgb,var(--task-color) 10%,transparent);border:1px dashed color-mix(in srgb,var(--task-color) 45%,transparent)}.task-follow-tag b{font-weight:700}.task-follow-tag--done{border-style:solid;background:color-mix(in srgb,var(--task-color) 16%,transparent);font-weight:600}.task-points--follow{border:1px dashed color-mix(in srgb,var(--task-color) 50%,transparent)}.task-edit-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.task-edit-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border-radius:999px;border:1px dashed var(--border-secondary);background:transparent;color:var(--text-secondary);font-size:12.5px;cursor:pointer}.task-edit-chip--on{border-style:solid;border-color:var(--task-color);color:var(--task-color);background:color-mix(in srgb,var(--task-color) 10%,transparent)}.task-edit-chip--finish{border-style:solid;border-color:transparent;background:var(--task-color);color:#fff;font-weight:700}.task-add-sheet__ongoing{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border-radius:12px;border:1px dashed var(--border-secondary);background:transparent;text-align:left;cursor:pointer;color:var(--text-secondary);transition:border-color .15s ease,background .15s ease}.task-add-sheet__ongoing--on{border-style:solid;border-color:var(--task-color);background:color-mix(in srgb,var(--task-color) 8%,transparent)}.task-add-sheet__ongoing-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.task-add-sheet__ongoing-text b{font-size:14px;color:var(--text-primary)}.task-add-sheet__ongoing-text small{font-size:12px;color:var(--text-tertiary);line-height:1.4}.task-add-sheet__switch{position:relative;flex:0 0 42px;width:42px;height:24px;border-radius:12px;background:var(--border-secondary);transition:background .2s ease}.task-add-sheet__switch i{position:absolute;left:2px;top:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .2s ease}.task-add-sheet__ongoing--on .task-add-sheet__switch{background:var(--task-color)}.task-add-sheet__ongoing--on .task-add-sheet__switch i{transform:translate(18px)}.task-points-stepper{flex:0 0 auto;display:inline-flex;align-items:center;gap:2px;border:1px solid var(--border-secondary);border-radius:999px;padding:2px}.task-points-stepper button{width:26px;height:26px;border-radius:50%;border:0;background:var(--accent-light);color:var(--text-secondary);font-size:16px;line-height:1;cursor:pointer}.task-points-stepper button:disabled{opacity:.35;cursor:default}.task-points-stepper button:active{transform:scale(.9)}.task-points-stepper span{min-width:40px;text-align:center;font-size:12px;color:var(--text-tertiary)}.task-points-stepper b{font-size:15px;color:var(--task-color);font-variant-numeric:tabular-nums;margin-right:1px}.task-group{margin:0 0 12px;padding:12px 0 6px;border-radius:18px;background:var(--bg-card);border:1px solid var(--border-card);box-shadow:var(--shadow-card);overflow:hidden;transition:box-shadow .16s ease}.task-group--over{box-shadow:0 0 0 2px color-mix(in srgb,var(--task-color) 45%,transparent),var(--shadow-card)}.task-group__header{display:flex;align-items:center;gap:8px;padding:0 10px 4px 16px}.task-group__dot{width:8px;height:8px;border-radius:50%;background:var(--task-color);flex:0 0 8px}.task-group__label{font-size:16px;font-weight:700;color:var(--task-color);letter-spacing:0}.task-group__count{font-size:12px;font-weight:600;color:var(--task-color);background:color-mix(in srgb,var(--task-color) 12%,transparent);border-radius:999px;padding:1px 8px;font-variant-numeric:tabular-nums}.task-group__total{font-size:12px;color:var(--text-tertiary)}.task-add-button{margin-left:auto;width:32px;height:32px;border-radius:50%;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-size:26px;font-weight:300;line-height:1}.task-add-button:active{background:var(--bg-tertiary);transform:scale(.94)}.task-list{display:flex;flex-direction:column;min-height:8px}.task-empty{font-size:13px;color:var(--text-muted);padding:6px 16px 10px}.task-swipe-shell{position:relative;overflow:hidden;touch-action:pan-y}.task-swipe-shell+.task-swipe-shell:before{content:"";position:absolute;top:0;left:52px;right:16px;height:1px;background:var(--border-primary);z-index:2}.task-swipe-delete{position:absolute;inset:0;display:flex;align-items:center;justify-content:flex-end;gap:5px;padding:0 18px;font-size:12.5px;font-weight:700;color:#fff;opacity:0;pointer-events:none;transition:opacity .12s ease}.task-swipe-delete svg{transition:transform .18s cubic-bezier(.3,1.7,.5,1)}.task-swipe-delete--armed svg{transform:scale(1.25) rotate(-8deg)}.task-swipe-shell--deleting{background:#e5484d}.task-swipe-shell--deleting .task-swipe-delete{opacity:1}.task-swipe-shell--deleting .task-row{background:var(--bg-card-solid)}.task-swipe-shell--removing{animation:taskRemove .26s ease-in forwards}.task-swipe-shell--removing .task-row{transform:translate3d(-110%,0,0)!important;transition:transform .22s ease-in!important}@keyframes taskRemove{60%{max-height:90px;opacity:1}to{max-height:0;opacity:0}}.task-undo-toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 78px);z-index:2600;transform:translate(-50%);width:min(92vw,420px);display:flex;align-items:center;gap:12px;padding:12px 14px 12px 16px;border-radius:14px;background:#1c1e26f0;color:#fff;box-shadow:0 10px 30px #0000004d;overflow:hidden;animation:undoIn .28s cubic-bezier(.2,.9,.3,1.3)}@keyframes undoIn{0%{transform:translate(-50%,20px);opacity:0}}.task-undo-toast__text{flex:1;min-width:0;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-undo-toast button{flex:0 0 auto;border:0;background:transparent;color:#ffd166;font-size:14px;font-weight:800;padding:4px 6px;cursor:pointer}.task-undo-toast__timer{position:absolute;left:0;bottom:0;height:2px;width:100%;background:#ffd166;transform-origin:left;animation:undoTimer 4s linear forwards}@keyframes undoTimer{to{transform:scaleX(0)}}.task-swipe-shell--swiping{background:color-mix(in srgb,var(--task-color) 16%,transparent)}.task-swipe-action{position:absolute;inset:0;display:flex;align-items:center;padding:0 16px;font-size:12px;font-weight:700;color:var(--task-color);opacity:0;pointer-events:none;transition:opacity .12s ease}.task-swipe-shell--swiping .task-swipe-action{opacity:1}.task-row{position:relative;z-index:1;display:flex;align-items:center;gap:12px;min-height:54px;padding:12px 16px;background:transparent;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:pan-y;transition:transform .2s cubic-bezier(.2,.8,.2,1),opacity .16s ease,background .16s ease,box-shadow .16s ease}.task-swipe-shell--swiping .task-row{background:var(--bg-card-solid)}.task-row:active{cursor:grabbing}.task-row--mouse-pressing{background:var(--bg-card-solid);box-shadow:0 12px 30px #0f172a1f}.task-row--dragging{opacity:.18;filter:saturate(.6)}.task-row--editing{cursor:text;background:color-mix(in srgb,var(--task-color) 5%,transparent)}.task-row__body{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:3px}.task-check{width:24px;height:24px;border-radius:50%;border:2px solid color-mix(in srgb,var(--task-color) 45%,rgba(150,156,166,.3));background:transparent;flex:0 0 24px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background .18s ease,border-color .18s ease,transform .22s cubic-bezier(.3,1.7,.5,1)}.task-check svg{opacity:0;transform:scale(.4);transition:opacity .18s ease,transform .22s cubic-bezier(.3,1.6,.5,1)}.task-row--completing .task-check,.task-check--done{border-color:var(--task-color);background:var(--task-color)}.task-row--completing .task-check svg,.task-check--done svg{opacity:1;transform:scale(1)}.task-row--completing .task-check{transform:scale(1.18)}.task-row--completing .task-text{color:var(--text-muted);text-decoration:line-through;transition:color .2s ease}.task-row--completing{animation:taskLeave .42s ease-in forwards}@keyframes taskLeave{0%,55%{opacity:1}to{opacity:.2;transform:translate(18px)}}.task-text-button{width:100%;min-width:0;display:block;border:0;background:transparent;padding:0;text-align:left;font:inherit;color:inherit;cursor:text}.task-text{font-size:16px;color:var(--text-primary);min-width:0;line-height:1.42;overflow-wrap:anywhere;letter-spacing:0}.task-age--stale{font-size:11px;color:var(--fam-honey-deep);background:var(--fam-honey-tint);border-radius:999px;padding:1px 7px;white-space:nowrap}.task-points{flex:0 0 auto;font-size:15px;font-weight:700;color:var(--task-color);font-variant-numeric:tabular-nums;background:color-mix(in srgb,var(--task-color) 10%,transparent);border-radius:10px;padding:3px 8px}.task-points small{font-size:10px;font-weight:600;margin-left:1px}.task-points-fly{position:absolute;right:18px;top:50%;font-size:18px;font-weight:800;color:var(--task-color);pointer-events:none;animation:taskPointsFly .7s ease-out forwards}@keyframes taskPointsFly{0%{opacity:1;transform:translateY(-50%) scale(1.2)}to{opacity:0;transform:translateY(-190%) scale(1)}}.task-edit-input{width:100%;min-width:0;-webkit-appearance:none;appearance:none;border:0!important;border-radius:0;background:transparent;padding:2px 0 3px;outline:none!important;font-size:16px;line-height:1.42;color:var(--text-primary);letter-spacing:0;box-shadow:none!important;caret-color:var(--task-color);user-select:text}.task-edit-input:focus{border:0!important;outline:none!important;box-shadow:none!important}.task-edit-input::selection{background:color-mix(in srgb,var(--task-color) 18%,transparent)}.task-done{margin-top:4px;padding:12px 16px 6px;border-radius:18px;background:var(--bg-card);border:1px solid var(--border-card);box-shadow:var(--shadow-card)}.task-done__head{display:flex;align-items:center;font-size:15px;font-weight:600;color:var(--text-secondary);padding-bottom:6px}.task-done__score{margin-left:auto;font-size:13px;font-weight:700;color:#1e8f7a;font-variant-numeric:tabular-nums}.task-done__empty{font-size:13px;color:var(--text-muted);padding:2px 0 8px}.task-done__list{display:flex;flex-direction:column;animation:fadeIn .15s ease-out}.task-done__toggle{display:flex;align-items:center;gap:4px;width:100%;border:0;border-top:1px solid var(--border-primary);background:transparent;color:var(--text-tertiary);font-size:13px;padding:10px 0 6px;cursor:pointer}.task-done__toggle svg{transition:transform .2s ease}.task-done__toggle--open svg{transform:rotate(180deg)}.task-done-row{display:flex;align-items:center;gap:12px;padding:9px 0;border-top:1px solid var(--border-primary)}.task-done-row .task-check--done{opacity:.6}.task-done-row__text{flex:1;min-width:0;font-size:15px;color:var(--text-muted);text-decoration:line-through;overflow-wrap:anywhere}.task-done-row__meta{flex:0 0 auto;font-size:12px;font-weight:600;color:var(--text-tertiary);white-space:nowrap;font-variant-numeric:tabular-nums}.task-delete-button{width:24px;height:24px;border-radius:50%;border:0;background:#b0b5be52;color:#fff;flex:0 0 24px;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer}.task-delete-button:active{transform:scale(.92);background:#969ca694}.task-drag-overlay{width:100%;min-height:54px;box-sizing:border-box;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:14px;background:var(--bg-card-solid);color:var(--text-primary);box-shadow:0 -10px 20px #0f0f1214,0 24px 42px #0f0f1238;pointer-events:none}.task-drag-overlay__check{width:24px;height:24px;border-radius:50%;border:2px solid color-mix(in srgb,var(--task-color) 45%,rgba(150,156,166,.3));background:transparent;flex:0 0 24px}.task-drag-overlay__text{display:block;flex:1;min-width:0;font-size:16px;line-height:1.42;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:0}.gacha-page{min-height:100%;padding:calc(env(safe-area-inset-top,20px) + 12px) 20px 48px}.gacha-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:8px}.gacha-back{justify-self:start;border:0;background:transparent;color:var(--accent-blue);font-size:16px;padding:6px 0;cursor:pointer}.gacha-title{font-size:17px;font-weight:700;color:var(--text-primary)}.gacha-owned{justify-self:end;font-size:13px;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.gacha-stage{position:relative;margin:0 -20px;padding:16px 0 10px;background:radial-gradient(55% 40% at 50% 32%,#ffd2784d,#ffd27800 72%),radial-gradient(42% 6% at 50% 98%,rgba(18,32,60,.22),transparent 70%)}.gacha-machine{position:relative;width:min(340px,90vw);margin:0 auto;display:flex;flex-direction:column;align-items:center}.gacha-cap{position:relative;z-index:4;width:30%;height:20px;margin-bottom:-11px;border-radius:40px 40px 6px 6px;background:linear-gradient(180deg,#4d63a0,#26355c);box-shadow:inset 0 2px #ffffff40,0 3px 6px #12203c4d}.gacha-cap__knob{position:absolute;left:50%;top:-11px;width:20px;height:15px;margin-left:-10px;border-radius:10px 10px 4px 4px;background:radial-gradient(circle at 40% 30%,#fff1c6,#e2b552 65%,#b98a2c);box-shadow:0 2px 3px #0000004d}.gacha-dome{position:relative;z-index:2;width:100%;aspect-ratio:1;max-width:100%;border-radius:50%;background:radial-gradient(circle at 50% 36%,#fff9,#dee8f673 60%,#b2c4de8c);border:5px solid rgba(255,255,255,.96);box-shadow:inset 0 -28px 44px #1e2b4f3d,inset 0 10px 24px #ffffffb3,0 0 0 1px #1e2b4f1f,0 20px 38px #12203c29;overflow:hidden}.gacha-glass{position:absolute;inset:0;border-radius:50%;pointer-events:none;z-index:1;background:radial-gradient(ellipse 8% 30% at 15% 44%,rgba(255,255,255,.7),transparent 70%),radial-gradient(ellipse 30% 13% at 34% 13%,rgba(255,255,255,.88),transparent 70%),radial-gradient(circle at 81% 25%,#ffffffe6 0,#fff0 4%),radial-gradient(circle at 50% 50%,transparent 66%,rgba(255,255,255,.42) 100%)}.gacha-collar{position:relative;z-index:3;width:62%;height:18px;margin-top:-16px;border-radius:9px;background:linear-gradient(180deg,#f6f8fb,#c3ccd9 42%,#8e9aac 56%,#e1e7ef);box-shadow:0 3px 6px #12203c40,inset 0 1px #fff}.gacha-body{position:relative;z-index:1;width:92%;margin-top:-6px;padding:18px 16px 20px;border-radius:22px 22px 28px 28px;background:linear-gradient(180deg,#3d5390,#26355c 55%,#1b2747);box-shadow:inset 0 2px #ffffff24,inset 0 -4px 10px #0000004d,0 18px 36px #12203c4d;display:flex;flex-direction:column;align-items:center;gap:12px}.gacha-body:before{content:"";position:absolute;inset:6px;border-radius:17px 17px 23px 23px;border:1px solid rgba(245,200,110,.3);pointer-events:none}.gacha-lights{display:flex;justify-content:space-between;width:88%}.gacha-lights span{width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#fffbe6,#ffd76a 60%,#c99a1f);box-shadow:0 0 6px 1px #ffd66e8c;animation:bulbIdle 2.4s ease-in-out infinite}@keyframes bulbIdle{50%{opacity:.45;box-shadow:none}}.gacha-machine--armed .gacha-lights span{animation:bulbChase .99s linear infinite}@keyframes bulbChase{0%,40%,to{opacity:.35;box-shadow:none}15%{opacity:1;box-shadow:0 0 10px 3px #ffd66ee6}}.gacha-machine--busy .gacha-lights span{animation:bulbFlash .18s steps(2) infinite}@keyframes bulbFlash{50%{opacity:.25;box-shadow:none}}.gacha-plate{position:relative;padding:4px 16px;border-radius:8px;background:linear-gradient(180deg,#fff3cc,#e3b552);color:#5a3a06;font-size:13px;font-weight:800;letter-spacing:1px;white-space:nowrap;box-shadow:inset 0 1px #ffffffbf,0 2px 4px #0000004d}.gacha-plate b{font-variant-numeric:tabular-nums}.gacha-controls{width:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.gacha-base{position:relative;z-index:0;width:98%;height:16px;margin-top:-8px;border-radius:0 0 16px 16px;background:linear-gradient(180deg,#1b2747,#111930);box-shadow:0 10px 18px #12203c40}.gacha-base:before,.gacha-base:after{content:"";position:absolute;bottom:-6px;width:26px;height:8px;border-radius:0 0 6px 6px;background:#0d1428}.gacha-base:before{left:14%}.gacha-base:after{right:14%}.gacha-crank{position:relative;width:112px;height:112px;border-radius:50%;background:radial-gradient(circle at 40% 32%,#fff3cf,#e9c264 45%,#c8962f 75%,#a8791f);border:4px solid #17213d;box-shadow:0 0 0 3px #f5c86e59,0 8px 16px #0006,inset 0 -6px 10px #00000038,inset 0 4px 6px #ffffff80;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}.gacha-crank:before{content:"";position:absolute;inset:12px;border-radius:50%;background:repeating-conic-gradient(#ffffff1f 0deg 6deg,#0000000f 6deg 12deg);pointer-events:none}.gacha-crank__bar:before{content:"";position:absolute;left:50%;top:50%;width:22px;height:94px;margin:-47px 0 0 -11px;border-radius:11px;background:linear-gradient(90deg,#fffaf0,#eedcae 60%,#d9c48c);box-shadow:0 3px 6px #00000059}.gacha-crank__grip{position:absolute;left:50%;top:4px;width:26px;height:26px;margin-left:-13px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#ff8a7a,#e2483a 60%,#b8322a);box-shadow:inset 0 -3px 4px #00000040,0 3px 5px #00000059}.gacha-coins{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px;padding:8px;border-radius:20px;background:linear-gradient(180deg,#0f0f120f,#0f0f1205);box-shadow:inset 0 2px 6px #0f0f121f}.gacha-coin-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 4px 8px;border-radius:14px;border:0;background:var(--bg-card-solid);box-shadow:0 2px 6px #0f0f1214;color:var(--text-primary);cursor:pointer;transition:transform .12s ease,opacity .15s ease}.gacha-machine--shake .gacha-body{animation:machineShake .5s linear}.gacha-machine--shake .gacha-dome{animation:machineShake .5s linear .03s}@keyframes machineShake{10%{transform:translate(-2px,1px) rotate(-.6deg)}25%{transform:translate(2px,-1px) rotate(.5deg)}40%{transform:translate(-2px) rotate(-.4deg)}55%{transform:translate(1px,1px) rotate(.3deg)}75%{transform:translate(-1px)}}.gacha-canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}.gacha-slot{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px}.gacha-slot__hole{width:9px;height:34px;border-radius:5px;background:#0b1226;box-shadow:inset 0 2px 4px #0009,0 0 0 2px #f5c86e;transition:box-shadow .25s ease}.gacha-slot--armed .gacha-slot__hole{box-shadow:inset 0 2px 4px #0009,0 0 0 2px #ffe08a,0 0 16px 4px #ffd66ebf}.gacha-slot__label{font-size:11px;color:#f5c86e;letter-spacing:1px;white-space:nowrap;font-variant-numeric:tabular-nums}.gacha-coin-flying{position:fixed;left:0;top:0;z-index:3100;pointer-events:none;font-size:15px;backface-visibility:visible;will-change:transform}.gacha-crank--ready{animation:crankGlow 1.4s ease-in-out infinite}@keyframes crankGlow{50%{box-shadow:0 6px 14px #00000059,0 0 22px 6px #ffd66e99,inset 0 -4px 8px #0003}}.gacha-crank__bar{position:absolute;inset:0;pointer-events:none}.gacha-chute{justify-self:end;position:relative;width:70px;height:62px;border-radius:14px 14px 18px 18px;background:#0b1226;box-shadow:inset 0 10px 16px #000000b3;display:grid;place-items:center;overflow:visible}.gacha-chute__flap{position:absolute;left:6px;right:6px;top:4px;height:18px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#45598c,#2b3b66);transform-origin:top center;transition:transform .25s cubic-bezier(.3,1.6,.5,1);box-shadow:0 2px 4px #0006;z-index:1}.gacha-chute__flap--open{transform:perspective(120px) rotateX(-70deg)}.gacha-capsule{position:relative;z-index:2;width:48px;height:48px;border:0;padding:0;border-radius:50%;background:transparent;cursor:pointer;filter:drop-shadow(0 4px 6px rgba(0,0,0,.5))}.gacha-capsule__top,.gacha-capsule__bottom{position:absolute;left:0;width:48px;height:24px;overflow:hidden}.gacha-capsule__top{top:0;border-radius:24px 24px 0 0;background:linear-gradient(180deg,#fffffff5,#dce6f4cc)}.gacha-capsule__inside{position:absolute;left:7px;top:3px;width:34px;height:34px;border-radius:50%;object-fit:cover;filter:blur(1.4px) saturate(.6) brightness(.8);opacity:.75}.gacha-capsule__bottom{bottom:0;border-radius:0 0 24px 24px;background:radial-gradient(circle at 35% 10%,color-mix(in srgb,var(--cap) 55%,#fff),var(--cap) 55%,color-mix(in srgb,var(--cap) 65%,#000))}.gacha-capsule:after{content:"";position:absolute;left:10px;top:6px;width:13px;height:7px;border-radius:50%;background:#fffffff2;transform:rotate(-30deg)}.gacha-capsule:before{content:"";position:absolute;left:0;right:0;top:23px;height:2px;background:#0003;z-index:1}.gacha-hint{margin:14px 0 0;text-align:center;font-size:14px;color:var(--text-secondary);min-height:20px}.gacha-hint--shake{animation:hintShake .4s}@keyframes hintShake{20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}.gacha-coin-btn:active:not(:disabled){transform:scale(.95)}.gacha-coin-btn:disabled{opacity:.4;cursor:default}.gacha-coin-btn__name{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}.gacha-coin-btn__pulls{font-size:11px;color:var(--text-tertiary)}.gacha-coin{position:relative;overflow:hidden;display:inline-grid;place-items:center;flex:0 0 auto;border-radius:50%;font-size:.52em;line-height:1;color:var(--c-lo);text-shadow:0 1px 0 rgba(255,255,255,.6),0 -.5px 0 rgba(0,0,0,.3);background:radial-gradient(circle,transparent 60%,rgba(0,0,0,.16) 61.5%,rgba(255,255,255,.35) 64%,transparent 66%),radial-gradient(circle at 34% 28%,var(--c-hi),var(--c-mid) 52%,var(--c-lo) 100%);box-shadow:inset 0 0 0 1px var(--c-edge),inset 0 0 0 2.2px color-mix(in srgb,var(--c-hi) 55%,transparent),inset 0 -2px 3px #00000038,0 1px 3px #00000047}.gacha-coin:before{content:"";position:absolute;inset:0;border-radius:50%;background:repeating-conic-gradient(#00000021 0deg 4deg,#ffffff1f 4deg 8deg);-webkit-mask-image:radial-gradient(circle,transparent 82%,#000 84%);mask-image:radial-gradient(circle,transparent 82%,#000 84%);pointer-events:none}.gacha-coin:after{content:"";position:absolute;inset:-20%;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.8) 50%,transparent 60%);transform:translate(-110%);animation:coinGlint 4.2s ease-in-out infinite;pointer-events:none}@keyframes coinGlint{0%,70%{transform:translate(-110%)}85%,to{transform:translate(110%)}}.gacha-coin--bronze{--c-hi: #ffd8ae;--c-mid: #cd8549;--c-lo: #87481d;--c-edge: #6a3714}.gacha-coin--silver{--c-hi: #ffffff;--c-mid: #c9d1dc;--c-lo: #7d8899;--c-edge: #5a6576}.gacha-coin--gold{--c-hi: #fff7cc;--c-mid: #f5c02e;--c-lo: #b5770b;--c-edge: #8a5606}.task-rail__socket--silver .gacha-coin:after{animation-delay:1.4s}.task-rail__socket--gold .gacha-coin:after{animation-delay:2.8s}.gacha-odds{margin:8px 0 0;text-align:center;font-size:12px;color:var(--text-tertiary)}.gacha-badge{position:relative;display:inline-grid;place-items:center;flex:0 0 auto;border-radius:50%;background:radial-gradient(circle at 35% 28%,color-mix(in srgb,var(--game) 45%,#fff),var(--game) 62%,color-mix(in srgb,var(--game) 60%,#000));box-shadow:0 0 0 2px var(--rar),inset 0 -3px 6px #00000040,0 2px 6px #0000002e;line-height:1}.gacha-badge__sym{filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}.gacha-badge__img{position:absolute;inset:0;width:100%;height:100%;border-radius:50%;object-fit:cover;display:block;user-select:none;-webkit-user-drag:none}.gacha-badge--SR{box-shadow:0 0 0 2px var(--rar),0 0 10px 1px color-mix(in srgb,var(--rar) 55%,transparent),inset 0 -3px 6px #00000040}.gacha-badge--SSR{box-shadow:0 0 0 2.5px var(--rar),0 0 14px 3px color-mix(in srgb,var(--rar) 60%,transparent),inset 0 -3px 6px #00000040}.gacha-badge--SSR:after{content:"";position:absolute;inset:0;border-radius:50%;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%);background-size:250% 100%;animation:badgeShine 2.8s ease-in-out infinite}@keyframes badgeShine{0%{background-position:120% 0}to{background-position:-120% 0}}.gacha-badge--locked{background:var(--accent-light);box-shadow:0 0 0 1.5px var(--border-secondary)}.gacha-badge--locked:after{display:none}.gacha-badge--locked .gacha-badge__sym{filter:grayscale(1) brightness(0);opacity:.16}.gacha-badge--locked .gacha-badge__img{filter:grayscale(1) brightness(.45) blur(3px);opacity:.45}.gacha-book{margin-top:16px;padding:14px;border-radius:18px;background:var(--bg-card);border:1px solid var(--border-card);box-shadow:var(--shadow-card)}.gacha-book__head{display:flex;align-items:baseline;font-size:16px;font-weight:700;color:var(--text-primary);padding:0 2px}.gacha-book__head span{margin-left:auto;font-size:13px;font-weight:500;color:var(--text-tertiary)}.gacha-book__filters{display:flex;gap:6px;overflow-x:auto;margin:10px -14px 0;padding:0 14px 2px;scrollbar-width:none}.gacha-book__filters::-webkit-scrollbar{display:none}.gacha-filter{flex:0 0 auto;display:inline-flex;align-items:baseline;gap:4px;border:1px solid var(--border-secondary);background:transparent;color:var(--text-secondary);border-radius:999px;padding:5px 11px;font-size:13px;cursor:pointer}.gacha-filter small{font-size:11px;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.gacha-filter--on{border-color:transparent;background:var(--game, var(--text-primary));color:#fff;font-weight:600}.gacha-filter--on small{color:#fffc}.gacha-book__group{margin-top:14px}.gacha-book__rarity{display:flex;align-items:baseline;gap:6px;font-size:12px;font-weight:700;margin-bottom:8px;padding:0 2px}.gacha-book__rarity span{font-weight:500;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.gacha-book__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 6px}.gacha-fig{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0;border:0;background:transparent;padding:2px 0;cursor:pointer;color:inherit}.gacha-fig:active{transform:scale(.95)}.gacha-fig__name{font-size:10.5px;line-height:1.25;color:var(--text-secondary);text-align:center;max-width:100%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.gacha-fig__count{position:absolute;top:-2px;right:6px;font-size:10px;font-weight:700;color:#fff;background:var(--text-primary);border-radius:999px;padding:0 5px}.gacha-fig--locked .gacha-fig__name{color:var(--text-muted)}.gacha-open{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:20px;background:#0a0e189e;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fadeIn .2s ease-out}.gacha-open__capsule{position:relative;width:150px;height:150px;animation:openIn .4s cubic-bezier(.2,.9,.3,1.4);filter:drop-shadow(0 16px 24px rgba(0,0,0,.45))}.gacha-open__top,.gacha-open__bottom{position:absolute;left:0;width:150px;height:75px;overflow:hidden}.gacha-open__top{top:0;border-radius:75px 75px 0 0;background:linear-gradient(180deg,#fffffff7,#d6e2f2d1);transform-origin:50% 100%}.gacha-open__top:after{content:"";position:absolute;left:28px;top:18px;width:40px;height:20px;border-radius:50%;background:#fffffff2;transform:rotate(-30deg)}.gacha-open__inside{position:absolute;left:22px;top:10px;width:106px;height:106px;border-radius:50%;object-fit:cover;filter:blur(5px) saturate(.5) brightness(.75);opacity:.7;transition:filter .6s ease,opacity .6s ease}.gacha-open__bottom{bottom:0;border-radius:0 0 75px 75px;background:radial-gradient(circle at 35% 10%,color-mix(in srgb,var(--cap) 55%,#fff),var(--cap) 55%,color-mix(in srgb,var(--cap) 65%,#000))}.gacha-open__seam{position:absolute;left:-2px;right:-2px;top:72px;height:6px;border-radius:3px;background:#00000040;z-index:2;transition:background .3s ease,box-shadow .3s ease}.gacha-open__capsule--twist .gacha-open__top{animation:capTwist .26s ease-in-out 3}.gacha-open__capsule--twist .gacha-open__bottom{animation:capTwistBack .26s ease-in-out 3}@keyframes capTwist{50%{transform:rotate(-9deg) translateY(-2px)}}@keyframes capTwistBack{50%{transform:rotate(5deg)}}.gacha-open__capsule--glow{animation:capShake .12s linear infinite}.gacha-open__capsule--glow .gacha-open__seam{background:#fff;box-shadow:0 0 18px 8px var(--cap),0 0 40px 18px color-mix(in srgb,var(--cap) 60%,transparent)}.gacha-open__capsule--glow .gacha-open__inside{opacity:.9;filter:blur(2.5px) saturate(.8) brightness(.95)}@keyframes capShake{25%{transform:translate(-3px,1px) rotate(-1.5deg)}75%{transform:translate(3px,-1px) rotate(1.5deg)}}.gacha-open__capsule--pop .gacha-open__top{animation:capTopFly .32s cubic-bezier(.3,.5,.6,1) forwards}.gacha-open__capsule--pop .gacha-open__bottom{animation:capBottomFall .32s ease-in forwards}.gacha-open__capsule--pop .gacha-open__seam{opacity:0}@keyframes capTopFly{to{transform:translate(-30px,-120px) rotate(-60deg);opacity:0}}@keyframes capBottomFall{to{transform:translate(20px,90px) rotate(25deg);opacity:0}}@keyframes openIn{0%{transform:scale(.3) translateY(120px);opacity:0}}.gacha-open__flash{position:absolute;left:50%;top:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:50%;background:radial-gradient(circle,#fff 0%,var(--rar) 45%,transparent 70%);animation:openFlash .55s ease-out forwards;pointer-events:none}@keyframes openFlash{0%{transform:scale(.2);opacity:1}to{transform:scale(14);opacity:0}}.gacha-reveal__card{position:relative;overflow:hidden;width:min(300px,100%);display:flex;flex-direction:column;align-items:center;gap:6px;padding:24px 22px 20px;border-radius:26px;background:var(--bg-card-solid);border:2px solid color-mix(in srgb,var(--rar) 55%,transparent);box-shadow:0 0 60px color-mix(in srgb,var(--rar) 45%,transparent),0 24px 60px #0000004d;animation:revealIn .5s cubic-bezier(.2,.9,.3,1.35)}.gacha-reveal__card--still{animation:revealIn .25s ease-out;box-shadow:0 24px 60px #0000004d}.gacha-reveal__rays{position:absolute;left:50%;top:104px;width:440px;height:440px;margin:-220px 0 0 -220px;background:repeating-conic-gradient(color-mix(in srgb,var(--rar) 26%,transparent) 0deg 10deg,transparent 10deg 24deg);border-radius:50%;animation:raysSpin 9s linear infinite;pointer-events:none;mask-image:radial-gradient(circle,#000 20%,transparent 70%);-webkit-mask-image:radial-gradient(circle,#000 20%,transparent 70%)}.gacha-reveal__card--N .gacha-reveal__rays{opacity:.5}.gacha-reveal__card--SSR{background:linear-gradient(180deg,color-mix(in srgb,var(--rar) 16%,var(--bg-card-solid)),var(--bg-card-solid))}.gacha-reveal__rarity{position:relative;font-size:12px;font-weight:700;color:#fff;background:var(--rar);border-radius:999px;padding:2px 12px}.gacha-reveal__badge{position:relative;margin:10px 0 6px;animation:figPop .6s cubic-bezier(.2,.9,.3,1.6) .05s both}.gacha-reveal__card--still .gacha-reveal__badge{animation:none}.gacha-reveal__name{position:relative;font-size:20px;font-weight:700;color:var(--text-primary);text-align:center}.gacha-reveal__game{position:relative;font-size:13px;color:var(--text-secondary)}.gacha-reveal__note{position:relative;font-size:13px;color:var(--text-tertiary)}.gacha-reveal__ok{position:relative;margin-top:12px;width:100%;border:0;border-radius:14px;padding:12px;background:var(--rar);color:#fff;font-size:15px;font-weight:700;cursor:pointer}@keyframes revealIn{0%{opacity:0;transform:scale(.7)}}@keyframes raysSpin{to{transform:rotate(360deg)}}@keyframes figPop{0%{opacity:0;transform:scale(.2) rotate(-20deg)}}.gacha-open--scroll{overflow-y:auto;overscroll-behavior:contain;place-items:start center;padding:calc(env(safe-area-inset-top,0px) + 16px) 16px calc(env(safe-area-inset-bottom,0px) + 16px)}.fig-card{position:relative;width:min(360px,100%);margin:auto 0;border-radius:28px;overflow:hidden;background:var(--bg-card-solid);border:2px solid color-mix(in srgb,var(--rar) 60%,transparent);box-shadow:0 0 0 1px #ffffff1f inset,0 0 70px color-mix(in srgb,var(--rar) 45%,transparent),0 28px 70px #00000059;animation:figCardIn .6s cubic-bezier(.2,.9,.3,1.25)}@keyframes figCardIn{0%{transform:translateY(40px) scale(.85);opacity:0}}.fig-card--still{animation:figCardIn .3s ease-out;box-shadow:0 28px 70px #00000059}.fig-card--SSR{border-color:var(--rar);animation:figCardIn .6s cubic-bezier(.2,.9,.3,1.25),figCardGlow 2.4s ease-in-out .6s infinite}@keyframes figCardGlow{50%{box-shadow:0 0 0 1px #ffffff1f inset,0 0 100px color-mix(in srgb,var(--rar) 70%,transparent),0 28px 70px #00000059}}.fig-card__art{position:relative;aspect-ratio:1;overflow:hidden;background:radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--rar) 30%,#fff),color-mix(in srgb,var(--game) 55%,#111))}.fig-card__art img{position:relative;display:block;width:100%;height:100%;object-fit:cover;animation:figArtIn .9s cubic-bezier(.2,.8,.2,1)}.fig-card--still .fig-card__art img{animation:none}@keyframes figArtIn{0%{transform:scale(1.18);filter:brightness(2.2) saturate(.4)}}.fig-card--locked .fig-card__art img{filter:grayscale(1) brightness(.28) blur(7px);transform:scale(1.06)}.fig-card__rays{position:absolute;left:50%;top:45%;width:180%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:repeating-conic-gradient(rgba(255,255,255,.35) 0deg 8deg,transparent 8deg 22deg);mix-blend-mode:overlay;animation:figRays 14s linear infinite;pointer-events:none;z-index:1}.fig-card--N .fig-card__rays,.fig-card--R .fig-card__rays{opacity:.45}@keyframes figRays{to{transform:translate(-50%,-50%) rotate(360deg)}}.fig-card__shine{position:absolute;inset:-30%;z-index:2;background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.55) 50%,transparent 58%);transform:translate(-100%);animation:figShine 1.2s ease-out .35s forwards;pointer-events:none}.fig-card--SSR .fig-card__shine,.fig-card--SR .fig-card__shine{animation:figShine 1.2s ease-out .35s forwards,figShineLoop 4s ease-in-out 2s infinite}@keyframes figShine{to{transform:translate(100%)}}@keyframes figShineLoop{0%,70%{transform:translate(-100%)}to{transform:translate(100%)}}.fig-card__rarity{position:absolute;left:12px;top:12px;z-index:3;padding:4px 10px;border-radius:999px;background:var(--rar);color:#fff;font-size:12px;font-weight:800;letter-spacing:.5px;box-shadow:0 2px 8px #00000040}.fig-card__new{position:absolute;right:-34px;top:16px;z-index:3;width:120px;padding:4px 0;transform:rotate(40deg);background:linear-gradient(90deg,#ff5f6d,#ffc371);color:#fff;font-size:12px;font-weight:900;letter-spacing:2px;text-align:center;box-shadow:0 2px 8px #00000040}.fig-card__plate{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:40px 18px 14px;display:flex;flex-direction:column;gap:2px;background:linear-gradient(180deg,transparent,rgba(8,10,20,.78));color:#fff}.fig-card__title{font-size:12.5px;font-weight:600;color:color-mix(in srgb,var(--rar) 55%,#fff);letter-spacing:2px}.fig-card__name{font-size:26px;font-weight:800;letter-spacing:1px;line-height:1.15;text-shadow:0 2px 10px rgba(0,0,0,.5);text-wrap:balance}.fig-card__body{padding:14px 18px 18px;display:flex;flex-direction:column;gap:12px}.fig-card__meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.fig-card__game{padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;color:var(--game);background:color-mix(in srgb,var(--game) 14%,transparent)}.fig-card__count{font-size:13px;font-weight:700;color:var(--rar)}.fig-card__intro{margin:0;font-size:14.5px;line-height:1.75;color:var(--text-primary)}.fig-card__intro--locked{color:var(--text-tertiary)}.fig-card__set{padding:12px;border-radius:16px;background:var(--bg-tertiary);display:flex;flex-direction:column;gap:8px}.fig-card__set-head{display:flex;align-items:baseline;justify-content:space-between;font-size:12.5px;color:var(--text-secondary)}.fig-card__set-head b{font-size:16px;color:var(--text-primary);font-variant-numeric:tabular-nums}.fig-card__set-head small{font-size:12px;font-weight:600;color:var(--text-tertiary)}.fig-card__bar{display:block;height:6px;border-radius:3px;background:color-mix(in srgb,var(--game) 14%,transparent);overflow:hidden}.fig-card__bar i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,color-mix(in srgb,var(--game) 70%,#fff),var(--game));transition:width .6s ease}.fig-card__missing{display:flex;align-items:center;gap:6px}.fig-card__ghost{position:relative;width:30px;height:30px;flex:0 0 30px;border-radius:50%;overflow:hidden;background:#222;box-shadow:0 0 0 1.5px color-mix(in srgb,var(--ghost, #8f9bab) 70%,transparent)}.fig-card__ghost--R{--ghost: #3b8be0}.fig-card__ghost--SR{--ghost: #9b5de5}.fig-card__ghost--SSR{--ghost: #f0a020}.fig-card__ghost img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(.35) blur(2.5px)}.fig-card__left{flex:1;min-width:0;margin-left:2px;font-size:12px;line-height:1.35;color:var(--text-tertiary)}.fig-card__ok{width:100%;border:0;border-radius:16px;padding:14px;background:var(--rar);color:#fff;font-size:16px;font-weight:800;cursor:pointer;box-shadow:0 6px 18px color-mix(in srgb,var(--rar) 40%,transparent);transition:transform .12s ease}.fig-card__ok:active{transform:scale(.97)}@media(prefers-reduced-motion:reduce){.fig-card,.fig-card__art img,.fig-card__rays,.fig-card__shine{animation:none!important}}@media(prefers-reduced-motion:reduce){.gacha-reveal__rays,.gacha-crank--ready,.gacha-badge--SSR:after,.gacha-open__capsule--glow{animation:none}}.bottom-nav{position:absolute;left:0;right:0;bottom:0;z-index:50;background:var(--bg-nav);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border-primary);padding-top:8px;padding-left:16px;padding-right:16px;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 6px)}.bottom-nav-spacer{flex:0 0 auto;height:calc(env(safe-area-inset-bottom,0px) + 62px);pointer-events:none}.leaflet-container{background:var(--bg-tertiary)!important;font-family:inherit;position:relative!important;z-index:0!important;isolation:isolate}.leaflet-control-attribution{font-size:9px!important}.photo-pin{background:var(--accent);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px #0000004d}[data-theme=dark] .photo-pin{border-color:#2c2f37}.leaflet-div-icon.thumb-marker-wrap,.leaflet-div-icon.photo-marker-wrap{background:transparent!important;border:none!important}.ql-toolbar.ql-snow{border:none!important;border-bottom:1px solid var(--border-primary)!important;padding:8px 0!important;background:var(--bg-primary)!important;position:sticky;top:env(safe-area-inset-top,0px);z-index:50;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.ql-snow.ql-toolbar button.ql-undo,.ql-snow .ql-toolbar button.ql-undo,.ql-snow.ql-toolbar button.ql-redo,.ql-snow .ql-toolbar button.ql-redo{width:28px!important;height:24px!important}.ql-snow.ql-toolbar button.ql-undo:after{content:"↶";font-size:18px;line-height:1;color:var(--text-tertiary)}.ql-snow.ql-toolbar button.ql-redo:after{content:"↷";font-size:18px;line-height:1;color:var(--text-tertiary)}.ql-snow.ql-toolbar button.ql-undo:hover:after,.ql-snow.ql-toolbar button.ql-redo:hover:after{color:var(--text-primary)}.ql-container.ql-snow{border:none!important;font-family:inherit!important;font-size:16px!important;height:auto!important}.ql-editor{padding:12px 0!important;min-height:200px!important;max-height:none!important;overflow-y:visible!important;line-height:1.8!important;color:var(--text-secondary)!important;background:var(--bg-primary)!important}.ql-editor.ql-blank:before{color:var(--text-muted)!important;font-style:normal!important;left:0!important}.ql-snow .ql-picker{font-size:13px!important}.ql-snow .ql-stroke{stroke:var(--text-tertiary)!important}.ql-snow .ql-fill{fill:var(--text-tertiary)!important}.ql-snow button:hover .ql-stroke{stroke:var(--text-primary)!important}.ql-snow .ql-picker-label{border:none!important;color:var(--text-secondary)!important}.ql-snow .ql-picker-options{background:var(--bg-primary)!important;border-color:var(--border-primary)!important}.rich-content h1{font-size:22px;font-weight:700;margin:14px 0 6px;line-height:1.35;color:var(--text-primary)}.rich-content h2{font-size:18px;font-weight:700;margin:12px 0 5px;line-height:1.4;color:var(--text-primary)}.rich-content h3{font-size:16px;font-weight:600;margin:10px 0 4px;line-height:1.4;color:var(--text-primary)}.rich-content h4{font-size:14px;font-weight:600;margin:8px 0 3px;line-height:1.4;color:var(--text-secondary);letter-spacing:.2px}.rich-content p{margin:4px 0;line-height:1.8}.rich-content ol,.rich-content ul{padding-left:20px;margin:4px 0}.rich-content li{line-height:1.8}.rich-content strong{font-weight:600}.rich-content em{font-style:italic}.rich-content u{text-decoration:underline}.rich-content s{text-decoration:line-through;color:var(--text-muted)}.rich-content a{color:var(--accent-blue);text-decoration:underline}.rich-content img{max-width:100%;height:auto;border-radius:8px;margin:8px 0;display:block}.rich-content blockquote{margin:8px 0;padding:4px 14px;border-left:3px solid var(--border-secondary);color:var(--text-tertiary);font-style:italic}.rich-content pre,.rich-content .ql-syntax{background:var(--code-bg);padding:10px 14px;border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.6;overflow-x:auto;margin:8px 0}.rich-content code{background:var(--code-inline-bg);padding:1px 6px;border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.rich-content .ql-indent-1:not(li){padding-left:3em!important}.rich-content .ql-indent-2:not(li){padding-left:6em!important}.rich-content .ql-indent-3:not(li){padding-left:9em!important}.rich-content .ql-indent-4:not(li){padding-left:12em!important}.rich-content .ql-indent-5:not(li){padding-left:15em!important}.rich-content .ql-indent-6:not(li){padding-left:18em!important}.rich-content .ql-indent-7:not(li){padding-left:21em!important}.rich-content .ql-indent-8:not(li){padding-left:24em!important}.rich-content li.ql-indent-1{margin-left:2em!important;padding-left:0!important}.rich-content li.ql-indent-2{margin-left:4em!important;padding-left:0!important}.rich-content li.ql-indent-3{margin-left:6em!important;padding-left:0!important}.rich-content li.ql-indent-4{margin-left:8em!important;padding-left:0!important}.rich-content li.ql-indent-5{margin-left:10em!important;padding-left:0!important}.rich-content li.ql-indent-6{margin-left:12em!important;padding-left:0!important}.rich-content li.ql-indent-7{margin-left:14em!important;padding-left:0!important}.rich-content li.ql-indent-8{margin-left:16em!important;padding-left:0!important}.rich-content .ql-align-center{text-align:center}.rich-content .ql-align-right{text-align:right}.rich-content .ql-align-justify{text-align:justify}.card-preview img{max-width:100%;max-height:120px;object-fit:cover;border-radius:6px;margin:4px 0}.ql-editor img{max-width:100%;height:auto;border-radius:8px;margin:8px 0;display:block}.ql-editor h1{font-size:22px!important;font-weight:700!important;margin:14px 0 6px!important;line-height:1.35!important}.ql-editor h2{font-size:18px!important;font-weight:700!important;margin:12px 0 5px!important;line-height:1.4!important}.ql-editor h3{font-size:16px!important;font-weight:600!important;margin:10px 0 4px!important;line-height:1.4!important}.ql-editor h4{font-size:14px!important;font-weight:600!important;margin:8px 0 3px!important;line-height:1.4!important}.ql-editor li.ql-indent-1{margin-left:2em!important;padding-left:0!important}.ql-editor li.ql-indent-2{margin-left:4em!important;padding-left:0!important}.ql-editor li.ql-indent-3{margin-left:6em!important;padding-left:0!important}.ql-editor li.ql-indent-4{margin-left:8em!important;padding-left:0!important}.ql-editor li.ql-indent-5{margin-left:10em!important;padding-left:0!important}.ql-editor li.ql-indent-6{margin-left:12em!important;padding-left:0!important}.ql-editor li.ql-indent-7{margin-left:14em!important;padding-left:0!important}.ql-editor li.ql-indent-8{margin-left:16em!important;padding-left:0!important}.cat-pill{display:inline-flex;align-items:center;gap:3px;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:99px;background:var(--cat-bg);color:var(--cat-text);border:1px solid var(--cat-border)}.thumb-marker{width:44px;height:44px;border-radius:50%;overflow:hidden;border:2px solid #fff;box-shadow:0 2px 8px #0000004d;background:var(--skeleton)}.thumb-marker img{width:100%;height:100%;object-fit:cover;display:block}.photo-marker{width:52px;height:52px;border-radius:10px;overflow:hidden;border:3px solid #fff;box-shadow:0 3px 10px #00000059;position:relative;background:var(--skeleton);box-sizing:content-box}.photo-marker img{width:100%;height:100%;object-fit:cover;display:block}.photo-marker.no-photo{display:flex;align-items:center;justify-content:center;background:var(--accent);color:var(--bg-primary);font-size:24px}.photo-marker-badge{position:absolute;top:-6px;right:-6px;background:var(--accent);color:var(--bg-primary);font-size:11px;font-weight:600;min-width:18px;height:18px;padding:0 5px;border-radius:9px;display:flex;align-items:center;justify-content:center;border:2px solid #fff;box-sizing:content-box;line-height:1}.skeleton-box{background:linear-gradient(90deg,var(--skeleton) 25%,var(--border-primary) 50%,var(--skeleton) 75%);background-size:400px 100%;animation:shimmer 1.2s infinite;border-radius:8px}.offline-banner{position:fixed;top:0;left:0;right:0;background:#e74c3c;color:#fff;text-align:center;font-size:12px;padding:4px 0;z-index:10000;animation:fadeIn .3s ease-out}.nav-dot{width:12px;height:2.5px;border-radius:2px;background:var(--fam-teal);margin-top:3px}.search-overlay{position:absolute;inset:0;background:var(--bg-primary);z-index:100;animation:fadeIn .15s ease-out}.more-menu{position:absolute;bottom:100%;right:8px;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:12px;box-shadow:0 -4px 20px #0000001a;padding:8px 0;min-width:140px;animation:fadeIn .15s ease-out;margin-bottom:8px}.more-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:12px 18px;border:none;background:none;cursor:pointer;font-size:14px;color:var(--text-primary);text-align:left}.more-menu button:active{background:var(--bg-tertiary)}.sub-tabs-bar{display:flex;gap:0;margin:0 -24px;padding:0 24px;border-bottom:1px solid var(--border-primary)}.sub-tab-item{padding:10px 0;margin-right:24px;font-size:15px;font-weight:500;color:var(--text-muted);border-bottom:2px solid transparent;cursor:pointer;background:none;border-top:none;border-left:none;border-right:none;transition:color .2s,border-color .2s;letter-spacing:-.01em}.sub-tab-item.active{color:var(--text-primary);border-bottom-color:var(--accent);font-weight:600}.glass-card{background:var(--bg-card);-webkit-backdrop-filter:var(--blur-glass);backdrop-filter:var(--blur-glass);border:.5px solid var(--border-card);border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:transform .2s ease,box-shadow .2s ease}.glass-card:active{transform:scale(.985)}.glass-btn{background:var(--bg-tertiary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:.5px solid var(--border-primary);border-radius:var(--radius-button);transition:transform .15s ease,background .15s ease}.glass-btn:active{transform:scale(.94)}.pill-btn{background:var(--accent);color:var(--bg-primary);border:none;border-radius:var(--radius-button);padding:9px 18px;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:5px;box-shadow:var(--shadow-btn);transition:transform .15s ease,box-shadow .15s ease;letter-spacing:-.01em}.pill-btn:active{transform:scale(.96);box-shadow:0 1px 3px #0f0f121a}.pill-btn-ghost{background:var(--bg-tertiary);color:var(--text-primary);border:.5px solid var(--border-primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-button);padding:7px 14px;font-size:13px;font-weight:500;cursor:pointer;transition:transform .15s ease,background .15s ease;letter-spacing:-.01em}.pill-btn-ghost:active{transform:scale(.96)}.icon-btn{width:36px;height:36px;border-radius:50%;background:var(--bg-tertiary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:.5px solid var(--border-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:transform .15s ease,background .15s ease}.icon-btn:active{transform:scale(.92)}.home-page{background:#e9eef0}[data-theme=dark] .home-page{background:#14171b}.home-add-btn{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#2db198,#3cc4a8);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 18px #2db19866,inset 0 1px #ffffff4d}.home-big-card{border-radius:20px;padding:14px;color:#fff;border:none;cursor:pointer;display:flex;flex-direction:column;min-height:116px;text-align:left;position:relative;overflow:hidden}.home-ghost{position:absolute;top:2px;right:12px;font-size:46px;font-weight:800;color:#ffffff29;letter-spacing:-.04em;line-height:1;pointer-events:none}.home-sm-card{background:var(--bg-card-solid);border:.5px solid var(--border-card);border-radius:16px;padding:0 12px;min-height:53px;display:flex;align-items:center;gap:9px;box-shadow:var(--shadow-card);cursor:pointer;width:100%;text-align:left}.home-sm-disabled{opacity:.5;cursor:default}.home-tile{width:30px;height:30px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}.home-sm-title{font-size:12.5px;font-weight:700;color:var(--text-primary)}.home-stock-card{background:linear-gradient(150deg,#f59a74,#ef8863 55%,#e8764c);box-shadow:inset 0 1px #ffffff47,0 10px 22px -8px #d96a4261}.home-dj-card{background:linear-gradient(150deg,#8b7df0,#7a6de8 55%,#6a5bd8);box-shadow:inset 0 1px #ffffff47,0 10px 22px -8px #6658d452}.home-due-dot{position:absolute;top:10px;right:11px;width:6px;height:6px;border-radius:50%;background:#e05555}.home-chip{background:var(--bg-card-solid);border:.5px solid var(--border-card);border-radius:14px;padding:11px 12px;display:flex;align-items:center;gap:7px;box-shadow:var(--shadow-card);cursor:pointer;color:var(--text-secondary);font-size:12px;font-weight:600;text-align:left}button{transition:transform .15s ease,opacity .15s ease}button:active:not(:disabled){transform:scale(.97)}@keyframes pageFadeIn{0%{opacity:0}to{opacity:1}}.animate-pageFade{animation:pageFadeIn .12s ease-out}h1,h2,h3{letter-spacing:-.02em!important}h1{font-weight:700!important}.bottom-nav{border-top:.5px solid var(--border-primary);box-shadow:var(--shadow-nav)}@keyframes reviewAnswerIn{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.review-answer-card{animation:reviewAnswerIn .35s cubic-bezier(.2,.8,.2,1)}.jasonos-page{padding:calc(env(safe-area-inset-top,20px) + 16px) 20px 32px;min-height:100%;background:radial-gradient(circle at 90% -6%,rgba(122,109,232,.14),transparent 46%),radial-gradient(circle at -8% 30%,rgba(91,149,220,.07),transparent 40%),linear-gradient(180deg,#f4f2fa,#ebebf4)}[data-theme=dark] .jasonos-page{background:radial-gradient(circle at 90% -6%,rgba(122,109,232,.1),transparent 46%),radial-gradient(circle at -8% 30%,rgba(91,149,220,.05),transparent 40%),linear-gradient(180deg,#191b25,#14161c)}.jasonos-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}.jasonos-title{font-size:22px;font-weight:800;color:var(--text-primary);margin:0;line-height:1.2}.jasonos-meta{font-size:11.5px;color:var(--text-tertiary);margin-top:2px}.jasonos-stale{background:var(--fam-honey-tint);color:var(--fam-honey-deep);border:.5px solid rgba(207,143,34,.22);border-radius:12px;padding:8px 12px;font-size:12px;font-weight:600;margin-bottom:12px}.jasonos-empty{text-align:center;padding:70px 20px;color:var(--text-muted);font-size:14px}.jasonos-section{background:var(--bg-card-solid);border:.5px solid var(--border-card);border-radius:var(--radius-card);padding:14px;margin-bottom:12px;box-shadow:var(--shadow-card)}.jasonos-sec-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.jasonos-sec-title{font-size:13.5px;font-weight:800;color:var(--text-primary);letter-spacing:-.01em}.jasonos-sec-meta{font-size:11px;color:var(--text-tertiary);flex-shrink:0}.jasonos-hl{background:var(--fam-violet-tint);color:var(--fam-violet-deep);padding:0 5px;border-radius:5px;font-weight:600}.jasonos-raw{white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.7;color:var(--text-secondary);background:var(--code-bg);border-radius:10px;padding:10px 12px;font-family:inherit;margin:0}.jasonos-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.jasonos-stat{text-align:center;background:var(--fam-violet-tint);border-radius:12px;padding:9px 4px 8px}.jasonos-stat-ico{font-size:15px;line-height:1;margin-bottom:4px}.jasonos-stat-val{font-size:17px;font-weight:800;color:var(--fam-violet-deep);line-height:1.1}.jasonos-stat-unit{font-size:10px;font-weight:600;margin-left:1px}.jasonos-stat-label{font-size:10.5px;color:var(--text-tertiary);margin-top:3px}.jasonos-highlight{margin-top:10px;background:var(--bg-tertiary);border-left:3px solid var(--fam-violet);border-radius:8px;padding:8px 10px;font-size:12.5px;line-height:1.7;color:var(--text-secondary)}.jasonos-summary{font-size:12.5px;color:var(--text-secondary);line-height:1.7;margin:0 0 8px}.jasonos-group{margin-bottom:8px}.jasonos-group:last-child{margin-bottom:0}.jasonos-badge{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12.5px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.jasonos-count{background:var(--fam-violet-tint);color:var(--fam-violet-deep);font-size:11px;font-weight:800;padding:1px 8px;border-radius:99px;flex-shrink:0}.jasonos-file{font-size:12px;color:var(--text-tertiary);line-height:1.7;padding-left:10px;word-break:break-word}.jasonos-day{border:.5px solid var(--border-primary);border-radius:14px;margin-bottom:8px;overflow:hidden;background:var(--bg-secondary)}.jasonos-day:last-of-type{margin-bottom:0}.jasonos-day-head{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;background:none;border:none;cursor:pointer;text-align:left}.jasonos-day-date{font-size:12px;font-weight:800;color:var(--fam-violet-deep);flex-shrink:0}.jasonos-day-title{flex:1;min-width:0;font-size:12.5px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jasonos-day-arrow{font-size:12px;color:var(--text-muted);flex-shrink:0;transition:transform .2s ease}.jasonos-day-arrow.open{transform:rotate(180deg)}.jasonos-day-body{padding:0 12px 10px}.jasonos-line{display:flex;align-items:flex-start;gap:6px;font-size:12.5px;color:var(--text-secondary);line-height:1.7;margin:4px 0;word-break:break-word}.jasonos-line-ico{flex-shrink:0}.jasonos-note{font-size:11px;color:var(--text-muted);margin-top:8px;line-height:1.6}.jasonos-wiki-item{padding:8px 0;border-bottom:.5px solid var(--border-primary)}.jasonos-wiki-item:last-of-type{border-bottom:none;padding-bottom:0}.jasonos-wiki-head{display:flex;align-items:baseline;gap:8px}.jasonos-wiki-title{flex:1;min-width:0;font-size:13px;font-weight:600;color:var(--text-primary);line-height:1.5;word-break:break-word}.jasonos-wiki-date{font-size:11px;color:var(--text-muted);flex-shrink:0}.jasonos-wiki-summary{font-size:12px;color:var(--text-tertiary);line-height:1.6;margin:3px 0 0;word-break:break-word}.jasonos-projs{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.jasonos-proj{display:flex;align-items:baseline;gap:8px;background:var(--bg-tertiary);border:.5px solid var(--border-primary);border-radius:10px;padding:7px 10px}.jasonos-proj-name{font-size:12.5px;font-weight:700;color:var(--fam-violet-deep);flex-shrink:0}.jasonos-proj-note{font-size:12px;color:var(--text-tertiary);line-height:1.5;word-break:break-word}.jasonos-tools{display:flex;flex-wrap:wrap;gap:6px}.jasonos-tool{font-size:11px;font-weight:600;color:var(--tag-text);background:var(--tag-bg);padding:3px 10px;border-radius:99px}.jasonos-tip{margin-top:10px;background:var(--fam-honey-tint);color:var(--fam-honey-deep);border-radius:10px;padding:8px 10px;font-size:12px;line-height:1.6;font-weight:500}.jasonos-todo{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;color:var(--text-secondary);line-height:1.7;padding:5px 0;word-break:break-word}.jasonos-todo-dot{width:7px;height:7px;border-radius:50%;border:1.5px solid var(--fam-violet);flex-shrink:0;margin-top:6px}.jasonos-act{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:.5px solid var(--border-primary)}.jasonos-act:last-child{border-bottom:none}.jasonos-act-main{flex:1;min-width:0}.jasonos-act-text{font-size:12.5px;color:var(--text-primary);line-height:1.6;word-break:break-word}.jasonos-act.handled .jasonos-act-text{color:var(--text-tertiary)}.jasonos-act-meta{display:flex;align-items:center;gap:8px;margin-top:3px;font-size:10.5px;color:var(--text-muted)}.jasonos-act-proj{background:var(--fam-violet-tint);color:var(--fam-violet-deep);font-weight:700;padding:1px 7px;border-radius:99px}.jasonos-act-btns{display:flex;gap:8px;flex-shrink:0}.jasonos-act-btn{width:36px;height:36px;border-radius:12px;border:.5px solid var(--border-primary);background:var(--bg-tertiary);font-size:15px;font-weight:700;color:var(--text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .1s ease}.jasonos-act-btn.done{background:var(--fam-teal-tint);border-color:var(--fam-teal);color:var(--fam-teal-deep)}.jasonos-act-btn:active{transform:scale(.92)}.jasonos-act-fold{margin-top:10px;border-top:.5px solid var(--border-primary);padding-top:2px}.jasonos-act-fold-head{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:36px;padding:4px 2px;background:none;border:none;cursor:pointer;font-size:12px;font-weight:700;color:var(--text-tertiary)}.jasonos-act-undo{flex-shrink:0;min-height:36px;padding:0 12px;border-radius:10px;border:.5px solid var(--border-primary);background:var(--bg-tertiary);font-size:12px;font-weight:600;color:var(--fam-violet-deep);cursor:pointer}.jasonos-act-err{background:var(--fam-honey-tint);color:var(--fam-honey-deep);border-radius:10px;padding:7px 10px;font-size:12px;font-weight:600;margin-bottom:8px}.jasonos-inbox-form{display:flex;gap:8px;margin-bottom:10px}.jasonos-inbox-input{flex:1;min-width:0;height:40px;border-radius:12px;border:.5px solid var(--border-primary);background:var(--bg-tertiary);padding:0 12px;font-size:13px;color:var(--text-primary);outline:none}.jasonos-inbox-input:focus{border-color:var(--fam-violet)}.jasonos-inbox-input::placeholder{color:var(--text-muted)}.jasonos-inbox-submit{flex-shrink:0;height:40px;padding:0 16px;border-radius:12px;border:none;background:var(--fam-violet);color:#fff;font-size:13px;font-weight:700;cursor:pointer}.jasonos-inbox-submit:disabled{opacity:.45;cursor:default}.jasonos-inbox-item{padding:8px 0;border-bottom:.5px solid var(--border-primary)}.jasonos-inbox-item:last-child{border-bottom:none;padding-bottom:0}.jasonos-inbox-text{font-size:12.5px;color:var(--text-primary);line-height:1.6;word-break:break-word}.jasonos-inbox-meta{display:flex;align-items:center;gap:5px;margin-top:3px;font-size:10.5px;color:var(--text-muted)}.jasonos-inbox-dot{width:7px;height:7px;border-radius:50%;background:var(--text-muted);opacity:.5;flex-shrink:0}.jasonos-inbox-dot.synced{background:var(--fam-teal);opacity:1}.jasonos-inbox-time{margin-left:auto}.jasonos-pj{border:.5px solid var(--border-primary);border-radius:14px;margin-bottom:8px;overflow:hidden;background:var(--bg-secondary)}.jasonos-pj:last-of-type{margin-bottom:0}.jasonos-pj-head{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;background:none;border:none;cursor:pointer;text-align:left;font-family:inherit}.jasonos-pj-head:disabled{cursor:default}.jasonos-pj-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.jasonos-pj-title{font-size:13px;font-weight:700;color:var(--text-primary);word-break:break-word}.jasonos-pj-sum{font-size:12px;color:var(--text-secondary);line-height:1.6;word-break:break-word}.jasonos-pj-next{font-size:12px;font-weight:600;color:var(--fam-violet-deep);line-height:1.6;word-break:break-word}.jasonos-pj-body{padding:2px 12px 12px;border-top:.5px solid var(--border-primary)}.jasonos-pj-asof{font-size:11px;color:var(--fam-honey-deep);background:var(--fam-honey-tint);border-radius:8px;padding:4px 8px;margin-top:10px}.jasonos-pj-block{margin-top:10px}.jasonos-pj-label{font-size:11px;font-weight:800;color:var(--text-tertiary);letter-spacing:.04em;margin-bottom:2px}.jasonos-pj-text{font-size:12.5px;color:var(--text-secondary);line-height:1.7;word-break:break-word}:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px;border-radius:4px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.jason-os-home-strip{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;margin-bottom:14px;border-radius:14px;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);border:1px solid rgba(255,255,255,.08);cursor:pointer;min-height:54px;box-sizing:border-box;transition:transform .15s,box-shadow .15s}.jason-os-home-strip:active{transform:scale(.98)}:root.light .jason-os-home-strip{background:linear-gradient(135deg,#e8f0fe,#dbeafe);border:1px solid rgba(0,0,0,.06)}.jason-os-home-left{display:flex;flex-direction:column;gap:2px;min-width:0}.jason-os-home-label{font-size:13px;font-weight:800;color:#60a5fa;letter-spacing:-.01em}:root.light .jason-os-home-label{color:#2563eb}.jason-os-home-date{font-size:10px;color:#ffffff73}:root.light .jason-os-home-date{color:#0006}.jason-os-home-mid{flex:1;margin:0 12px;min-width:0}.jason-os-home-headline{font-size:12px;font-weight:600;color:#ffffffe6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}:root.light .jason-os-home-headline{color:#000000d9}.jason-os-home-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.jason-os-home-badge{font-size:10px;font-weight:700;padding:2px 7px;border-radius:6px;background:#60a5fa33;color:#93c5fd}.jason-os-home-badge.settled{background:#22c55e2e;color:#86efac}.jason-os-home-count{font-size:12px;font-weight:700;color:#fcd34d}.jason-os-home-offline,.jason-os-home-stale{font-size:9px;padding:1px 5px;border-radius:4px;background:#ef444426;color:#fca5a5}.jason-os-home-progress{font-size:9px;color:#fcd34d;font-weight:600}.jason-os-home-arrow{font-size:14px;color:#ffffff59}.jason-os-home-empty{opacity:.5}.jason-os-home-sub{font-size:11px;color:#fff6}.jason-os-page{position:fixed;inset:0;z-index:100;background:var(--bg-primary, #0a0a0a);display:flex;flex-direction:column}.jason-os-header{flex-shrink:0}.jason-os-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0}.jason-os-topbar{display:flex;align-items:center;padding:calc(env(safe-area-inset-top,20px) + 10px) 16px 10px;gap:10px;border-bottom:.5px solid rgba(255,255,255,.08)}:root.light .jason-os-topbar{border-bottom-color:#0000000f}.jason-os-back{background:none;border:none;font-size:15px;color:var(--text-secondary, #888);padding:4px 8px;cursor:pointer}.jason-os-title{flex:1;font-size:17px;font-weight:800;color:var(--text-primary, #fff);margin:0;letter-spacing:-.02em}.jason-os-sync-time{font-size:11px;color:var(--text-tertiary, #666)}.jason-os-offline-badge{font-size:10px;padding:2px 6px;border-radius:4px;background:#ef44441f;color:#fca5a5}.jason-os-day-bar{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:10px 16px;border-bottom:.5px solid rgba(255,255,255,.08);scrollbar-width:none;-ms-overflow-style:none}.jason-os-day-bar::-webkit-scrollbar{display:none}.jason-os-day-pill{flex:0 0 auto;background:#ffffff0a;border:.5px solid rgba(255,255,255,.08);padding:5px 14px;border-radius:20px;font-size:12px;font-weight:600;color:var(--text-tertiary, #888);cursor:pointer;white-space:nowrap;transition:all .15s}.jason-os-day-pill.active{background:#60a5fa33;border-color:#60a5fa;color:#93c5fd}:root.light .jason-os-day-pill{background:#00000008;border-color:#00000014;color:#666}:root.light .jason-os-day-pill.active{background:#2563eb1a;border-color:#2563eb;color:#2563eb}.jason-os-loading,.jason-os-error{padding:40px 16px;text-align:center;color:var(--text-tertiary, #666);font-size:14px}.jason-os-error{color:#fca5a5}.jason-os-core{padding:16px}.jason-os-core-title{font-size:14px;font-weight:700;color:var(--text-secondary, #aaa);margin:0 0 12px}.jason-os-core-item{padding:12px 14px;border-radius:12px;background:#ffffff0a;border:.5px solid rgba(255,255,255,.06);margin-bottom:8px}:root.light .jason-os-core-item{background:#00000005;border-color:#0000000f}.jason-os-core-head{font-size:14px;font-weight:700;color:var(--text-primary, #fff);margin-bottom:4px}.jason-os-core-summary{font-size:12px;color:var(--text-secondary, #999);line-height:1.5}.jason-os-core-sources{display:flex;gap:4px;margin-top:6px}.jason-os-source-tag{font-size:10px;padding:1px 6px;border-radius:4px;background:#60a5fa1f;color:#93c5fd}.jason-os-sources{padding:0 16px 32px;display:flex;flex-direction:column;gap:12px}.jason-os-source-card{padding:14px;border-radius:14px;border:.5px solid rgba(255,255,255,.08);background:#ffffff05}.jason-os-source-card.empty{opacity:.5;padding:10px 14px}:root.light .jason-os-source-card{border-color:#0000000f;background:#00000003}.jason-os-source-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.jason-os-source-name{font-size:14px;font-weight:700;color:var(--text-primary, #fff)}.jason-os-source-status{font-size:10px;font-weight:600;padding:2px 7px;border-radius:6px;background:#ffffff14;color:var(--text-tertiary, #777)}.jason-os-source-status.complete{background:#22c55e26;color:#86efac}.jason-os-source-status.partial{background:#fbbf2426;color:#fcd34d}.jason-os-source-status.failed{background:#ef444426;color:#fca5a5}.jason-os-source-status.pending{background:#94a3b81f;color:#94a3b8}.jason-os-source-time{font-size:10px;color:var(--text-tertiary, #666);margin-bottom:4px}.jason-os-source-count{font-size:11px;color:var(--text-tertiary, #666);margin-bottom:8px;display:inline-block}.jason-os-source-empty{font-size:12px;color:var(--text-tertiary, #666);padding:4px 0}.jason-os-value-group{margin-bottom:10px}.jason-os-value-label{font-size:11px;font-weight:700;color:var(--text-tertiary, #777);text-transform:none;margin-bottom:6px}.jason-os-value-item{padding:8px 10px;border-radius:8px;background:#ffffff08;margin-bottom:6px;transition:background .15s}.jason-os-value-item:active{background:#ffffff0f}:root.light .jason-os-value-item{background:#00000005}:root.light .jason-os-value-item:active{background:#0000000a}.jason-os-item-title{font-size:12px;font-weight:600;color:var(--text-primary, #ddd);margin-bottom:2px}.jason-os-item-summary{font-size:11px;color:var(--text-secondary, #888);line-height:1.5}.jason-os-item-project{font-size:9px;padding:1px 5px;border-radius:3px;background:#60a5fa1a;color:#93c5fd;margin-top:4px;display:inline-block}.jason-os-obsidian{display:flex;flex-direction:column;gap:10px}.jason-os-obsidian-callout{border-radius:12px;border:.5px solid rgba(255,255,255,.08);background:#ffffff06;overflow:hidden}:root.light .jason-os-obsidian-callout{border-color:#0000000f;background:#00000003}.jason-os-obsidian-callout-title{font-size:13px;font-weight:700;color:var(--text-primary, #e0e0e0);padding:10px 14px 6px;letter-spacing:-.01em}.jason-os-obsidian-callout-body{padding:0 14px 10px}.jason-os-obsidian-bullet{font-size:12px;color:var(--text-secondary, #aaa);line-height:1.6;padding-left:10px;position:relative}.jason-os-obsidian-bullet:before{content:"•";position:absolute;left:0;color:#60a5fa}.jason-os-obsidian-plain{font-size:12px;color:var(--text-secondary, #999);line-height:1.6}.jason-os-obsidian-spacer{height:4px}.jason-os-obsidian-text{font-size:12px;color:var(--text-tertiary, #777);padding:4px 0;text-align:center}.jason-os-obsidian-num{font-size:12px;color:var(--text-secondary, #aaa);line-height:1.6;padding-left:10px}.jason-os-obsidian-sub{font-size:11px;font-weight:700;color:var(--text-primary, #ccc);padding:6px 0 2px}.nt-fp{position:relative;height:188px;border-radius:18px;overflow:hidden;margin:12px 0 4px;cursor:pointer;background:linear-gradient(180deg,#e4edf1,#d6e3e8);border:1px solid var(--border-card);box-shadow:var(--shadow-card);isolation:isolate;transition:transform .12s ease}.nt-fp:active{transform:scale(.99)}.nt-fp-bg{position:absolute;inset:0;width:100%;height:100%}.nt-fp-land{fill:#e8efe2}.nt-fp-land2{fill:#dde8d6}.nt-fp-grid{stroke:#0f0f120d;stroke-width:1}.nt-fp-route{fill:none;stroke:#0f0f12;stroke-width:1.5;stroke-dasharray:3 5;opacity:.45}.nt-fp-dot{position:absolute;width:42px;height:42px;transform:translate(-50%,-50%);border-radius:12px;border:2.5px solid #fff;background:#b9c7cf;box-shadow:0 3px 10px #0f0f1238}.nt-fp-dot img{width:100%;height:100%;object-fit:cover;display:block;border-radius:9.5px}.nt-fp-dot b{position:absolute;right:-8px;top:-8px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:#0f0f12;color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:1.5px solid #fff}.nt-fp-dot.is-last{width:50px;height:50px;border-radius:14px;box-shadow:0 0 0 4px #0f0f1214,0 4px 12px #0f0f1240}.nt-fp-dot.is-last img{border-radius:11.5px}.nt-fp-head{position:absolute;left:0;right:0;top:0;padding:13px 14px 26px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;background:linear-gradient(180deg,#e4edf1f2 40%,#e4edf100)}.nt-fp-title{margin:0;font-size:16px;font-weight:700;color:#0f0f12}.nt-fp-sub{margin:2px 0 0;font-size:12px;color:#5d6470}.nt-fp-go{flex-shrink:0;font-size:12px;font-weight:600;color:#fff;background:#0f0f12;border-radius:99px;padding:5px 12px}[data-theme=dark] .nt-fp{background:linear-gradient(180deg,#1f2a30,#1a2328)}[data-theme=dark] .nt-fp-land{fill:#24302a}[data-theme=dark] .nt-fp-land2{fill:#283529}[data-theme=dark] .nt-fp-grid{stroke:#ffffff0d}[data-theme=dark] .nt-fp-route{stroke:#fff;opacity:.4}[data-theme=dark] .nt-fp-dot,[data-theme=dark] .nt-fp-dot b{border-color:#2a2d36}[data-theme=dark] .nt-fp-head{background:linear-gradient(180deg,#1f2a30f2 40%,#1f2a3000)}[data-theme=dark] .nt-fp-title{color:#f0f1f3}[data-theme=dark] .nt-fp-sub{color:#a5abb6}[data-theme=dark] .nt-fp-go{background:#f0f1f3;color:#15171c}.nt-chips{display:flex;gap:3px;padding:3px;margin:0 0 6px;border-radius:14px;background:var(--accent-light)}.nt-chip{position:relative;flex:1 1 0;min-width:0;border:none;cursor:pointer;padding:6px 0 5px;border-radius:11px;background:transparent;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;gap:1px;line-height:1.15;transition:background .15s,color .15s}.nt-chip span{font-size:13px;font-weight:500;white-space:nowrap}.nt-chip small{font-size:10px;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.nt-chip.on{background:var(--accent);color:var(--bg-primary);box-shadow:0 1px 4px #0f0f121f}.nt-chip.on span{font-weight:700}.nt-chip.on small{color:inherit;opacity:.7}.nt-chip-gap{margin-left:6px}.nt-chip-dot{position:absolute;right:3px;top:3px;width:6px;height:6px;border-radius:50%;background:#e74c3c}.nt-month{font-size:12px;font-weight:700;color:var(--text-tertiary);letter-spacing:.5px;margin:16px 0 8px}.nt-card{border-radius:14px;padding:12px 14px;margin-bottom:10px;cursor:pointer;background:var(--bg-card);border:1px solid var(--border-card);box-shadow:var(--shadow-card);transition:transform .12s ease}.nt-card:active{transform:scale(.99)}.nt-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;font-weight:600;color:var(--text-tertiary);margin-bottom:5px}.nt-cat{font-size:10px;font-weight:700;letter-spacing:.3px}.nt-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.nt-title{font-size:15px;font-weight:600;color:var(--text-primary);margin:0 0 4px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.nt-preview{font-size:13px;color:var(--text-tertiary);line-height:1.55;margin:0}.nt-oneline{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nt-mood{flex-shrink:0;font-size:11px;font-weight:600;color:var(--mood-text)}.nt-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:8px}.nt-geo{font-size:11px;color:var(--text-tertiary);margin:7px 0 0}.nt-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.nt-tags span{font-size:11px;font-weight:500;color:var(--tag-text);background:var(--tag-bg);padding:1px 8px;border-radius:99px}.nt-c-log{color:var(--text-primary)}.nt-c-movie{color:#8a3b2a}.nt-bg-movie{background:#8a3b2a}.nt-c-study{color:#1f5d5a}.nt-bg-study{background:#1f5d5a}.nt-c-work{color:#7a3d18}.nt-bg-work{background:#7a3d18}.nt-c-en{color:#454a55}.nt-bg-en{background:#2a2d36}.nt-bg-log{background:#0f0f12}[data-theme=dark] .nt-c-movie{color:#e3998a}[data-theme=dark] .nt-c-study{color:#7cc7c0}[data-theme=dark] .nt-c-work{color:#e5a57c}[data-theme=dark] .nt-c-en{color:#b9bfcc}[data-theme=dark] .nt-bg-log{background:#3a3d46}[data-theme=dark] .nt-bg-en{background:#4a4f5c}.nt-movie{padding:0;overflow:hidden;background:#fbf6f3;border-color:#8a3b2a1f}[data-theme=dark] .nt-movie{background:#e3998a12;border-color:#e3998a1f}.nt-still{position:relative;aspect-ratio:2.35 / 1;background:linear-gradient(160deg,#3a3f4a,#11131a);overflow:hidden}.nt-still img{object-fit:cover}.nt-still-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:28px;padding-bottom:18px}.nt-still-ov{position:absolute;left:0;right:0;bottom:0;padding:22px 13px 9px;background:linear-gradient(180deg,#0000,#000000ad);display:flex;align-items:center;gap:8px}.nt-still-ov h3{margin:0;font-size:16px;font-weight:700;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;text-shadow:0 1px 3px rgba(0,0,0,.4)}.nt-still-tag{flex-shrink:0;font-size:10px;font-weight:700;color:#fff;background:#8a3b2a;border-radius:4px;padding:2px 6px}.nt-movie-body{padding:9px 13px 11px}.nt-doc{display:flex;gap:10px;align-items:stretch}.nt-bar{width:3px;border-radius:2px;flex-shrink:0}.nt-doc-study{background:#fdfaf3;border-color:#e4d4b459}.nt-doc-study .nt-bar{background:#1f5d5a}.nt-doc-work{background:#f5f8fc;border-color:#c8d7e880}.nt-doc-work .nt-bar{background:#7a3d18}.nt-doc-en{background:#f5f7f4;border-color:#c8d2c866}.nt-doc-en .nt-bar{background:#2a2d36}[data-theme=dark] .nt-doc-study{background:#7cc7c00f;border-color:#7cc7c01a}[data-theme=dark] .nt-doc-study .nt-bar{background:#7cc7c0}[data-theme=dark] .nt-doc-work{background:#e5a57c0f;border-color:#e5a57c1a}[data-theme=dark] .nt-doc-work .nt-bar{background:#e5a57c}[data-theme=dark] .nt-doc-en{background:#ffffff0a;border-color:#ffffff12}[data-theme=dark] .nt-doc-en .nt-bar{background:#b9bfcc}.nt-review{width:100%;display:flex;align-items:center;justify-content:space-between;margin:10px 0 2px;padding:12px 15px;border-radius:14px;cursor:pointer;background:var(--bg-secondary);border:1px solid var(--border-secondary);color:var(--text-primary)}.nt-review.is-due{border:1.5px solid var(--text-primary);background:var(--cat-bg)}.nt-review b{font-size:14px;display:flex;align-items:center;gap:6px}.nt-review small{display:block;font-size:11px;color:var(--text-tertiary);margin-top:2px}.nt-sheet-mask{position:absolute;inset:0;z-index:300;background:#0f0f1261;display:flex;align-items:flex-end;animation:ntFade .18s ease}.nt-sheet{width:100%;background:var(--bg-primary);border-radius:22px 22px 0 0;padding:10px 18px calc(env(safe-area-inset-bottom,0px) + 22px);animation:ntUp .22s cubic-bezier(.2,.8,.2,1)}.nt-sheet-grab{width:36px;height:4px;border-radius:2px;background:var(--border-secondary);margin:0 auto 14px}.nt-sheet-h{font-size:12px;font-weight:600;color:var(--text-tertiary);letter-spacing:.5px;margin:14px 0 8px}.nt-sheet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.nt-opt{display:flex;flex-direction:column;align-items:center;gap:2px;padding:13px 6px 11px;border-radius:14px;border:1px solid var(--border-card);background:var(--bg-card-solid);box-shadow:var(--shadow-card);cursor:pointer}.nt-opt.is-default{outline:2px solid var(--text-primary)}.nt-opt-ic{width:36px;height:36px;border-radius:11px;color:#fff;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:5px}.nt-opt-l{font-size:13px;font-weight:600;color:var(--text-primary)}.nt-opt-s{font-size:10px;color:var(--text-tertiary)}.nt-sheet-note{font-size:11px;line-height:1.6;color:var(--text-tertiary);background:var(--accent-light);border-radius:10px;padding:9px 11px;margin:16px 0 0}@keyframes ntFade{0%{opacity:0}to{opacity:1}}@keyframes ntUp{0%{transform:translateY(40px);opacity:.6}to{transform:none;opacity:1}}.asset-hero{--hero-fg: #1d2433;--hero-sub: #6b7385;--hero-accent: #3b6fd8;--hero-accent-bg: rgba(59,111,216,.1);--hero-good: #149079;--hero-bad: #d2453b;--hero-good-bg: rgba(47,184,156,.13);--hero-bad-bg: rgba(231,76,60,.11);--hero-up: #d2453b;--hero-up-bg: rgba(231,76,60,.1);--hero-down: #149079;--hero-down-bg: rgba(47,184,156,.12);--hero-track: rgba(29,36,51,.07);--hero-panel: rgba(255,255,255,.62);--hero-marker: #1d2433;--hero-marker-fg: #fff;--hero-glow: radial-gradient(circle, rgba(139,124,240,.2), transparent 70%);background:linear-gradient(150deg,#eef4ff,#f5f1ff 52%,#fff4ea);border:1px solid rgba(91,149,220,.16);box-shadow:0 6px 24px #3c508c1a;color:var(--hero-fg)}[data-theme=dark] .asset-hero{--hero-fg: #f0f1f3;--hero-sub: #a3a8b4;--hero-accent: #8fb6f0;--hero-accent-bg: rgba(143,182,240,.14);--hero-good: #5fd7bd;--hero-bad: #ff9d8f;--hero-good-bg: rgba(47,184,156,.16);--hero-bad-bg: rgba(231,76,60,.18);--hero-up: #ff9d8f;--hero-up-bg: rgba(231,76,60,.18);--hero-down: #5fd7bd;--hero-down-bg: rgba(47,184,156,.16);--hero-track: rgba(255,255,255,.08);--hero-panel: rgba(255,255,255,.05);--hero-marker: #f0f1f3;--hero-marker-fg: #15171c;--hero-glow: radial-gradient(circle, rgba(139,124,240,.22), transparent 70%);background:linear-gradient(150deg,#5b95dc29,#8b7cf01f 52%,#f5a62314);border:1px solid rgba(255,255,255,.08);box-shadow:0 6px 24px #00000040}.np-gallery{margin:10px 0 9px;min-width:0}.np-photo-row{position:relative;padding-right:30px;min-height:0}.np-primary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;align-items:start}.np-photo{display:block;position:relative;padding:0;width:100%;aspect-ratio:1;border:0;border-radius:8px;overflow:hidden;background:var(--skeleton);cursor:pointer}.np-photo img{display:block;width:100%;height:100%;object-fit:cover}.np-extra{position:absolute;right:0;top:0;width:25px;height:100%;max-height:81px;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:3px}.np-photo-tiny{border-radius:4px;height:100%;max-height:25px}.np-photo-tiny span{position:absolute;inset:0;display:grid;place-items:center;background:#15223699;color:#fff;font-size:9px;font-weight:700}.np-photo:focus-visible,.np-route-open:focus-visible{outline:2px solid var(--nh-color,var(--accent));outline-offset:2px}.np-route{margin:9px 0 11px;border:1px solid var(--border-primary);border-radius:10px;overflow:hidden;background:var(--bg-card)}.np-route-preview{position:relative;height:112px;isolation:isolate}.np-route-open{position:absolute;inset:0;width:100%;border:0;background:transparent;cursor:pointer;z-index:3}.np-route-open span{position:absolute;right:7px;bottom:7px;border-radius:5px;padding:4px 6px;background:var(--bg-card-solid);color:var(--text-secondary);font-size:9px;box-shadow:0 1px 5px #0001}.np-map{position:relative;width:100%;height:100%;overflow:hidden;background:color-mix(in srgb,var(--nh-tint,var(--fam-teal-tint)) 65%,var(--bg-card-solid));isolation:isolate}.np-map>.np-map-layer{position:absolute;inset:0;width:100%;height:100%;visibility:hidden;z-index:1}.np-map.is-ready .np-map-layer{visibility:visible}.np-map-fallback{position:absolute;inset:0;width:100%;height:100%;color:var(--nh-color,var(--fam-teal-deep))}.np-map-fallback circle{fill:var(--bg-card-solid);stroke:currentColor;stroke-width:2}.np-map-fallback text{fill:currentColor;stroke:none;font-size:9px;font-weight:700}.np-map-grid{fill:none;stroke:currentColor;opacity:.08}.np-map-land{fill:none;stroke:currentColor;stroke-width:16;opacity:.05}.np-map-line{fill:none;stroke:currentColor;stroke-width:2;stroke-dasharray:4 4;opacity:.8}.np-map-status{position:absolute;left:8px;bottom:7px;font-size:8px;color:var(--text-tertiary)}.np-map-pin span{display:grid;place-items:center;width:22px;height:22px;border:2px solid #fff;border-radius:50%;box-sizing:border-box;background:var(--nh-color,var(--fam-teal-deep));color:#fff;font-size:10px;font-weight:700;box-shadow:0 1px 5px #0003}.np-map .leaflet-control-attribution{font-size:7px;background:var(--bg-card-solid);color:var(--text-tertiary)}.np-map-dialog{position:absolute;inset:0;z-index:2200;display:flex;flex-direction:column;background:var(--bg-body-solid);color:var(--text-primary);isolation:isolate}.np-map-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(env(safe-area-inset-top,0px) + 16px) 18px 14px;border-bottom:1px solid var(--border-primary)}.np-map-dialog strong{font-size:17px}.np-map-dialog small{display:block;margin-top:4px;color:var(--text-tertiary);font-size:11px}.np-map-dialog button{border:0;background:var(--bg-tertiary);color:var(--text-primary);padding:10px 16px;border-radius:8px;font-size:13px;cursor:pointer}.np-map-dialog>.np-map{flex:1;min-height:0}.np-map-interactive .np-map-status{font-size:11px;left:14px;bottom:14px}.np-timeline-summary{font-size:13px;line-height:1.75;color:var(--text-secondary);margin:9px 0 6px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere}@media(max-width:350px){.np-photo-row{padding-right:25px}.np-extra{width:21px;gap:2px}.np-primary{gap:4px}}.nh-tone-all{--nh-color:var(--text-primary);--nh-tint:var(--accent-light);--nh-solid:#253047}.nh-tone-log{--nh-color:var(--fam-honey-deep);--nh-tint:var(--fam-honey-tint);--nh-solid:#895a14}.nh-tone-movie{--nh-color:var(--fam-coral-deep);--nh-tint:var(--fam-coral-tint);--nh-solid:#a6452b}.nh-tone-study{--nh-color:var(--fam-teal-deep);--nh-tint:var(--fam-teal-tint);--nh-solid:#166d5d}.nh-tone-work{--nh-color:var(--fam-blue-deep);--nh-tint:var(--fam-blue-tint);--nh-solid:#315f9a}.nh-tone-en{--nh-color:var(--fam-violet-deep);--nh-tint:var(--fam-violet-tint);--nh-solid:#6050b5}.nf-page{padding:calc(env(safe-area-inset-top,20px) + 20px) 24px 32px}.nf-header,.nf-heading{display:flex;align-items:center}.nf-header{justify-content:space-between;margin-bottom:14px}.nf-heading{gap:10px}.nf-heading h1{font-size:22px;font-weight:600;letter-spacing:.5px;color:var(--text-primary)}.nf-page .nf-refresh,.nf-page .nf-search-toggle{width:32px;height:32px}.nf-refresh{font-size:18px}.nf-refresh.is-refreshing{animation:spin .8s linear infinite}.nf-search-toggle.is-active{background:var(--accent-light)}.nf-page button,.nf-page input{font-family:inherit}.nf-page button:focus-visible,.nf-page a:focus-visible{outline:2px solid var(--accent-blue);outline-offset:3px}.nf-page button:disabled{opacity:.5;cursor:wait}.nf-context{display:flex;justify-content:space-between;gap:10px;margin:12px 0 4px;color:var(--text-tertiary);font-size:11px;line-height:1.5}.nf-context>:last-child{flex-shrink:0}.nf-search{display:flex;align-items:center;gap:8px;margin-top:12px;padding:0 12px;min-height:44px;border:1px solid var(--input-border);border-radius:12px;background:var(--input-bg);color:var(--text-tertiary)}.nf-search:focus-within{border-color:var(--accent-blue)}.nf-search input{flex:1;min-width:0;width:100%;padding:11px 0;border:none;outline:none;background:transparent;color:var(--text-primary);font-size:16px}.nf-search input::placeholder{font-size:13px;color:var(--text-tertiary)}.nf-search input::-webkit-search-cancel-button{display:none}.nf-clear{display:flex;justify-content:center;align-items:center;border:none;background:transparent;color:var(--text-tertiary);width:28px;height:36px;flex-shrink:0;cursor:pointer}.nf-feed{min-height:60vh}.nf-manage{display:inline-flex;align-items:center;gap:4px;padding:8px 10px;border:1px solid var(--border-secondary);border-radius:99px;color:var(--fam-teal-deep);background:var(--fam-teal-tint);font-size:11px;cursor:pointer}.nf-personal-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px}.nf-personal-tools>span{color:var(--text-tertiary);font-size:10px;line-height:1.5}.nf-day{display:flex;align-items:center;gap:9px;margin:16px 0 9px}.nf-day h2{font-size:12px;font-weight:600;color:var(--text-secondary);letter-spacing:.3px}.nf-day:after{content:"";height:1px;background:var(--border-secondary);flex:1}.nf-day>span{font-size:10px;color:var(--text-tertiary);order:1;font-variant-numeric:tabular-nums}.nf-card{--nf-color: var(--fam-coral-deep);--nf-tint: var(--fam-coral-tint);--nf-border: rgba(217,106,66,.2);--nf-wash: #fff5ed;--nf-wash-end: #fce5d9;padding:13px 15px 4px;margin-bottom:12px;border:1px solid var(--nf-border);border-radius:18px;background:radial-gradient(ellipse at 100% 0%,var(--nf-wash-end),transparent 75%),var(--nf-wash);box-shadow:0 3px 12px #0f0f120a,inset 0 1px #ffffff80;overflow-wrap:anywhere;overflow:hidden}.nf-violet{--nf-color: var(--fam-violet-deep);--nf-tint: var(--fam-violet-tint);--nf-border: rgba(102,88,212,.2);--nf-wash: #f6f2ff;--nf-wash-end: #e7dffb}.nf-blue{--nf-color: var(--fam-blue-deep);--nf-tint: var(--fam-blue-tint);--nf-border: rgba(63,122,196,.2);--nf-wash: #f0f7ff;--nf-wash-end: #dceafd}.nf-teal{--nf-color: var(--fam-teal-deep);--nf-tint: var(--fam-teal-tint);--nf-border: rgba(30,143,122,.2);--nf-wash: #edfaf4;--nf-wash-end: #d6f2e8}[data-theme=dark] .nf-card{--nf-wash: #2b211f;--nf-wash-end: #422b23;--nf-border: rgba(240,155,120,.22);box-shadow:0 3px 12px #0000001f,inset 0 1px #ffffff08}[data-theme=dark] .nf-violet{--nf-wash: #252236;--nf-wash-end: #393053;--nf-border: rgba(169,158,242,.22)}[data-theme=dark] .nf-blue{--nf-wash: #1e2938;--nf-wash-end: #243d59;--nf-border: rgba(133,178,232,.22)}[data-theme=dark] .nf-teal{--nf-wash: #1c2d2a;--nf-wash-end: #21463c;--nf-border: rgba(76,199,174,.22)}.nf-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;min-height:22px}.nf-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:6px;background:var(--nf-color);color:#fff;font-size:10px;font-weight:600;line-height:1.5}[data-theme=dark] .nf-badge{background:var(--nf-tint);color:var(--nf-color);border:1px solid var(--nf-border)}.nf-badge i{width:4px;height:4px;background:currentColor;border-radius:50%}.nf-score{display:flex;align-items:baseline;gap:2px;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.nf-score.is-high{color:var(--nf-color)}.nf-score small{font-size:9px;font-weight:400;color:var(--text-tertiary)}.nf-unscored{font-size:10px;color:var(--text-tertiary)}.nf-title{color:var(--text-primary);font-size:15px;font-weight:600;line-height:1.5;margin:0 0 6px}.nf-title a{color:inherit;text-decoration:none}.nf-title a:hover{color:var(--nf-color)}.nf-story{display:flex;align-items:flex-start;gap:12px}.nf-copy{flex:1;min-width:0}.nf-cover{position:relative;display:block;flex:0 0 90px;width:90px;height:90px;border-radius:12px;overflow:hidden;background:var(--nf-tint);isolation:isolate}.nf-cover img{width:100%;height:100%;display:block;object-fit:cover;opacity:0;transition:opacity .2s ease,transform .25s ease}.nf-cover.is-loaded img{opacity:1}.nf-cover.is-video{width:calc(100% + 30px);height:auto;aspect-ratio:16 / 9;margin:-13px -15px 12px;border-radius:0}.nf-cover.is-video:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#0000006b);pointer-events:none}.nf-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:#0f0f1247;color:#fff;font-size:16px;text-indent:3px;backdrop-filter:blur(6px);z-index:1}.nf-video-caption{position:absolute;bottom:10px;right:12px;color:#fff;font-size:10px;font-weight:500;z-index:1}.nf-story+.nf-meta{margin-top:2px}.nf-card.is-expanded .nf-story{flex-wrap:wrap}.nf-card.is-expanded .nf-story>.nf-cover{flex-basis:100%;width:100%;height:auto;aspect-ratio:16 / 9;margin-bottom:10px}.nf-card.is-expanded .nf-copy{flex-basis:100%}@media(hover:hover){.nf-cover:hover img{transform:scale(1.04)}}.nf-summary{color:var(--text-secondary);font-size:13px;line-height:1.65;margin:0 0 9px;white-space:pre-wrap}.nf-card:not(.is-expanded) .nf-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.nf-card.is-compact:not(.is-expanded) .nf-summary{-webkit-line-clamp:2}.nf-card:not(.is-expanded) .nf-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.nf-meta{display:flex;align-items:baseline;gap:12px;font-size:10px;color:var(--text-tertiary);margin-bottom:2px}.nf-source{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.nf-meta time{flex-shrink:0;font-variant-numeric:tabular-nums}.nf-card-actions{display:flex;align-items:center;gap:14px;min-height:36px}.nf-text-btn,.nf-original{display:inline-flex;align-items:center;gap:5px;padding:8px 0;min-height:36px;font-size:11px;line-height:20px}.nf-text-btn{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer}.nf-text-btn>span{font-size:13px}.nf-original{margin-left:auto;color:var(--nf-color);font-weight:500;text-decoration:none;flex-shrink:0}.nf-original>span{font-size:13px}.nf-reason{color:var(--text-secondary);background:var(--nf-tint);padding:9px 10px;border-radius:9px;font-size:11px;line-height:1.7;margin-top:10px}.nf-reason>span{display:block;color:var(--nf-color);font-weight:600;margin-bottom:2px}.nf-delete{color:var(--fam-coral-deep)}.nf-empty{text-align:center;padding:45px 12px;color:var(--text-tertiary)}.nf-empty-icon{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:18px;margin:0 auto 16px;background:var(--accent-light)}.nf-empty h2{font-size:15px;font-weight:600;color:var(--text-secondary)}.nf-empty p{font-size:12px;line-height:1.8;margin:8px 0 18px}.nf-empty .pill-btn{margin:0 auto}.nf-end{text-align:center;font-size:11px;color:var(--text-tertiary);padding:17px 0 0}.nf-rose{--nf-color: #b94f80;--nf-tint: #fbeaf1;--nf-border: rgba(185,79,128,.18);--nf-wash: #fff2f6;--nf-wash-end: #f8e3ed}.nf-red{--nf-color: #cf514f;--nf-tint: #fdeae7;--nf-border: rgba(207,81,79,.18);--nf-wash: #fff1ed;--nf-wash-end: #fadfd9}[data-theme=dark] .nf-rose{--nf-color: #e896bc;--nf-tint: #3c2632;--nf-wash: #2e222c;--nf-wash-end: #432938;--nf-border: rgba(232,150,188,.2)}[data-theme=dark] .nf-red{--nf-color: #ef9990;--nf-tint: #422b2b;--nf-wash: #302223;--nf-wash-end: #472b2c;--nf-border: rgba(239,153,144,.2)}.nf-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:0;margin:0 0 15px;border:0;border-radius:0;background:none;box-shadow:none}.nf-nav-tab{--nf-nav-ink: #293b52;--nf-nav-active: #293b52;--nf-nav-active-text: #fff;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:60px;padding:2px 0 5px;border:0;border-radius:0;background:transparent;color:var(--text-secondary);cursor:pointer}.nf-nav-ai{--nf-nav-ink: #aa512f;--nf-nav-active: #aa512f}.nf-nav-invest{--nf-nav-ink: #315f9a;--nf-nav-active: #315f9a}.nf-nav-personal{--nf-nav-ink: #a94c58;--nf-nav-active: #a94c58}.nf-nav-tab:not(:last-child):after{content:"";position:absolute;right:-4px;top:18px;width:1px;height:26px;background:var(--border-primary)}.nf-nav-label{display:inline-block;padding:3px 7px;border-radius:7px;font-size:13.5px;font-weight:600;line-height:20px;white-space:nowrap;transition:background .16s,color .16s}.nf-nav-tab small{display:flex;align-items:baseline;justify-content:center;gap:4px;color:var(--text-tertiary);font-size:9.5px;line-height:17px;white-space:nowrap}.nf-nav-tab small b{color:var(--text-tertiary);font-size:12px;font-weight:700;line-height:17px;font-variant-numeric:tabular-nums}.nf-nav-tab .has-updates b{color:var(--nf-nav-ink)}.nf-nav-tab.on .nf-nav-label{background:var(--nf-nav-active);color:var(--nf-nav-active-text);font-weight:700}.nf-page .nf-nav-tab:focus-visible{outline:2px solid var(--nf-nav-ink);outline-offset:2px;border-radius:7px}@media(hover:hover){.nf-nav-tab:not(.on):hover .nf-nav-label{color:var(--nf-nav-ink)}}[data-theme=dark] .nf-nav-tab{--nf-nav-ink: #d3ddec;--nf-nav-active: #d3ddec;--nf-nav-active-text: #1b2533}[data-theme=dark] .nf-nav-ai{--nf-nav-ink: #efb293;--nf-nav-active: #efb293}[data-theme=dark] .nf-nav-invest{--nf-nav-ink: #a9c8ef;--nf-nav-active: #a9c8ef}[data-theme=dark] .nf-nav-personal{--nf-nav-ink: #ebb1ba;--nf-nav-active: #ebb1ba}.nf-timeline{position:relative;padding-left:26px}.nf-timeline:has(.nf-timeline-row):before{content:"";position:absolute;top:12px;bottom:38px;left:5px;width:1.5px;background:var(--border-primary)}.nf-timeline .nf-day{position:relative;margin:20px 0 11px}.nf-timeline .nf-day:before{content:"";position:absolute;left:-24px;width:8px;height:8px;border:1.5px solid var(--text-tertiary);background:var(--bg-primary);border-radius:50%;box-sizing:border-box}.nf-timeline .nf-day:after{display:none}.nf-timeline .nf-day h2{font-size:11px}.nf-timeline-row{--nf-dot: var(--fam-coral-deep);position:relative;padding-bottom:11px}.nf-timeline-row[data-tone=blue]{--nf-dot: var(--fam-blue-deep)}.nf-timeline-row[data-tone=teal]{--nf-dot: var(--fam-teal-deep)}.nf-timeline-row[data-tone=violet]{--nf-dot: var(--fam-violet-deep)}.nf-timeline-row[data-tone=rose]{--nf-dot: #c85b8e}.nf-timeline-row[data-tone=red]{--nf-dot: #d96058}.nf-timeline-row:before{content:"";position:absolute;left:-24px;top:16px;width:8px;height:8px;border-radius:50%;background:var(--nf-dot);box-shadow:0 0 0 3px var(--bg-primary)}.nf-timeline .nf-timeline-card{padding:9px 12px 5px;margin:0;border-radius:15px;background:var(--nf-tint);border-color:var(--nf-border);box-shadow:none}.nf-timeline-top{display:flex;align-items:center;gap:5px;margin-bottom:5px;min-height:18px;font-size:10px;color:var(--text-tertiary)}.nf-timeline-top .nf-badge{flex-shrink:0;padding:1px 6px;font-size:10px;border-radius:4px;line-height:16px}.nf-timeline-top time{flex-shrink:0;font-size:10px;font-variant-numeric:tabular-nums}.nf-timeline-top .nf-score{flex-shrink:0;justify-content:center;min-width:23px;padding:1px 4px;background:var(--fam-coral-deep);color:#fff;font-size:10px;line-height:16px;border-radius:4px}.nf-timeline-top .nf-score.is-high{background:#c75264}[data-theme=dark] .nf-timeline-top .nf-score{color:#152027}[data-theme=dark] .nf-timeline-top .nf-score.is-high{background:#ef9990}.nf-timeline-story{display:flex;gap:10px;align-items:flex-start}.nf-timeline .nf-title{font-size:14px;line-height:1.48;font-weight:500;margin:0}.nf-timeline .nf-cover.is-small{flex:0 0 64px;width:64px;height:64px;aspect-ratio:auto;margin:0 0 3px;border-radius:9px}.nf-cover.is-small.is-video:after{inset:0;background:#00000014}.nf-cover.is-small .nf-play{width:23px;height:23px;font-size:9px;text-indent:1px;backdrop-filter:none}.nf-timeline-bottom{display:flex;align-items:center;gap:4px;min-height:24px}.nf-topic-tags{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px}.nf-topic{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:16px;padding:0 5px;border-radius:5px;color:var(--fam-teal-deep);background:var(--fam-teal-tint)}.nf-topic-1{color:var(--fam-violet-deep);background:var(--fam-violet-tint)}.nf-topic-2{color:var(--fam-blue-deep);background:var(--fam-blue-tint)}.nf-detail-toggle{display:inline-flex;align-items:center;justify-content:flex-end;flex-shrink:0;gap:3px;min-width:34px;min-height:26px;margin:-1px -2px -1px 0;padding:3px 2px;font-size:10px;line-height:16px;background:transparent;border:none;color:var(--text-tertiary);cursor:pointer}.nf-detail-toggle>span{font-size:12px}.nf-timeline-details{border-top:1px solid var(--nf-border);margin-top:8px;padding-top:10px}.nf-timeline .nf-summary{font-size:12px;line-height:1.7;margin-bottom:8px}.nf-timeline .nf-reason{margin-top:8px;background:var(--bg-card)}.nf-timeline .nf-empty{margin-left:-26px}.nf-timeline .nf-end{padding-top:8px}@media(max-width:350px){.nf-page{padding-left:18px;padding-right:18px}.nf-nav{gap:5px}.nf-nav-label{font-size:12.5px;padding-inline:6px}.nf-nav-tab small{font-size:9px;gap:3px}.nf-nav-tab small b{font-size:11px}.nf-nav-tab:not(:last-child):after{right:-3px}.nf-timeline .nf-cover.is-small{flex-basis:56px;width:56px;height:56px}}@media(prefers-reduced-motion:reduce){.nf-page,.nf-page .nf-refresh{animation:none}.nf-cover img,.nf-nav-label{transition:none}}
