@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,700&family=Nunito:wght@400;600;700&display=swap");:root{--bg:#fdf6ec;--surface:#fffaf3;--ink:#2c2417;--ink-soft:#6b5b48;--accent:#d97757;--accent-deep:#b85838;--bubble-in:#ece4d3;--bubble-out:#d97757;--bubble-out-ink:#fff8ee;--error:#b85838;--shadow:0 1px 2px rgba(44,36,23,.06),0 4px 12px rgba(44,36,23,.04)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}#__next,body,html{height:100%;margin:0;padding:0}body{font-family:Nunito,system-ui,sans-serif;background:var(--bg);color:var(--ink);overscroll-behavior-y:none}.app{display:flex;flex-direction:column;height:100vh;height:100dvh;max-width:720px;margin:0 auto;background:var(--surface);box-shadow:var(--shadow)}.thread{flex:1 1;overflow-y:auto;padding:max(20px,env(safe-area-inset-top)) 16px 20px;scroll-behavior:smooth}.msg-group,.thread{display:flex;flex-direction:column;gap:4px}.msg-row{display:flex;width:100%}.msg-row.in{justify-content:flex-start}.msg-row.out{justify-content:flex-end}.timestamp{text-align:center;font-size:13px;color:var(--ink-soft);margin:16px 0 10px;letter-spacing:.02em}.bubble{max-width:75%;padding:12px 18px;border-radius:22px;font-size:18px;line-height:1.4;word-wrap:break-word;white-space:pre-wrap;margin:3px 0;animation:pop .25s ease-out}@keyframes pop{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}.bubble.in{background:var(--bubble-in);color:var(--ink);border-bottom-left-radius:6px}.bubble.out{background:var(--bubble-out);color:var(--bubble-out-ink);border-bottom-right-radius:6px}.empty{margin:auto;text-align:center;color:var(--ink-soft);font-size:17px}.empty .hint{font-family:Fraunces,Georgia,serif;font-size:20px;margin-top:4px}.composer{display:flex;gap:10px;padding:14px 16px max(14px,env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid rgba(44,36,23,.08)}.composer input{flex:1 1;padding:14px 20px;font-size:18px;font-family:inherit;border:1.5px solid rgba(44,36,23,.12);border-radius:999px;background:var(--bg);color:var(--ink);outline:none;transition:border-color .15s,background .15s}.composer input:focus{border-color:var(--accent);background:var(--surface)}.composer button{padding:0 22px;min-width:80px;font-size:17px;font-weight:700;font-family:inherit;color:var(--bubble-out-ink);background:var(--accent);border:none;border-radius:999px;cursor:pointer;transition:background .15s,transform .1s}.composer button:active:not(:disabled){transform:scale(.96);background:var(--accent-deep)}.composer button:disabled{opacity:.4;cursor:not-allowed}.error{padding:10px 16px;background:rgba(184,88,56,.1);color:var(--error);font-size:15px}.error,.splash{text-align:center}.splash{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;padding:24px}.splash h1{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:56px;margin:0 0 16px;color:var(--ink)}.splash p{font-size:18px;color:var(--ink-soft);max-width:360px}.splash .hint{font-family:Fraunces,Georgia,serif;font-size:20px;margin-top:8px}.pin-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:max(24px,env(safe-area-inset-top)) 24px max(24px,env(safe-area-inset-bottom));background:var(--surface)}.pin-title{margin:0 0 36px;max-width:340px;text-align:center;font-family:Fraunces,Georgia,serif;font-size:26px;font-weight:500;line-height:1.35;color:var(--ink)}.pin-slots{display:flex;gap:12px;margin-bottom:48px}.pin-slot{display:flex;flex-direction:column;align-items:center;width:48px}.pin-slot-char{min-height:44px;font-size:36px;font-weight:700;line-height:1;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pin-slot-line{display:block;width:100%;height:0;border-bottom:3px solid var(--ink-soft);margin-top:4px}.pin-slots.shake{animation:pin-shake .45s ease-in-out}@keyframes pin-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-10px)}40%{transform:translateX(10px)}60%{transform:translateX(-8px)}80%{transform:translateX(8px)}}.pin-keypad{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;width:min(100%,320px)}.pin-key{aspect-ratio:1.35;border:none;border-radius:50%;background:rgba(44,36,23,.06);color:var(--ink);font-size:28px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .12s,transform .1s;-webkit-tap-highlight-color:transparent}.pin-key:active:not(:disabled){background:rgba(44,36,23,.14);transform:scale(.94)}.pin-key:disabled{opacity:.5;cursor:not-allowed}.pin-key-empty{visibility:hidden;pointer-events:none}.pin-key-back{font-size:22px;background:transparent}.mom-login{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:var(--surface)}.mom-page{max-width:960px;margin:0 auto;padding:32px 24px 64px}.mom-header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:20px}.mom-title{font-family:Fraunces,Georgia,serif;font-size:28px;font-weight:500;color:var(--ink);margin:0 0 24px}.mom-header .mom-title{margin:0}.mom-csv-btn{display:inline-block;padding:12px 28px;font-size:18px;font-weight:700;font-family:inherit;color:var(--bubble-out-ink);background:var(--accent);border-radius:999px;text-decoration:none;transition:background .15s,transform .1s;white-space:nowrap}.mom-csv-btn:hover{background:var(--accent-deep)}.mom-csv-btn:active{transform:scale(.97)}.mom-details{margin:0 0 24px;border:1px solid rgba(44,36,23,.1);border-radius:8px;overflow:hidden}.mom-details-summary{padding:10px 14px;font-size:13px;font-weight:600;color:var(--ink-soft);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;list-style:none;display:flex;align-items:center;gap:6px;background:rgba(44,36,23,.03)}.mom-details-summary:before{content:"▶";font-size:10px;transition:transform .15s;display:inline-block}details[open] .mom-details-summary:before{transform:rotate(90deg)}.mom-details-summary::-webkit-details-marker{display:none}.mom-details-body{padding:16px 18px;font-size:14px;line-height:1.7;color:var(--ink);border-top:1px solid rgba(44,36,23,.08)}.mom-details-body p{margin:0 0 12px}.mom-details-body ol{margin:0 0 12px;padding-left:20px}.mom-details-body li{margin-bottom:8px}.mom-details-body pre{margin:6px 0 0;padding:8px 12px;background:rgba(44,36,23,.05);border-radius:6px;overflow-x:auto}.mom-details-body code{font-family:Courier New,monospace;font-size:12px}.mom-pending{font-size:13px;color:var(--ink-soft);margin:0 0 16px;font-style:italic}.mom-empty{color:var(--ink-soft);font-size:16px}.mom-error{color:var(--error);font-size:15px;margin:0 0 16px}.mom-table-wrap{overflow-x:auto}.mom-table{width:100%;border-collapse:collapse;font-size:14px}.mom-table th{text-align:left;padding:8px 12px;border-bottom:2px solid rgba(44,36,23,.12);color:var(--ink-soft);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.mom-table td{padding:10px 12px;border-bottom:1px solid rgba(44,36,23,.06);vertical-align:top}.mom-table tr:last-child td{border-bottom:none}.row-tablet td{background:rgba(217,119,87,.04)}.row-parent td{background:transparent}.td-seq{color:var(--ink-soft);font-size:12px;width:36px}.td-from{font-weight:700;white-space:nowrap;width:64px}.td-msg{max-width:360px;word-break:break-word}.td-ts{font-size:13px}.td-certified,.td-ts{white-space:nowrap;color:var(--ink-soft)}.mom-form{display:flex;flex-direction:column;gap:12px;width:100%;max-width:320px}.mom-label{font-size:14px;color:var(--ink-soft);font-weight:600}.mom-input{padding:12px 16px;font-size:18px;font-family:inherit;border:1.5px solid rgba(44,36,23,.15);border-radius:10px;background:var(--bg);color:var(--ink);outline:none;letter-spacing:.2em}.mom-input:focus{border-color:var(--accent)}.mom-btn{padding:12px;font-size:16px;font-weight:700;font-family:inherit;color:var(--bubble-out-ink);background:var(--accent);border:none;border-radius:10px;cursor:pointer;transition:background .15s}.mom-btn:hover{background:var(--accent-deep)}