:root{--paper:#f4f3ff;--dots:#1f1a4e21;--card:#fff;--card-2:#fbfaff;--wash:#ebe8ff;--hair:#d6d2f2;--ink:#1f1a4e;--ink-soft:#5d5987;--ink-faint:#8f8bb3;--stroke:#1f1a4e;--shadow:#1f1a4e;--violet:#5b3df5;--violet-deep:#4326d9;--violet-soft:#cfc8ff;--sun:#ffd23f;--sun-deep:#f5b800;--sun-tint:#fff6cf;--on-sun:#1f1a4e;--clue:#ff4f6d;--clue-tint:#ffe3e8;--mint:#1fc98f;--mint-tint:#dcf8ec;--sea:#17b6d6;--sheet:#fff;--scrim:#1f1a4e73;--skeleton:#ece9ff;--system:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--marker:"Momo Marker", var(--system);--sans:var(--marker);--display:var(--marker);--mail:var(--system);--t-xs:.78rem;--t-sm:.875rem;--t-md:.95rem;--t-lg:1.2rem;--t-xl:1.5rem;--t-2xl:1.9rem;--line:2.5px solid var(--stroke);--line-thin:2px solid var(--stroke);--pop:4px 4px 0 var(--shadow);--pop-sm:2px 2px 0 var(--shadow);--pop-lg:6px 6px 0 var(--shadow);--r-card:18px;--r-ctl:12px;--ease-pop:cubic-bezier(.2, 1.35, .4, 1);--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-in:cubic-bezier(.5, 0, .75, 0);--enter:.24s;--leave:.17s;--titlebar:40px;color-scheme:light}:root[data-theme=dark]{--paper:#14121f;--dots:#cfc8ff12;--card:#1e1b2e;--card-2:#221f33;--wash:#2a2640;--hair:#353050;--ink:#ece8ff;--ink-soft:#a39cba;--ink-faint:#7a7397;--stroke:#514a78;--shadow:#07060d;--violet:#9d87ff;--violet-deep:#b9a8ff;--violet-soft:#3d3566;--sun-tint:#3a3220;--clue-tint:#3d1f2a;--mint-tint:#183a30;--sheet:#fbf8f0;--scrim:#05040a99;--skeleton:#29253d;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{background-color:var(--paper);background-image:radial-gradient(circle, var(--dots) 1.2px, transparent 1.4px);background-size:22px 22px}html,body,#root{height:100%;overflow:hidden}:root[data-font=all]{--mail:var(--marker)}:root[data-font=system]{--sans:var(--system);--display:var(--system)}.reader__subject,.compose__body,#compose-subject{--sans:var(--mail);--display:var(--mail);font-family:var(--mail)}body{color:var(--ink);font-family:var(--sans);font-size:var(--t-md);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}h1,h2,h3{font-family:var(--display);margin:0;font-weight:400;line-height:1.3}p{margin:0}a{color:var(--violet)}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--violet);outline-offset:2px}::selection{background:var(--sun);color:var(--on-sun)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-thumb{background:var(--violet-soft) padding-box;min-height:40px;box-shadow:inset 0 0 0 2px var(--stroke);border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background-color:var(--sun)}::-webkit-scrollbar-thumb:active{background-color:var(--violet)}::-webkit-scrollbar-button{display:none}input,textarea,select{font:inherit;color:inherit;background:var(--card);border:var(--line-thin);border-radius:var(--r-ctl);width:100%;padding:.45rem .7rem}select{cursor:pointer}input::placeholder,textarea::placeholder{color:var(--ink-faint)}input:focus,textarea:focus,select:focus{box-shadow:0 0 0 3px var(--sun);outline:none}textarea{resize:vertical;line-height:1.7}.muted{color:var(--ink-soft);font-size:var(--t-sm)}.error-text{color:var(--clue);font-size:var(--t-sm)}.notice{background:var(--wash);border:var(--line-thin);border-radius:var(--r-ctl);font-size:var(--t-sm);padding:.7rem .95rem}.notice--warn{background:var(--sun-tint)}.notice--error{background:var(--clue-tint)}.notice--ok{background:var(--mint-tint)}.tag{font-family:var(--display);font-size:var(--t-xs);color:var(--on-sun);background:var(--sun);border:1.5px solid var(--stroke);white-space:nowrap;border-radius:999px;align-items:center;gap:.3em;padding:0 .55em;line-height:1.7;display:inline-flex}.tag--dim{color:var(--ink-soft);background:var(--wash);border-color:var(--hair)}.icon{flex-shrink:0;display:block}kbd{text-align:center;background:var(--card);border:1.5px solid var(--stroke);min-width:1.6em;box-shadow:0 2px 0 var(--shadow);border-radius:6px;padding:0 .45em;font-family:ui-monospace,Consolas,monospace;font-size:.78rem;line-height:1.6;display:inline-block}.btn{font-family:var(--display);font-size:var(--t-md);cursor:pointer;border-radius:var(--r-ctl);border:var(--line);background:var(--card);color:var(--ink);box-shadow:var(--pop-sm);white-space:nowrap;justify-content:center;align-items:center;gap:.4rem;padding:.5rem 1.05rem;line-height:1.3;transition:transform 90ms,box-shadow 90ms,background-color .12s;display:inline-flex}.btn:hover:not(:disabled){box-shadow:3px 3px 0 var(--shadow);transform:translate(-1px,-1px)}.btn:active:not(:disabled){box-shadow:0 0 0 var(--shadow);transform:translate(2px,2px)}.btn:disabled{cursor:not-allowed;opacity:.5;box-shadow:none}.btn--primary{background:var(--sun);color:var(--on-sun)}.btn--primary:hover:not(:disabled){background:#ffdb5c}.btn--quiet:hover:not(:disabled){background:var(--wash)}.btn--danger{background:var(--clue);color:#fff}.btn--small{font-size:var(--t-sm);border-width:2px;border-radius:10px;gap:.3rem;padding:.22rem .65rem}.btn--icon{border-width:2px;border-radius:10px;padding:.38rem}.bare{all:unset;box-sizing:border-box;cursor:pointer;color:var(--ink-soft);transition:transform .12s var(--ease-pop), color .12s;border-radius:8px;place-items:center;display:inline-grid}.bare:hover{color:var(--ink);transform:scale(1.12)}.bare:focus-visible{outline:3px solid var(--violet);outline-offset:1px}.switch{all:unset;box-sizing:border-box;border:var(--line-thin);background:var(--wash);cursor:pointer;border-radius:999px;flex-shrink:0;width:46px;height:26px;transition:background-color .16s;position:relative}.switch:after{content:"";border:2px solid var(--stroke);background:var(--card);width:18px;height:18px;box-shadow:1px 1px 0 var(--shadow);transition:transform .2s var(--ease-pop);border-radius:50%;position:absolute;top:2px;left:2px}.switch[aria-checked=true]{background:var(--mint)}.switch[aria-checked=true]:after{transform:translate(20px)}.switch:focus-visible{outline:3px solid var(--violet);outline-offset:2px}.segmented{border:var(--line-thin);background:var(--card);border-radius:999px;display:inline-flex;overflow:hidden}.segmented button{all:unset;cursor:pointer;font-size:var(--t-sm);color:var(--ink-soft);white-space:nowrap;padding:.12rem .75rem}.segmented button+button{border-left:1.5px solid var(--hair)}.segmented button[aria-pressed=true]{background:var(--ink);color:var(--card);font-weight:700}:root[data-theme=dark] .segmented button[aria-pressed=true]{background:var(--violet);color:#14121f}.segmented button:focus-visible{outline:3px solid var(--violet);outline-offset:-3px}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes sticker-in{0%{opacity:0;transform:translateY(14px)scale(.94)rotate(-1.2deg)}}@keyframes sticker-out{to{opacity:0;transform:translateY(8px)scale(.96)rotate(.8deg)}}@keyframes pop-in{0%{opacity:0;transform:translateY(-6px)scale(.96)}}@keyframes pop-up-in{0%{opacity:0;transform:translateY(10px)scale(.96)}}@keyframes badge-pop{0%{transform:scale(.4)}60%{transform:scale(1.25)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes stamp-press{0%{opacity:0;transform:scale(1.8)rotate(-24deg)}60%{opacity:1;transform:scale(.9)rotate(-4deg)}to{transform:scale(1)rotate(-8deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}
