:root{--ink:#1c1a17;--ink-soft:#2a2621;--paper:#f1ead9;--stamp:#c9a227;--stamp-deep:#9c7d1b;--accent:#c9a227;--medal-gold:#e8c34a;--medal-gold-deep:#b8932a;--medal-silver:#c7cbce;--medal-silver-deep:#8d9296;--medal-bronze:#c97a46;--medal-bronze-deep:#8f4f28;--movie:#6c63ff;--show:#f0518f;--food:#f5a623;--brand-orange:#f5a623;--brand-pink:#e63e7a;--brand-purple:#8b5cf6;--line:#f1ead91f;--text-dim:#f1ead98c}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}button,input,textarea,select{font-family:Satoshi,sans-serif!important}input:-webkit-autofill{caret-color:var(--paper);transition:background-color 9999s ease-in-out;-webkit-box-shadow:0 0 0 30px var(--ink-soft) inset!important;-webkit-text-fill-color:var(--paper)!important}input:-webkit-autofill:hover{caret-color:var(--paper);transition:background-color 9999s ease-in-out;-webkit-box-shadow:0 0 0 30px var(--ink-soft) inset!important;-webkit-text-fill-color:var(--paper)!important}input:-webkit-autofill:focus{caret-color:var(--paper);transition:background-color 9999s ease-in-out;-webkit-box-shadow:0 0 0 30px var(--ink-soft) inset!important;-webkit-text-fill-color:var(--paper)!important}input:-webkit-autofill:active{caret-color:var(--paper);transition:background-color 9999s ease-in-out;-webkit-box-shadow:0 0 0 30px var(--ink-soft) inset!important;-webkit-text-fill-color:var(--paper)!important}html,body{height:100%;margin:0;padding:0}body{background:var(--ink);color:var(--paper);justify-content:center;min-height:100dvh;font-family:Satoshi,-apple-system,sans-serif;display:flex}#app{background:var(--ink);border-left:1px solid var(--line);border-right:1px solid var(--line);flex-direction:column;width:100%;max-width:430px;margin:0 auto;display:flex;position:fixed;inset:0;overflow:hidden}.topbar{padding:18px 20px 14px;padding-top:max(18px, env(safe-area-inset-top));border-bottom:1px solid var(--line);background:var(--ink);z-index:20;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.wordmark{letter-spacing:-.02em;color:var(--paper);align-items:center;gap:8px;font-family:Satoshi,sans-serif;font-size:21px;font-weight:500;display:flex}.wordmark-it{background:linear-gradient(135deg, var(--brand-orange), var(--brand-pink) 55%, var(--brand-purple));color:#0000;-webkit-background-clip:text;background-clip:text}.brand-mark{flex-shrink:0;justify-content:center;align-items:center;width:27px;height:27px;display:flex}.brand-mark img,.brand-mark svg{width:100%;height:100%}.icon-only-btn{color:var(--paper);cursor:pointer;background:0 0;border:none;align-items:center;display:flex}.icon-only-btn svg{width:22px;height:22px}.back-btn{color:var(--paper);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;font-family:Satoshi,sans-serif;font-size:15px;display:flex}.topbar-title{font-family:Satoshi,sans-serif;font-size:18px;font-weight:500}.topbar-spacer{width:24px}.screen{padding-bottom:calc(86px + max(0px, env(safe-area-inset-bottom) - 16px));-webkit-overflow-scrolling:touch;background:var(--ink);color:var(--paper);flex-direction:column;flex:1;display:none;overflow-y:auto}.screen.active{display:flex}.entry-list{flex-direction:column;display:flex}.entry-row{border-bottom:1px solid var(--line);flex-direction:column;padding:16px 0;display:flex}.entry-photo-wrap{width:80%;margin:10px auto;line-height:0;position:relative}.entry-photo{width:100%;height:auto;display:block}.entry-photo-placeholder{aspect-ratio:16/9;border:1px solid #f1ead926;width:100%}.entry-photo-placeholder.cat-Movie{background-color:#6c63ff38}.entry-photo-placeholder.cat-Show{background-color:#f0518f38}.entry-photo-placeholder.cat-Food{background-color:#f5a62338}.photo-credit-wrap{z-index:2;line-height:normal;position:absolute;top:10px;right:10px}.photo-credit-badge{background:linear-gradient(135deg, var(--brand-orange), var(--brand-pink) 55%, var(--brand-purple));cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:flex;box-shadow:0 1px 5px #00000073}.photo-credit-badge svg{width:15px;height:15px}.photo-credit-tooltip{color:#fff;white-space:nowrap;background:#000000d9;border-radius:6px;padding:6px 10px;font-size:12px;animation:.15s ease-out photo-credit-fade-in;position:absolute;top:34px;right:0}@keyframes photo-credit-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.entry-title-row.entry-title-row-with-stamp{align-items:flex-start}.entry-stamp-inline{flex-shrink:0;width:38px;height:45px;margin-left:auto;margin-right:4px}.entry-stamp-inline .stamp{transform-origin:100% 0;transform:scale(.76)}.cover{background-position:50%;background-size:cover;border:1px solid #f1ead926;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:20px;display:flex}.cover.cat-Movie{background-color:#6c63ff38}.cover.cat-Show{background-color:#f0518f38}.cover.cat-Food{background-color:#f5a62338}.entry-main{min-width:0;padding:0 20px}.entry-byline{color:var(--text-dim);cursor:pointer;align-items:center;gap:7px;padding:0 20px;font-size:12.5px;display:flex}.mini-avatar{width:20px;height:20px;color:var(--paper);background:var(--ink-soft);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-family:Satoshi,sans-serif;font-size:10px;font-weight:500;display:flex}.entry-byline b{color:var(--paper);font-weight:500}.entry-byline b:hover{text-decoration:underline}.entry-byline-big{margin-bottom:0;padding:0;font-size:15px}.entry-byline-big .mini-avatar{width:24px;height:24px;font-size:11px}.entry-byline-big b{font-weight:600}.entry-title-row{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.entry-title{color:var(--paper);font-family:Satoshi,sans-serif;font-size:16.5px;font-weight:500}.tag{letter-spacing:.03em;text-transform:uppercase;border-radius:20px;padding:2px 7px;font-family:Satoshi,sans-serif;font-size:10.5px;font-weight:500}.tag.cat-Movie{color:#6c63ff;background:#6c63ff40}.tag.cat-Show{color:#f0518f;background:#f0518f40}.tag.cat-Food{color:#c47812;background:#f5a62340}.entry-note{color:var(--text-dim);margin-top:6px;font-family:Satoshi,sans-serif;font-size:13.5px;font-style:italic;line-height:1.4}.entry-note-post{font-style:normal}.tagged-line{color:var(--text-dim);margin-top:4px;font-family:Satoshi,sans-serif;font-size:11.5px}.entry-date{color:var(--text-dim);font-family:Satoshi,sans-serif;font-size:10.5px}.entry-side{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.entry-del{color:var(--text-dim);cursor:pointer;background:0 0;border:none;font-family:Satoshi,sans-serif;font-size:11px}.entry-del:hover{color:#e0654a}.icon-row{align-items:center;gap:16px;margin-top:9px;display:flex}.icon-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;align-items:center;gap:5px;padding:0;font-family:Satoshi,sans-serif;font-size:11.5px;display:flex}.icon-btn svg{width:15px;height:15px}.icon-btn.liked{color:#e0654a}.icon-row .entry-date{margin-left:auto}.stamp{flex-shrink:0;width:50px;height:60px;position:relative}.seal-ribbon{clip-path:polygon(0 0,100% 0,100% 100%,50% 76%,0 100%);width:26px;height:23px;position:absolute;top:29px;left:50%;transform:translate(-50%)}.seal-coin{border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.seal-face{border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:35px;height:35px;display:flex}.seal-num{font-family:Satoshi,sans-serif;font-size:14px;font-weight:700;line-height:1}.seal-div{border-top:1px dashed #0000004d;width:14px;height:0;margin:2px 0}.seal-den{opacity:.8;font-family:Satoshi,sans-serif;font-size:7px;font-weight:500}.stamp-gold .seal-coin{background:radial-gradient(circle at 32% 26%,#fbe8a6,#e8c34a 45%,#8f6c1e 100%);box-shadow:0 2px 5px #00000073,inset 0 0 0 2px #ffffff40}.stamp-gold .seal-face{background:radial-gradient(circle at 35% 30%,#fcefc2,#e8c34a 55%,#b8932a 100%);box-shadow:inset 0 2px 3px #0000004d,inset 0 -2px 2px #ffffff4d}.stamp-gold .seal-num,.stamp-gold .seal-den{color:#5a3f08}.stamp-gold .seal-div{border-top-color:#5a3f0866}.stamp-gold .seal-ribbon{background:linear-gradient(#e2793b,#a8531f)}.stamp-silver .seal-coin{background:radial-gradient(circle at 32% 26%,#f4f5f6,#c7cbce 45%,#6f7377 100%);box-shadow:0 2px 5px #0006,inset 0 0 0 2px #ffffff4d}.stamp-silver .seal-face{background:radial-gradient(circle at 35% 30%,#fbfbfc,#c7cbce 55%,#8d9296 100%);box-shadow:inset 0 2px 3px #00000040,inset 0 -2px 2px #ffffff59}.stamp-silver .seal-num,.stamp-silver .seal-den{color:#2b2d2f}.stamp-silver .seal-div{border-top-color:#2b2d2f59}.stamp-silver .seal-ribbon{background:linear-gradient(#3b5bdb,#223f8f)}.stamp-bronze .seal-coin{background:radial-gradient(circle at 32% 26%,#e3a876,#c97a46 45%,#6b3c1c 100%);box-shadow:0 2px 5px #00000073,inset 0 0 0 2px #fff3}.stamp-bronze .seal-face{background:radial-gradient(circle at 35% 30%,#efc29b,#c97a46 55%,#8f4f28 100%);box-shadow:inset 0 2px 3px #0000004d,inset 0 -2px 2px #ffffff40}.stamp-bronze .seal-num,.stamp-bronze .seal-den{color:#3a1f0d}.stamp-bronze .seal-div{border-top-color:#3a1f0d59}.stamp-bronze .seal-ribbon{background:linear-gradient(#7d828a,#4c5157)}.stamp-perfect .seal-coin{box-shadow:0 2px 5px #00000073, inset 0 0 0 2px #ffffff40, 0 0 0 3px var(--medal-gold), 0 0 0 6px var(--accent)}.seal-spark{color:var(--medal-gold);font-size:13px;animation:2.4s ease-in-out infinite sparkTwinkle;position:absolute;top:-6px;right:0}@keyframes sparkTwinkle{0%,to{opacity:.5;transform:scale(.8)rotate(0)}50%{opacity:1;transform:scale(1.2)rotate(15deg)}}@media (prefers-reduced-motion:reduce){.seal-spark{animation:none}}.empty{text-align:center;color:var(--text-dim);padding:60px 30px}.empty .empty-title{color:var(--paper);margin-bottom:8px;font-family:Satoshi,sans-serif;font-size:19px;font-weight:500}.profile-header{border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:24px 20px 18px;display:flex}.avatar-ring{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:3px;display:flex;position:relative}.avatar{background:var(--stamp-deep);width:64px;height:64px;color:var(--paper);background-position:50%;background-size:cover;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-family:Satoshi,sans-serif;font-size:24px;font-weight:500;display:flex}.avatar-edit-btn{background:var(--accent);border:2px solid var(--ink);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:absolute;bottom:0;right:0}.avatar-edit-btn svg{width:11px;height:11px;stroke:var(--ink)}.settings-section-header{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);padding:20px 20px 8px;font-family:Satoshi,sans-serif;font-size:11px}.edit-profile-row{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:14px;padding:16px 20px;display:flex}.edit-profile-row .avatar{width:48px;height:48px;font-size:19px}.logout-btn{border:1px solid var(--line);color:#e0654a;cursor:pointer;background:0 0;border-radius:10px;width:calc(100% - 40px);margin:24px 20px 40px;padding:13px;font-family:Satoshi,sans-serif;font-size:14px;font-weight:500}.rank-info-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 20px;display:flex}.rank-info-row .rank-icon-wrap{color:var(--accent);flex-shrink:0}.rank-info-name{font-size:14px;font-weight:700}.rank-info-req{color:var(--text-dim);margin-top:1px;font-size:12px}#app.authing .bottomnav{display:none}.auth-screen{text-align:center;justify-content:center;align-items:center;gap:0;padding:40px 30px}.auth-brand{background:var(--ink-soft);border:1px solid var(--line);border-radius:20px;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:22px;display:flex}.splash-brand{align-items:center;gap:14px;animation:.7s cubic-bezier(.34,1.56,.64,1) both splashPop;display:flex}.splash-mark{flex-shrink:0;width:58px;height:58px}.splash-wordmark{letter-spacing:-.02em;color:var(--paper);font-family:Satoshi,sans-serif;font-size:40px;font-weight:600}@keyframes splashPop{0%{opacity:0;transform:scale(.55)}60%{opacity:1;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}.splash-dots{gap:7px;margin-top:30px;display:flex}.splash-dots span{background:var(--accent);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite splashDot}.splash-dots span:nth-child(2){animation-delay:.15s}.splash-dots span:nth-child(3){animation-delay:.3s}@keyframes splashDot{0%,80%,to{opacity:.25;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.splash-brand{animation:none}.splash-dots span{opacity:.6;animation:none}}.auth-brand svg{width:40px;height:40px}.auth-tagline{letter-spacing:.04em;text-transform:uppercase;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:-16px;margin-bottom:28px;font-family:Satoshi,sans-serif;font-size:11px;display:flex}.auth-tagline span:first-child{color:var(--brand-purple)}.auth-tagline span:nth-child(2){color:var(--brand-pink)}.auth-tagline span:nth-child(3){color:var(--brand-orange)}.auth-title{margin-bottom:8px;font-family:Satoshi,sans-serif;font-size:24px;font-weight:500}.auth-sub{color:var(--text-dim);max-width:280px;margin-bottom:28px;font-size:13.5px;line-height:1.5}.auth-form{flex-direction:column;gap:14px;width:100%;display:flex}.auth-code-row{justify-content:center;gap:8px;display:flex}.auth-code-digit{text-align:center;background:var(--ink-soft);border:1px solid var(--line);width:38px;height:48px;color:var(--paper);border-radius:10px;font-family:Satoshi,sans-serif;font-size:20px;font-weight:700}.auth-code-digit:focus{border-color:var(--accent);outline:none}.auth-demo-banner{background:color-mix(in srgb, var(--accent) 15%, transparent);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);color:var(--paper);border-radius:10px;margin-bottom:18px;padding:12px 14px;font-family:Satoshi,sans-serif;font-size:12.5px}.auth-link{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:8px;font-family:Satoshi,sans-serif;font-size:13.5px}.scan-overlay{z-index:500;background:#000000b3;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:fixed;inset:0}.scan-ring{border:3px solid var(--accent);border-top-color:#0000;border-radius:50%;width:70px;height:70px;animation:.9s linear infinite scanSpin}@keyframes scanSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.scan-ring{animation:none}}.profile-name{align-items:center;gap:6px;font-family:Satoshi,sans-serif;font-size:19px;font-weight:500;display:flex}.profile-handle{color:var(--text-dim);margin-top:2px;font-size:13px}.profile-stats{flex-wrap:wrap;gap:14px;margin-top:8px;display:flex}.profile-stat{color:var(--text-dim);font-family:Satoshi,sans-serif;font-size:11.5px}.profile-stat b{color:var(--paper);font-size:14px;display:block}.lock-badge{color:var(--text-dim);border:1px solid var(--line);border-radius:8px;padding:2px 6px;font-family:Satoshi,sans-serif;font-size:10px}.rank-badge{letter-spacing:.03em;text-transform:uppercase;background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);border-radius:20px;align-items:center;gap:4px;padding:3px 9px;font-family:Satoshi,sans-serif;font-size:10px;font-weight:700;display:inline-flex}.rank-dot{color:var(--accent);flex-shrink:0;display:inline-flex}.rank-dot svg{width:12px;height:12px}.follow-btn{background:var(--accent);color:var(--ink);cursor:pointer;white-space:nowrap;border:none;border-radius:20px;margin-left:auto;padding:8px 16px;font-family:Satoshi,sans-serif;font-size:13px;font-weight:500}.follow-btn.following{border:1px solid var(--line);color:var(--paper);background:0 0}.tabs{border-bottom:1px solid var(--line);gap:0;padding:0 20px;display:flex}.tab{letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:14px 14px 12px;font-family:Satoshi,sans-serif;font-size:12px}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.search-wrap{border-bottom:1px solid var(--line);padding:14px 20px}.search-input{background:var(--ink-soft);border:1px solid var(--line);width:100%;color:var(--paper);border-radius:10px;padding:11px 14px;font-family:Satoshi,sans-serif;font-size:16px}.search-input::placeholder{color:var(--text-dim)}.search-input:focus{border-color:var(--accent);outline:none}.people-row{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:12px;padding:14px 20px;display:flex}.people-row .avatar{width:44px;height:44px;font-size:17px}.people-name{align-items:center;gap:5px;font-size:14.5px;font-weight:500;display:inline-flex}.people-handle{color:var(--text-dim);font-size:12.5px}.form,.wizard-steps{flex-direction:column;gap:22px;padding:20px;display:flex}.field-label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim);margin-bottom:9px;font-family:Satoshi,sans-serif;font-size:11px;display:block}.chip-row{gap:8px;display:flex}.chip{text-align:center;border:1px solid var(--line);background:var(--ink-soft);cursor:pointer;color:var(--text-dim);border-radius:10px;flex:1;padding:14px 0;font-family:Satoshi,sans-serif;font-size:13.5px;font-weight:500}.chip.cat-Movie{border-color:#6c63ff8c}.chip.cat-Show{border-color:#f0518f8c}.chip.cat-Food{border-color:#f5a6238c}.text-input,textarea{background:var(--ink-soft);border:1px solid var(--line);width:100%;color:var(--paper);resize:none;border-radius:10px;padding:12px 14px;font-family:Satoshi,sans-serif;font-size:16px}.text-input:focus,textarea:focus{border-color:var(--accent);outline:none}.score-row{align-items:center;gap:16px;display:flex}.score-input{text-align:center;-moz-appearance:textfield;font-family:Satoshi,sans-serif;font-size:20px;font-weight:700}.score-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.score-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.score-live{text-align:center;width:60px;color:var(--medal-bronze);font-family:Satoshi,sans-serif;font-size:22px;font-weight:500}.score-live.tier-gold{color:var(--medal-gold)}.score-live.tier-silver{color:var(--medal-silver)}.score-live.tier-bronze{color:var(--medal-bronze)}.primary-btn{background:var(--accent);color:var(--ink);cursor:pointer;border:none;border-radius:10px;padding:14px;font-family:Satoshi,sans-serif;font-size:15px;font-weight:700}.primary-btn:disabled{opacity:.4;cursor:not-allowed}.ghost-btn{color:var(--paper);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:10px;padding:14px;font-family:Satoshi,sans-serif;font-size:15px;font-weight:500}.btn-row{gap:10px;display:flex}.btn-row>*{flex:1}.step-dots{justify-content:center;gap:6px;padding:14px 0 0;display:flex}.step-dot{background:var(--line);border-radius:50%;width:7px;height:7px}.step-dot.active{background:var(--accent);border-radius:4px;width:16px}.step-dot.done{background:var(--stamp-deep)}.theme-row{flex-wrap:wrap;gap:14px;padding:6px 20px 20px;display:flex}.theme-swatch{cursor:pointer;width:38px;height:38px;box-shadow:0 0 0 2px var(--ink);border-radius:50%;position:relative}.theme-swatch.sel:after{content:"";border:2px solid var(--paper);border-radius:50%;position:absolute;inset:-4px}.result-row{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:12px;padding:12px 4px;display:flex}.result-main{flex:1}.result-title{font-family:Satoshi,serif;font-size:15px;font-weight:500}.wtt-btn{border:1px solid var(--line);color:var(--text-dim);white-space:nowrap;cursor:pointer;background:0 0;border-radius:16px;padding:7px 11px;font-size:11px}.wtt-btn:hover{border-color:var(--accent);color:var(--accent)}.manual-add{color:var(--text-dim);padding:14px 4px;font-size:13px}.manual-add b{color:var(--accent);cursor:pointer}.notif-row{border-bottom:1px solid var(--line);cursor:pointer;align-items:flex-start;gap:12px;padding:14px 20px;display:flex}.notif-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px}.notif-text{font-size:13.5px;line-height:1.4}.notif-text b{font-weight:500}.notif-time{color:var(--text-dim);margin-top:3px;font-family:Satoshi,sans-serif;font-size:11px}.toggle-switch{background:var(--ink-soft);border:1px solid var(--line);cursor:pointer;border-radius:14px;flex-shrink:0;width:42px;height:24px;position:relative}.toggle-switch.on{background:color-mix(in srgb, var(--accent) 35%, transparent);border-color:var(--accent)}.toggle-knob{background:var(--paper);border-radius:50%;width:18px;height:18px;transition:left .15s;position:absolute;top:2px;left:2px}.toggle-switch.on .toggle-knob{background:var(--accent);left:20px}.settings-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.settings-label{font-size:14.5px;font-weight:500}.settings-sub{color:var(--text-dim);max-width:280px;margin-top:2px;font-size:12px}.banner{background:var(--ink-soft);border:1px solid var(--line);color:var(--text-dim);border-radius:10px;margin:16px 20px;padding:14px 16px;font-size:12.5px;line-height:1.5}.banner b{color:var(--paper)}.lock-empty{text-align:center;color:var(--text-dim);padding:60px 30px}.comment-row{border-bottom:1px solid var(--line);padding:12px 20px;font-size:13.5px}.comment-row b{margin-right:6px}.comment-input-wrap{border-top:1px solid var(--line);background:var(--ink);gap:8px;margin-top:auto;padding:14px 20px;display:flex;position:sticky;bottom:0}.comment-input{background:var(--ink-soft);border:1px solid var(--line);color:var(--paper);border-radius:20px;flex:1;padding:10px 14px;font-family:Satoshi,sans-serif;font-size:16px}.comment-post{background:var(--accent);color:var(--ink);cursor:pointer;border:none;border-radius:20px;padding:10px 16px;font-size:13px;font-weight:700}.tag-chip-row{flex-wrap:wrap;gap:8px;display:flex}.tag-chip{border:1px solid var(--line);background:var(--ink-soft);cursor:pointer;color:var(--text-dim);border-radius:20px;padding:10px 15px;font-size:13px}.tag-chip.sel{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 15%, transparent)}.toast{background:var(--paper);color:var(--ink);opacity:0;pointer-events:none;z-index:200;white-space:nowrap;border-radius:24px;padding:10px 18px;font-size:13px;font-weight:500;transition:opacity .25s;position:absolute;bottom:96px;left:50%;transform:translate(-50%)}.toast.show{opacity:1}.rankup-banner{background:var(--ink-soft);border:1px solid var(--line);z-index:300;opacity:0;border-radius:14px;align-items:center;gap:12px;padding:14px 16px;transition:all .35s;display:flex;position:absolute;top:14px;left:16px;right:16px;transform:translateY(-16px);box-shadow:0 10px 28px #00000073}.rankup-banner.show{opacity:1;transform:translateY(0)}.rankup-banner .rankup-title{color:var(--paper);font-size:14.5px;font-weight:700}.rankup-banner .rankup-sub{color:var(--text-dim);margin-top:2px;font-size:12px}.bottomnav{background:var(--ink);border-top:1px solid var(--line);padding:10px 6px 16px;padding-bottom:max(16px, env(safe-area-inset-bottom));z-index:30;align-items:center;display:flex;position:absolute;bottom:0;left:0;right:0}.wtt-fab{background:var(--accent);width:50px;height:50px;color:var(--ink);cursor:pointer;z-index:35;opacity:0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:none;position:absolute;bottom:92px;left:50%;transform:translate(-50%)scale(.8);box-shadow:0 8px 20px #00000073}.wtt-fab svg{width:22px;height:22px}.wtt-fab.show{opacity:1;display:flex;transform:translate(-50%)scale(1)}#app.authing .wtt-fab{display:none!important}.navbtn{cursor:pointer;min-width:0;color:var(--text-dim);background:0 0;border:none;flex-direction:column;flex:1 0 0;align-items:center;gap:4px;padding:4px 8px;text-decoration:none;display:flex;position:relative}.navbtn.active{color:var(--paper)}.navbtn svg{width:21px;height:21px}.navlabel{letter-spacing:.02em;font-family:Satoshi,sans-serif;font-size:9px}.nav-badge{background:var(--food);border-radius:50%;width:7px;height:7px;position:absolute;top:0;right:2px}.navbtn.rate .stamp-icon{background:var(--accent);border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;margin-bottom:-2px;display:flex}.navbtn.rate svg{color:var(--ink);width:18px;height:18px}::-webkit-scrollbar{width:0}.pull-spinner{background:var(--ink-soft);border:1px solid var(--line);width:30px;height:30px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;display:flex}.pull-spinner svg{width:18px;height:18px}.pull-spinner.spinning{animation:.7s linear infinite pullSpin}@keyframes pullSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.pull-spinner.spinning{animation:none}}