:root{--ivory:#f8f6f1;--ivory-2:#f1ede5;--ink:#1a1430;--ink-2:#3b3355;--muted:#655e78;--faint:#a39cb4;--line:#e8e3ee;--line-2:#d9d0e6;--violet:#28134f;--deep:#160a2e;--deep-2:#1c0d3a;--royal:#563090;--royal-2:#6a3fb0;--lav:#9960de;--hl:#c19af5;--soft:#f2ecfb;--soft-2:#e9dff8;--ok:#1e7448;--ok-soft:#e6f4ec;--warn:#9a5800;--warn-soft:#fff4e0;--bad:#b42318;--bad-soft:#fdecea;--r:18px;--r-sm:12px;--sh:0 1px 2px #28134f0d,0 10px 30px #28134f0f;--grad:linear-gradient(135deg,#6a3fb0,#563090 55%,#45247a);--head:"Poppins",system-ui,sans-serif;--body:"Inter",system-ui,sans-serif;--mono:"JetBrains Mono",ui-monospace,monospace}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--ivory);color:var(--ink);font:14px/1.5 var(--body);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--head);color:var(--ink);letter-spacing:-.01em;margin:0}a{color:var(--royal)}button,input,textarea,select{font:inherit;color:inherit}.btn{background:var(--grad);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:999px;padding:9px 18px;font-weight:600}.btn:disabled{opacity:.5;cursor:default}.btn.ghost{color:var(--royal);border:1px solid var(--line-2);background:#fff}.btn.sm{padding:6px 12px;font-size:13px}.btn.danger{color:var(--bad);background:#fff;border:1px solid #f3c5c0}.input{border:1px solid var(--line-2);border-radius:var(--r-sm);background:#fff;outline:none;width:100%;padding:10px 12px}.input:focus{border-color:var(--lav);box-shadow:0 0 0 3px var(--soft-2)}textarea.input{resize:vertical;min-height:120px}.card{border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);background:#fff}.muted{color:var(--muted)}.faint{color:var(--faint)}.err{color:var(--bad);background:var(--bad-soft);border-radius:var(--r-sm);padding:8px 12px;font-size:13px}.okmsg{color:var(--ok);background:var(--ok-soft);border-radius:var(--r-sm);padding:8px 12px;font-size:13px}.pill{background:var(--soft);color:var(--royal);border-radius:999px;padding:2px 9px;font-size:11px;font-weight:600;display:inline-block}.pill.bad{background:var(--bad-soft);color:var(--bad)}.pill.ok{background:var(--ok-soft);color:var(--ok)}.auth{background:radial-gradient(1200px 600px at 20% -10%,var(--soft-2),transparent),var(--ivory);place-items:center;min-height:100%;padding:24px;display:grid}.auth .card{width:100%;max-width:380px;padding:32px}.auth form{gap:12px;margin-top:20px;display:grid}.brand{font-family:var(--head);align-items:center;gap:10px;font-size:17px;font-weight:700;display:flex}.brand i{background:var(--grad);color:#fff;border-radius:9px;place-items:center;width:30px;height:30px;font-size:15px;font-style:normal;display:grid}.shell{grid-template-columns:220px 1fr;height:100vh;display:grid}.side{background:var(--deep);color:#e9e2f7;flex-direction:column;gap:4px;padding:18px 12px;display:flex}.side .brand{color:#fff;padding:0 8px 18px}.side a{color:#cfc4e6;border-radius:10px;align-items:center;gap:10px;padding:9px 12px;font-weight:500;text-decoration:none;display:flex}.side a:hover{background:var(--deep-2);color:#fff}.side a.on{background:var(--royal);color:#fff}.side .me{border-top:1px solid #2e1d52;margin-top:auto;padding:12px;font-size:13px}.side .me button{color:var(--hl);cursor:pointer;background:0 0;border:0;margin-top:4px;padding:0}.main{flex-direction:column;min-width:0;display:flex;overflow:hidden}.panes{grid-template-columns:200px 360px 1fr;height:100%;min-height:0;display:grid}.pane{border-right:1px solid var(--line);background:#fff;min-height:0;overflow:auto}.pane.first{background:var(--ivory-2)}.pane:last-child{background:var(--ivory);border-right:0}.pane-h{z-index:1;background:inherit;border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:14px 16px;display:flex;position:sticky;top:0}.nav-item{cursor:pointer;color:var(--ink-2);border-radius:10px;justify-content:space-between;align-items:center;margin:2px 8px;padding:8px 14px;display:flex}.nav-item:hover{background:var(--soft)}.nav-item.on{background:var(--soft-2);color:var(--violet);font-weight:600}.count{background:var(--royal);color:#fff;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700}.row{border-bottom:1px solid var(--line);cursor:pointer;padding:12px 16px}.row:hover{background:var(--soft)}.row.on{background:var(--soft-2)}.row.unread .who,.row.unread .sub{color:var(--ink);font-weight:700}.row .top{justify-content:space-between;gap:8px;display:flex}.row .who{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2);overflow:hidden}.row .when{color:var(--faint);white-space:nowrap;font-size:12px}.row .sub{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:13px;overflow:hidden}.row.upset{box-shadow:inset 3px 0 0 var(--bad)}.reader{max-width:900px;padding:24px}.reader .meta{color:var(--muted);gap:2px;margin:8px 0 16px;font-size:13px;display:grid}.mailframe{border:1px solid var(--line);border-radius:var(--r-sm);background:#fff;width:100%;min-height:420px}.plain{white-space:pre-wrap;word-break:break-word;border:1px solid var(--line);border-radius:var(--r-sm);background:#fff;padding:16px;font-size:14px}.atts{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.att{border:1px solid var(--line-2);color:var(--ink-2);background:#fff;border-radius:10px;padding:6px 10px;font-size:13px;text-decoration:none}.compose{gap:10px;max-width:820px;padding:24px;display:grid}.compose label{color:var(--muted);font-size:12px;font-weight:600}.empty{height:100%;color:var(--faint);text-align:center;place-items:center;padding:40px;display:grid}.pager{color:var(--muted);justify-content:space-between;align-items:center;padding:10px 16px;font-size:13px;display:flex}.back{display:none}.chat{flex-direction:column;height:100%;min-height:0;display:flex}.msgs{flex-direction:column;flex:1;gap:12px;padding:18px 22px;display:flex;overflow:auto}.msg{gap:10px;max-width:760px;display:flex}.av{background:var(--grad);color:#fff;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:13px;font-weight:700;display:grid}.msg .b{min-width:0}.msg .n{font-size:13px;font-weight:600}.msg .n span{color:var(--faint);margin-left:6px;font-size:12px;font-weight:400}.msg .t{white-space:pre-wrap;word-break:break-word}.sendbar{border-top:1px solid var(--line);background:#fff;gap:8px;padding:12px 16px;display:flex}.sendbar textarea{flex:1;min-height:44px;max-height:160px}.sec{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);justify-content:space-between;align-items:center;padding:14px 22px 4px;font-size:11px;display:flex}.sec button{color:var(--royal);cursor:pointer;background:0 0;border:0;font-size:16px;line-height:1}.page{height:100%;padding:28px;overflow:auto}.grid2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.card.pad{padding:20px}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:8px;font-weight:600}td{border-bottom:1px solid var(--line);vertical-align:top;padding:8px}.form-inline{gap:10px;display:grid}@media (max-width:900px){.shell{grid-template-rows:1fr auto;grid-template-columns:1fr;height:100dvh}.side{flex-direction:row;order:2;justify-content:space-around;gap:0;padding:6px}.side .brand,.side .me{display:none}.side a{flex-direction:column;gap:2px;padding:6px 10px;font-size:11px}.main{order:1}.panes{grid-template-columns:1fr}.panes .pane{display:none}.panes[data-view=list] .pane.list,.panes[data-view=nav] .pane.first,.panes[data-view=read] .pane.read{display:block}.back{display:inline-flex}.grid2{grid-template-columns:1fr}.page,.reader,.compose{padding:16px}}
