:root{--bg: #101014;--card: #1b1b23;--card-press: #26262f;--border: #2c2c36;--text: #f2f2f5;--dim: #9a9aa6;--accent: #7aa2ff;--good: #6fd08c;--danger: #e0687a}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}#root{min-height:100dvh}.shell{max-width:480px;margin:0 auto;padding:12px 16px calc(24px + env(safe-area-inset-bottom));padding-top:calc(12px + env(safe-area-inset-top))}.app-header{display:flex;align-items:baseline;gap:10px;margin-bottom:18px}.app-header h1{font-size:22px;margin:0}.app-header .who{color:var(--dim);font-size:13px;margin-left:auto}button.linkish{background:none;border:none;color:var(--accent);font-size:13px;padding:4px;cursor:pointer}.install-banner{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:12px 14px;font-size:14px;line-height:1.45;color:var(--dim);display:flex;gap:10px;align-items:flex-start;margin-bottom:18px}.install-banner strong{color:var(--text)}.install-banner .dismiss{background:none;border:none;color:var(--dim);font-size:18px;line-height:1;padding:2px 4px;cursor:pointer;flex-shrink:0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.thought-card{display:flex;flex-direction:column;gap:6px}.emoji-btn{width:100%;aspect-ratio:1;font-size:42px;background:var(--card);border:1px solid var(--border);border-radius:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .08s ease,background .08s ease;touch-action:manipulation}.emoji-btn:active:not(:disabled){transform:scale(.93);background:var(--card-press)}.emoji-btn:disabled{cursor:default;opacity:.9}.card-stats{background:none;border:none;color:var(--dim);font-size:12px;line-height:1.35;text-align:center;padding:2px 0 6px;cursor:pointer;min-height:38px}.card-stats .ago{color:var(--text);display:block}.note-strip{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:12px 14px;margin-top:18px;animation:rise .18s ease}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.note-strip .strip-head{display:flex;align-items:center;gap:8px;font-size:14px}.note-strip .strip-head .ok{color:var(--good)}.note-strip .strip-head .dismiss{margin-left:auto;background:none;border:none;color:var(--dim);font-size:18px;line-height:1;padding:2px 4px;cursor:pointer}.note-row{display:flex;gap:8px;margin-top:10px}input[type=text],input[type=password],textarea{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:10px;color:var(--text);font:inherit;font-size:16px;padding:10px 12px}textarea{resize:vertical;min-height:84px}input:focus,textarea:focus{outline:none;border-color:var(--accent)}button.primary{background:var(--accent);color:#0d1220;border:none;border-radius:10px;font:inherit;font-size:15px;font-weight:600;padding:10px 16px;cursor:pointer;flex-shrink:0}button.primary:disabled{opacity:.45;cursor:default}button.secondary{background:var(--card-press);color:var(--text);border:1px solid var(--border);border-radius:10px;font:inherit;font-size:15px;padding:10px 16px;cursor:pointer}.sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:flex-end;justify-content:center;z-index:20}.sheet{background:#17171d;border-top:1px solid var(--border);border-radius:18px 18px 0 0;width:100%;max-width:480px;max-height:82dvh;overflow-y:auto;padding:16px 16px calc(20px + env(safe-area-inset-bottom));animation:slide-up .2s ease}@keyframes slide-up{0%{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}.sheet-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.sheet-head .big-emoji{font-size:30px}.sheet-head h2{font-size:16px;margin:0}.sheet-head .sub{color:var(--dim);font-size:13px}.sheet-head .close{margin-left:auto;background:var(--card-press);border:1px solid var(--border);border-radius:50%;width:30px;height:30px;color:var(--dim);font-size:15px;line-height:1;cursor:pointer}.event-row{padding:10px 2px;border-bottom:1px solid var(--border);font-size:14px}.event-row:last-child{border-bottom:none}.event-row .when{color:var(--dim);font-size:12px}.event-row .note{margin-top:4px;white-space:pre-wrap;overflow-wrap:break-word}.event-row.no-note .when{font-size:12px}.empty{color:var(--dim);font-size:14px;text-align:center;padding:24px 0}.tabs{display:flex;gap:8px;margin-bottom:16px}.tabs button{flex:1;background:var(--card);border:1px solid var(--border);border-radius:10px;color:var(--dim);font:inherit;font-size:14px;padding:9px 0;cursor:pointer}.tabs button.active{background:var(--card-press);color:var(--text);border-color:var(--accent)}select{background:var(--card);border:1px solid var(--border);border-radius:10px;color:var(--text);font:inherit;font-size:15px;padding:9px 12px}.filter-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px;font-size:14px}.filter-row label.check{display:flex;align-items:center;gap:6px;color:var(--dim);cursor:pointer}.log-row{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:10px 12px;margin-bottom:8px;font-size:14px}.log-row .log-top{display:flex;align-items:baseline;gap:8px}.log-row .log-emoji{font-size:18px}.log-row .log-user{font-weight:600;font-size:13px}.log-row .log-when{margin-left:auto;color:var(--dim);font-size:12px;text-align:right;line-height:1.4}.log-row .note{margin-top:6px;white-space:pre-wrap;overflow-wrap:break-word;color:var(--text)}.load-more{width:100%;margin-top:4px}.login-wrap{min-height:80dvh;display:flex;align-items:center;justify-content:center}.login-card{width:100%;max-width:340px;background:var(--card);border:1px solid var(--border);border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:12px}.login-card h1{font-size:20px;margin:0 0 4px;text-align:center}.error{color:var(--danger);font-size:13px;text-align:center}.section-label{color:var(--dim);font-size:13px;margin:18px 0 8px}
