*,
*::before,
*::after {margin:0;padding:0;box-sizing:border-box}
:root {
      --card-2:var(--surface-2);
      --muted:var(--surface-3);
      --selected:var(--brand-soft);
      --brand-fg:var(--text-on-brand);
      --fav-plate:#fff;
      --rs:var(--radius-md);
      --ease-out:var(--ease-out-expo);
      --ease-spring:var(--spring-overshoot);
    }
html[data-theme="dark"] {--fav-plate:#eef1f8}
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea {color:var(--text);background:var(--muted);border-color:var(--border)}
html[data-theme="dark"] ::selection {background:var(--active);color:var(--text)}
html[data-theme="dark"] ::placeholder {color:var(--text3)}
html[data-theme="dark"] .cmp-win {
      background:var(--surface);
      box-shadow:var(--shadow-xl);
    }
html[data-theme="dark"] .el-row {border-bottom-color:var(--border)}
html[data-theme="dark"] .el-list::-webkit-scrollbar-thumb {background:var(--border-s)}
html[data-theme="dark"] .ct-bar {background:var(--surface);border-bottom-color:var(--border)}
html[data-theme="dark"] .ev {background:var(--surface)}
html[data-theme="dark"] .el-row.unread {background:transparent}
html[data-theme="dark"] .el-row.sel {background:var(--active)}
html[data-theme="dark"] .el-row:hover {background:var(--hover)}
html[data-theme="dark"] .cmp-head {background:transparent}
html[data-theme="dark"] .sb-irow {background:var(--surface-2)}
html[data-theme="dark"] .sb-irow .sb-dom {background:rgba(255,255,255,.04);border-left-color:var(--border-l)}
html[data-theme="dark"] .sb-irow .sb-rand {border-left-color:var(--border-l)}
html[data-theme="dark"] .sb-irow .sb-dom select {color:var(--text)}
html[data-theme="dark"] .sb-irow .sb-dom select option {background:var(--card);color:var(--text)}
* {-webkit-tap-highlight-color:transparent}
html,
body {height:100%;overflow:hidden;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body {font-family:var(--font);background:var(--bg);color:var(--text);display:flex;flex-direction:column;font-size:14px}
button,
input,
select,
textarea {font-family:var(--font)}
button {user-select:none;-webkit-user-select:none;cursor:pointer;touch-action:manipulation}
a,
.el-row,
.r-star,
.sb-filter,
.resizer {touch-action:manipulation}
::selection {background:var(--brand);color:#fff}
.hd-menu {width:40px;height:40px;display:none;align-items:center;justify-content:center;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--text);transition:all .15s var(--ease)}
.hd-menu svg {width:19px;height:19px}
.ws {flex:1;display:flex;overflow:hidden;position:relative}
.sb {width:100%;flex-shrink:0;display:flex;flex-direction:column;overflow:visible;padding:20px 16px;border-right:1px solid var(--border-s)}
@media(min-width:1024px) {
.sb {width:min(100%,20rem)}
}
@media(min-width:1280px) {
.sb {width:min(100%,21rem)}
}
.sb-card {flex:1;min-height:0;display:flex;flex-direction:column;border-radius:0;border:0;background:transparent;box-shadow:none;overflow:hidden}
.sb-inner {flex:1;min-height:0;display:flex;flex-direction:column;gap:16px;padding:0;background:none;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.sb-inner::-webkit-scrollbar {width:3px}
.sb-inner::-webkit-scrollbar-thumb {background:rgba(0,0,0,.06);border-radius:3px}
html[data-theme="dark"] .sb-inner::-webkit-scrollbar-thumb {background:rgba(255,255,255,.08)}
.sb-head {display:flex;flex-direction:column;gap:2px;padding-bottom:12px;border-bottom:1px solid var(--border-s)}
.sb-title {font-size:var(--fs-headline);font-weight:700;color:var(--text);letter-spacing:var(--ls-headline);line-height:1.2}
.sb-sub {font-size:var(--fs-footnote);font-weight:500;color:var(--text3);line-height:1.3}
.sb-form {display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:var(--radius);border:1px solid var(--border-s);background:var(--surface);box-shadow:none}
.sb-lbl {font-size:var(--fs-caption2);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text3)}
.sb-irow {display:flex;height:44px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);overflow:hidden;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}
.sb-irow:focus-within {border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}
.sb-irow input {flex:1;min-width:0;border:none;background:transparent;padding:0 12px;font-family:monospace;font-size:13px;color:var(--text);outline:none}
.sb-irow input::placeholder {color:var(--text3);font-family:var(--font)}
.sb-irow .sb-dom {border-left:1px solid var(--border);background:rgba(241,245,249,.5);display:flex;align-items:center;flex-shrink:0}
.sb-irow .sb-dom select {align-self:stretch;border:none;background:transparent;padding:0 6px 0 10px;font-family:monospace;font-size:12px;font-weight:600;color:var(--brand);cursor:pointer;outline:none;-webkit-appearance:auto}
.sb-irow .sb-rand {border-left:1px solid var(--border);padding:0 10px;background:transparent;border-right:none;border-top:none;border-bottom:none;color:var(--text3);display:flex;align-items:center;transition:all .15s var(--ease);flex-shrink:0}
.sb-irow .sb-rand:hover {background:var(--muted);color:var(--brand)}
.sb-irow .sb-rand svg {width:18px;height:18px}
.sb-hint-sm {font-size:11.5px;color:var(--text3);line-height:1.3}
.sb-btns2 button {height:40px;border-radius:var(--rs);font-size:13px;font-weight:600;transition:all .15s var(--ease);display:flex;align-items:center;justify-content:center;gap:6px;flex:1}
.sb-btns2 button:active {transform:scale(.98)}
.sb-btn1 {background:var(--brand);color:var(--text-on-brand);border:0;box-shadow:none}
.sb-btn1:hover {filter:brightness(1.08)}
.sb-btn1 svg {width:16px;height:16px}
.sb-addr {display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:var(--radius);border:1px solid var(--border-s);background:var(--surface)}
.sb-addr-box {min-height:48px;padding:12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);font-family:var(--mono);font-size:12.5px;font-weight:500;color:var(--text);word-break:break-all;box-shadow:none}
.sb-addr-box b {color:var(--brand)}
.sb-btns2 {display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sb-btn2 {height:36px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);font-size:13px;font-weight:500;color:var(--text);display:flex;align-items:center;justify-content:center;gap:6px;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}
.sb-btn2:hover {background:var(--surface-3);border-color:var(--border-s)}
html[data-theme="dark"] .sb-btn2 {background:var(--button);border-color:var(--border);color:var(--text)}
html[data-theme="dark"] .sb-btn2:hover {background:var(--surface-3);border-color:var(--border-s)}
.sb-btn2 svg {width:16px;height:16px}
.sb-hist {display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:var(--radius);border:1px solid var(--border-s);background:var(--surface)}
.sb-hist[hidden] {display:none}
.sb-hist-head {display:flex;align-items:center;gap:8px}
.sb-hist-clear {margin-left:auto;background:none;border:0;font-family:inherit;font-size:11px;font-weight:600;color:var(--text3);cursor:pointer;padding:2px 4px;border-radius:6px;transition:color var(--dur-fast) var(--ease)}
.sb-hist-clear:hover {color:var(--err)}
.sb-hist-list {display:flex;flex-direction:column;gap:2px}
.sb-hist-item {position:relative;display:flex;align-items:center}
.sb-hist-row {flex:1;min-width:0;display:flex;align-items:center;gap:8px;height:40px;padding:0 30px 0 10px;border-radius:7px;background:none;border:0;font-family:inherit;text-align:left;cursor:pointer;color:var(--text2);transition:background var(--dur-fast) var(--ease)}
.sb-hist-row:hover {background:var(--hover);color:var(--text)}
.sb-hist-row.on {background:var(--brand-soft);color:var(--brand)}
.sb-hist-main {flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.sb-hist-addr {font-family:var(--mono);font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-hist-row.on .sb-hist-addr {font-weight:700}
.sb-hist-time {font-size:10.5px;font-weight:500;color:var(--text3)}
.sb-hist-unread {flex-shrink:0;min-width:18px;height:17px;padding:0 5px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:var(--brand);color:var(--text-on-brand);font-size:10px;font-weight:700;font-variant-numeric:tabular-nums}
.sb-hist-unread[data-empty="1"] {display:none}
.sb-hist-x {position:absolute;right:4px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:0;background:none;color:var(--text3);border-radius:6px;cursor:pointer;opacity:0;transition:opacity var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}
.sb-hist-item:hover .sb-hist-x,
.sb-hist-x:focus-visible {opacity:1}
.sb-hist-x:hover {color:var(--err)}
.sb-hist-x svg {width:13px;height:13px}
.sb-hist-more {background:none;border:0;font-family:inherit;font-size:12px;font-weight:600;color:var(--brand);cursor:pointer;padding:4px 6px;border-radius:6px;text-align:left;align-self:flex-start}
.sb-hist-more[hidden] {display:none}
.toast-undo {background:none;border:0;font-family:inherit;font-size:13px;font-weight:700;color:var(--brand);cursor:pointer;margin-left:14px;padding:0}
.sb-bottom {display:flex;flex-direction:column;gap:6px;margin-top:auto;padding:10px;border-radius:var(--radius);border:1px solid var(--border-s);background:var(--surface)}
.ct {flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;padding:0}
.ct-card {flex:1;display:flex;flex-direction:column;border-radius:0;border:0;background:transparent;box-shadow:none;overflow:hidden;min-height:0}
.ct-inner {flex:1;display:flex;flex-direction:column;min-height:0;background:none}
.ct-bar {display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}
@media(min-width:640px) {
.ct-bar {padding:10px 20px}
}
.ct-bar-accent {display:none !important}
.ct-bar-title {display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:var(--fs-headline);font-weight:700;color:var(--text);letter-spacing:var(--ls-headline)}
.ct-bar-right {margin-left:auto;display:flex;gap:4px;align-items:center}
.ct-tbtn {display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--rxs);border:1px solid transparent;background:transparent;font-size:12px;font-weight:600;color:var(--text3);transition:all .15s var(--ease)}
.ct-tbtn:hover {border-color:var(--border);background:var(--muted);color:var(--text)}
.ct-tbtn svg {width:14px;height:14px}
.ct-tbtn.danger:hover {border-color:rgba(255,77,79,.35);background:var(--red-soft,rgba(255,77,79,.08));color:var(--red)}
.tb-search {display:flex;align-items:center;gap:8px;width:250px;height:36px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);transition:border-color var(--dur-fast),box-shadow var(--dur-fast),background var(--dur-fast)}
.tb-search:focus-within {border-color:var(--brand);background:var(--surface);box-shadow:0 0 0 3px var(--brand-soft)}
.tb-search svg {width:15px;height:15px;color:var(--text3);flex-shrink:0}
.tb-search input {align-self:stretch;flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:13.5px;color:var(--text);font-family:inherit}
.tb-search input::placeholder {color:var(--text3)}
.tb-icon {width:36px;height:36px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text2);display:grid;place-items:center;cursor:pointer;transition:background var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast)}
.tb-icon:hover {color:var(--text);background:var(--surface-3);border-color:var(--border-s)}
.tb-icon svg {width:17px;height:17px}
.tb-sort {min-width:auto;height:36px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text2);display:inline-flex;align-items:center;justify-content:space-between;gap:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast);font-family:inherit}
.tb-sort:hover {color:var(--text);background:var(--surface-3);border-color:var(--border-s)}
.tb-sort svg {width:16px;height:16px}
.tb-icon:active,
.tb-sort:active {transform:scale(.96)}
@media(max-width:960px) {
.tb-search {width:180px}
.tb-sort {min-width:auto;padding:0 10px}
}
@media(max-width:640px) {
.ct-bar.mp-bar {flex-wrap:nowrap;padding:9px 12px;gap:8px}
.ct-bar-title,
.ct-bar-accent,
#navBadge {display:none}
.ct-bar-right {width:auto;margin-left:0;gap:6px;flex-wrap:nowrap;flex:1;min-width:0}
.tb-search {flex:1;min-width:0;width:auto;height:38px;padding:0 12px}
.tb-icon {width:38px;height:38px;flex-shrink:0}
.tb-sort {min-width:38px;width:38px;height:38px;padding:0;justify-content:center;flex-shrink:0}
.tb-sort span {display:none}
.mob-addr {padding:8px 12px;gap:7px}
.mob-addr-text {font-size:12.5px}
.mob-addr-copy,
.mob-addr-new,
.mob-addr-hist {position:relative}
.mob-addr-copy::after,
.mob-addr-new::after,
.mob-addr-hist::after {content:'';position:absolute;inset:-5px}
.el-row {padding:12px 14px}
}
.ct-grid {flex:1;display:flex;min-height:0}
.el {width:300px;min-width:220px;max-width:420px;flex-shrink:0;display:flex;flex-direction:column;background:transparent;overflow:hidden}
@media(min-width:1400px) {
.el {width:340px}
}
.el-list {flex:1;overflow-y:auto}
.el-list::-webkit-scrollbar {width:3px}
.el-list::-webkit-scrollbar-thumb {background:rgba(0,0,0,.06);border-radius:3px}
.el-row {display:grid;grid-template-columns:auto 32px 1fr auto;align-items:center;column-gap:10px;padding:11px 16px 11px 18px;border-bottom:1px solid var(--border);cursor:pointer;position:relative;z-index:1;pointer-events:auto;transition:background .18s cubic-bezier(.32,.72,0,1),opacity .2s,transform .2s;will-change:transform,opacity}
.el-row > * {pointer-events:none}
.el-row:hover {background:var(--hover)}
.el-row.unread {background:transparent}
.el-row.unread::after {content:'';position:absolute;left:6px;top:50%;transform:translateY(-50%);width:8px;height:8px;border-radius:50%;background:var(--brand)}
.el-row.sel {background:var(--active);box-shadow:none}
.el-row .r-star {position:relative;grid-column:1;flex-shrink:0;pointer-events:auto}
.el-row .r-ava {grid-column:2;width:32px;height:32px;border-radius:50%;background:var(--gradient);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0}
.el-row .r-main {grid-column:3;min-width:0;display:flex;flex-direction:column;gap:2px}
.el-row .r-from {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;color:var(--text);font-weight:500}
.el-row.unread .r-from {font-weight:700}
.el-row .r-subj {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;color:var(--text3)}
.el-row.unread .r-subj {color:var(--text2)}
.el-row .r-date {grid-column:4;font-size:11px;color:var(--text3);font-weight:400;white-space:nowrap;align-self:start;padding-top:2px}
.el-row.unread .r-date {color:var(--text3);font-weight:400}
.el-empty {display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text3);gap:16px;padding:32px;text-align:center}
.el-empty p {font-size:15px;font-weight:600;color:var(--text)}
.el-empty span {font-size:13px;color:var(--text3)}
.resizer {width:1px;flex-shrink:0;background:var(--border-s);cursor:col-resize;position:relative;z-index:5}
.resizer:hover,
.resizer.active {background:var(--brand);width:3px;margin:0 -1px}
.ev {flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--surface);min-width:0}
.ev-empty {display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:16px;padding:40px;text-align:center}
.ev-empty p {font-size:15px;font-weight:600;color:var(--text)}
.ev-empty span {font-size:13px;color:var(--text3)}
.ev-head {padding:18px 24px 14px;border-bottom:1px solid var(--border);flex-shrink:0}
.ev-subj {font-size:var(--fs-title3);font-weight:700;color:var(--text);display:flex;align-items:center;gap:8px;letter-spacing:var(--ls-title3);line-height:var(--lh-tight)}
.ev-label {font-size:10px;padding:3px 10px;border-radius:20px;font-weight:700;color:var(--brand);background:var(--brand-soft);letter-spacing:.3px;text-transform:uppercase}
.ev-sender {display:flex;align-items:center;gap:12px;padding:14px 24px;border-bottom:1px solid var(--border);flex-shrink:0}
.ev-avatar {width:40px;height:40px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0;background-size:64% 64%;background-repeat:no-repeat;background-position:center}
.ev-s-info {flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.ev-s-name {font-size:13px;font-weight:600;color:var(--text);display:flex;flex-wrap:wrap;align-items:baseline;gap:5px;min-width:0}
.ev-s-email {cursor:pointer;border-radius:4px;transition:background .12s,color .12s}
.ev-s-email:hover {color:var(--brand);background:var(--brand-soft)}
.ev-s-name > span:first-child {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.ev-s-email {font-size:11px;color:var(--text3);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:0 1 auto}
.ev-s-to {font-size:11px;color:var(--text3);margin-top:1px}
.ev-s-right {display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}
.ev-s-date {font-size:11px;color:var(--text3);font-weight:500;white-space:nowrap}
.ev-s-acts {display:flex;gap:4px;flex-shrink:0}
.ev-s-acts button {height:32px;border:1px solid transparent;background:none;border-radius:var(--rxs);color:var(--text3);display:flex;align-items:center;justify-content:center;gap:6px;padding:0 9px;font-size:11px;font-weight:700;transition:all .15s var(--ease)}
.ev-s-acts button:hover {border-color:rgba(99,102,241,.3);background:var(--brand-soft);color:var(--brand)}
.ev-s-acts button.danger {width:32px;padding:0}
.ev-s-acts button.danger:hover {border-color:rgba(255,77,79,.35);background:var(--red-soft,rgba(255,77,79,.08));color:var(--red)}
.ev-s-acts svg {width:16px;height:16px}
.has-favicon {box-shadow:0 0 0 1px var(--border-s)}
.star-btn.starred svg {fill:#fbbf24;stroke:#f59e0b}
.star-btn.starred {color:#f59e0b !important}
.star-btn:hover svg {stroke:#f59e0b}
.r-star {flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--text3);cursor:pointer;transition:all .12s;position:relative}
.r-star::after {content:'';position:absolute;inset:-12px}
.r-star:hover {color:#f59e0b;transform:scale(1.15)}
.r-star.on {color:#f59e0b}
.r-star.on svg {fill:#fbbf24}
.r-star svg {width:14px;height:14px}
.sb-filters {display:flex;flex-direction:column;gap:2px;padding:8px;border-radius:var(--radius);border:1px solid var(--border-s);background:var(--surface)}
.sb-filter {display:flex;align-items:center;gap:10px;height:34px;padding:0 10px;border-radius:7px;color:var(--text2);cursor:pointer;transition:background var(--dur-fast) var(--ease);background:none;border:0;font-family:inherit;font-size:13px;font-weight:500;text-align:left;width:100%}
.sb-filter:hover {background:var(--hover);color:var(--text)}
.sb-filter.active {background:var(--brand-soft);color:var(--brand);border:0;box-shadow:none;font-weight:600}
.sb-filter svg {width:15px;height:15px;flex-shrink:0}
.sb-count {margin-left:auto;font-size:11px;font-weight:600;color:var(--text3);tabular-nums:true;font-variant-numeric:tabular-nums;padding:0 2px;min-width:18px;text-align:right}
.sb-filter.active .sb-count {color:var(--brand)}
.sb-count.sb-count-danger {color:var(--err)}
.sb-count[data-empty="1"] {display:none}
.ev-body {flex:1;overflow-y:auto;padding:0;background:var(--card)}
.ev-body::-webkit-scrollbar {width:3px}
.ev-body::-webkit-scrollbar-thumb {background:var(--border-s);border-radius:3px}
.ev-iframe {width:100%;border:none;min-height:320px;background:var(--card);display:block}
.ev-plain {
      padding:20px 28px 28px; margin:0;
      white-space:pre-wrap;
      font-family:'Google Sans','Roboto','Segoe UI',-apple-system,BlinkMacSystemFont,sans-serif;
      font-size:14px; line-height:1.55; color:var(--text);
      background:var(--card); word-wrap:break-word; overflow-wrap:anywhere;
      -webkit-font-smoothing:antialiased;
    }
.ev-plain a {color:var(--brand);text-decoration:none;word-break:break-all}
.ev-plain a:hover {text-decoration:underline}
.ev-plain.paper {
      margin:16px; border-radius:14px; padding:24px 20px 32px;
      background:#fff; color:#202124;
      box-shadow:0 1px 2px rgba(0,0,0,.4),0 16px 40px -16px rgba(0,0,0,.7);
    }
.ev-plain.paper a {color:#1a73e8}
.toast {position:fixed;bottom:calc(24px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);background:var(--mat-thick);backdrop-filter:var(--blur-thin);-webkit-backdrop-filter:var(--blur-thin);border:1px solid var(--border-l);color:var(--text);padding:10px 22px;border-radius:var(--radius-full);font-size:13px;font-weight:600;z-index:9999;box-shadow:var(--shadow-lg);animation:fadeUp .35s var(--ease)}
@keyframes fadeUp {from{opacity:0;transform:translateX(-50%) translateY(12px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}
@keyframes ping {75%,100%{transform:scale(2);opacity:0}}
.cmp-wrap {position:fixed;right:24px;bottom:0;left:auto;top:auto;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;z-index:9999;padding:0;display:block;animation:cmpSlideUp .28s var(--ease)}
@keyframes cmpSlideUp {from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
.cmp-wrap.minimized .cmp-win {height:44px !important;max-height:44px;min-height:44px}
.cmp-wrap.minimized .cmp-reply,
.cmp-wrap.minimized .cmp-inp,
.cmp-wrap.minimized .cmp-body,
.cmp-wrap.minimized .cmp-foot,
.cmp-wrap.minimized .cmp-attach-list {display:none !important}
.cmp-wrap.fullscreen {right:0;left:0;top:0;bottom:0;background:var(--overlay);display:flex;align-items:center;justify-content:center;padding:24px}
.cmp-wrap.fullscreen .cmp-win {max-width:820px;height:82vh;height:82dvh;max-height:82vh;max-height:82dvh;border-radius:var(--r)}
.cmp-win {background:var(--card);width:540px;height:560px;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);border-radius:var(--radius-md) var(--radius-md) 0 0;border:1px solid var(--border);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;overflow:hidden}
@keyframes scaleIn {from{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}
.cmp-head {padding:10px 14px;font-weight:600;font-size:13px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);color:var(--text);background:transparent;cursor:pointer;user-select:none;flex-shrink:0}
.cmp-head-actions {display:flex;gap:2px}
.cmp-head button {background:none;border:none;color:var(--text3);width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s var(--ease);cursor:pointer;padding:0;position:relative}
.cmp-head button::after {content:'';position:absolute;inset:-8px}
.cmp-head button:hover {background:var(--muted);color:var(--text)}
.cmp-head button svg {width:14px;height:14px}
.cmp-reply {display:none;align-items:center;gap:8px;padding:9px 20px;border-bottom:1px solid rgba(99,102,241,.12);background:var(--brand-soft);color:var(--brand);font-size:11px;font-weight:700}
.cmp-reply.show {display:flex}
.cmp-reply svg {width:14px;height:14px;flex-shrink:0}
.cmp-inp {padding:12px 20px;border:none;border-bottom:1px solid var(--border);font-size:13px;outline:none;background:transparent;color:var(--text)}
.cmp-inp::placeholder {color:var(--text3)}
.cmp-body {flex:1;padding:16px 20px;border:none;resize:none;font-size:13px;outline:none;background:transparent;color:var(--text);min-height:180px}
.cmp-foot {padding:12px 20px;border-top:1px solid var(--border);display:flex;align-items:center}
.cmp-send {background:var(--brand);color:var(--brand-fg);border:none;padding:9px 28px;border-radius:var(--rxs);font-weight:700;font-size:13px;transition:all .15s var(--ease);box-shadow:0 2px 10px var(--brand-glow)}
.cmp-send:hover {box-shadow:0 4px 16px var(--brand-glow)}
.cmp-send:disabled {opacity:.4;cursor:not-allowed}
.sb-lock {margin-top:14px}
.sb-lock-row {display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--border);
      border-radius:var(--radius-sm);background:var(--card-2);font-size:11.5px;font-weight:650;color:var(--text2)}
.sb-lock-row svg {width:14px;height:14px;flex-shrink:0}
.sb-lock-row[data-on="1"] {border-color:rgba(4,120,87,.32);background:rgba(4,120,87,.09);color:var(--ok)}
.sb-lock-row span {flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sb-lock-help {margin:6px 2px 0;color:var(--text3);font-size:10.5px;line-height:1.45}
.sb-lock-btns {display:flex;gap:6px;margin-top:6px}
.sb-lock-btns .sb-btn2 {flex:1;min-width:0;font-size:11px}
.sb-lock-btns #btnLockSet {border-color:var(--brand-line);background:var(--brand-soft);color:var(--brand);font-weight:700}
.lk-wrap {position:fixed;inset:0;z-index:10050;background:var(--overlay);backdrop-filter:blur(6px);
      -webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px;
      animation:lkFade .2s var(--ease)}
.lk-wrap[hidden] {display:none}
@keyframes lkFade {from{opacity:0}to{opacity:1}}
@keyframes lkPop {from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}
@keyframes lkShake {10%,90%{transform:translateX(-2px)}30%,70%{transform:translateX(4px)}50%{transform:translateX(-4px)}}
@keyframes lkSpin {to{transform:rotate(360deg)}}
.lk-box {width:100%;max-width:380px;background:var(--card);border:1px solid var(--border);
      border-radius:var(--r);box-shadow:var(--shadow-xl);padding:26px 24px 20px;text-align:center;
      animation:lkPop .28s var(--ease-spring)}
.lk-box.shake {animation:lkShake .4s var(--ease)}
.lk-ico {width:52px;height:52px;margin:0 auto 14px;border-radius:16px;display:flex;align-items:center;
      justify-content:center;background:var(--brand-soft);color:var(--brand)}
.lk-ico svg {width:26px;height:26px}
.lk-box[data-mode="remove"] .lk-ico {background:rgba(220,38,38,.12);color:var(--red)}
.lk-title {font-size:16px;font-weight:750;color:var(--text);letter-spacing:-.2px}
.lk-sub {font-size:12px;color:var(--text3);margin-top:6px;line-height:1.55;word-break:break-word}
.lk-sub b {color:var(--text2);font-weight:700}
.lk-field {margin-top:16px;text-align:left}
.lk-lbl {display:block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;
      color:var(--text3);margin-bottom:6px}
.lk-inp-row {position:relative;display:flex;align-items:center}
.lk-inp-row input {width:100%;padding:11px 40px 11px 12px;font-size:13.5px;font-family:inherit;
      border:1px solid var(--border);border-radius:var(--rxs);background:var(--surface);color:var(--text);outline:none;
      transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}
.lk-inp-row input:focus {border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-glow)}
.lk-inp-row input:disabled {opacity:.5;cursor:not-allowed}
.lk-inp-row input[data-auto-generated="true"] {cursor:copy;padding-right:70px}
.lk-inp-row input[aria-invalid="true"] {border-color:var(--red);box-shadow:0 0 0 3px rgba(220,38,38,.1)}
.lk-eye {position:absolute;right:4px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;
      background:none;border:none;color:var(--text3);border-radius:8px;cursor:pointer;padding:0}
.lk-eye:hover {color:var(--text);background:var(--muted)}
.lk-eye svg {width:16px;height:16px}
.lk-inline-copy {position:absolute;right:4px;height:32px;padding:0 10px;border:1px solid var(--brand-line);
      border-radius:8px;background:var(--brand-soft);color:var(--brand);font:700 11px/1 inherit;cursor:pointer}
.lk-inline-copy:hover {background:var(--brand);color:#fff;border-color:var(--brand)}
.lk-inline-copy[hidden] {display:none}
.lk-help {margin:7px 2px 0;color:var(--text3);font-size:11px;line-height:1.45}
.lk-gen {display:flex;align-items:center;gap:8px;margin-top:10px;padding:9px 10px;border:1px solid var(--border);
      border-radius:var(--rxs);background:var(--card-2);font-size:12px;color:var(--text2);cursor:pointer;user-select:none}
.lk-gen:has(input:checked) {border-color:var(--brand-line);background:var(--brand-soft);color:var(--brand)}
.lk-gen input {width:15px;height:15px;accent-color:var(--brand);cursor:pointer;flex-shrink:0}
.lk-msg {margin-top:12px;padding:9px 11px;border-radius:var(--rxs);font-size:11.5px;font-weight:600;
      text-align:left;line-height:1.5;background:rgba(220,38,38,.1);color:var(--red);border:1px solid rgba(220,38,38,.22)}
.lk-msg[hidden] {display:none}
.lk-out {margin-top:14px;padding:12px;border-radius:var(--rxs);text-align:left;
      background:rgba(4,120,87,.09);border:1px solid rgba(4,120,87,.28)}
.lk-out[hidden] {display:none}
.lk-out-lbl {display:block;font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.5px;color:var(--ok)}
.lk-out-pw {display:block;margin:7px 0 9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
      font-size:16px;font-weight:700;color:var(--text);letter-spacing:1px;word-break:break-all;user-select:all}
.lk-out-copy {width:100%;padding:7px;font-size:11px;font-weight:700;font-family:inherit;cursor:pointer;
      border:1px solid rgba(4,120,87,.35);border-radius:8px;background:var(--card);color:var(--ok)}
.lk-out-copy:hover {background:rgba(4,120,87,.08)}
.lk-btns {display:flex;gap:8px;margin-top:18px}
.lk-btn1,
.lk-btn2 {flex:1;padding:11px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;
      border-radius:var(--rxs);transition:all .15s var(--ease)}
.lk-btn1 {border:none;background:var(--brand);color:var(--brand-fg);box-shadow:0 2px 10px var(--brand-glow);
      display:inline-flex;align-items:center;justify-content:center;gap:8px}
.lk-btn1[aria-busy="true"]::before {content:'';width:13px;height:13px;border:2px solid currentColor;
      border-right-color:transparent;border-radius:50%;animation:lkSpin .7s linear infinite}
.lk-btn1:hover {box-shadow:0 4px 16px var(--brand-glow)}
.lk-btn1:disabled {opacity:.5;cursor:not-allowed;box-shadow:none}
.lk-box[data-mode="remove"] .lk-btn1 {background:var(--red);box-shadow:none}
.lk-btn2 {border:1px solid var(--border);background:transparent;color:var(--text2)}
.lk-btn2:hover {background:var(--muted);color:var(--text)}
.lk-btn2[hidden] {display:none}
.lk-alt {display:block;width:100%;margin-top:10px;padding:6px;background:none;border:none;font-family:inherit;
      font-size:11.5px;font-weight:600;color:var(--text3);cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.lk-alt:hover {color:var(--brand)}
.lk-alt[hidden] {display:none}
@media(max-width:640px) {
.lk-box {max-width:100%;padding:22px 18px 16px}
.lk-ico {width:46px;height:46px;margin-bottom:12px}
.lk-title {font-size:15px}
}
.mob-addr {display:none}
@media(max-width:1023px) {
.hd-menu {display:flex;position:relative}
.ws {flex-direction:column}
.mob-addr {display:flex;align-items:center;gap:8px;padding:10px 12px;margin:0;
        background:var(--card);border-bottom:1px solid var(--border);flex-shrink:0}
.mob-addr-ico {width:18px;height:18px;color:var(--brand);flex-shrink:0}
.mob-addr-text {flex:1;min-width:0;font-family:monospace;font-size:13px;font-weight:500;
        color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mob-addr-text b {color:var(--brand);font-weight:700}
.mob-addr-copy,
.mob-addr-new,
.mob-addr-hist,
.mob-addr-lock {width:34px;height:34px;flex-shrink:0;display:inline-flex;
        align-items:center;justify-content:center;border-radius:var(--rxs);
        border:1px solid var(--border);background:var(--button,var(--muted));color:var(--text2);
        transition:all .15s var(--ease)}
.mob-addr-lock {width:auto;min-width:68px;padding:0 8px;gap:5px;font-size:11px;font-weight:700;white-space:nowrap}
.mob-addr-copy svg,
.mob-addr-new svg,
.mob-addr-hist svg,
.mob-addr-lock svg {width:16px;height:16px}
.mob-addr-copy:hover,
.mob-addr-new:hover,
.mob-addr-hist:hover,
.mob-addr-lock:hover {border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}
.mob-addr-copy:active,
.mob-addr-new:active,
.mob-addr-hist:active,
.mob-addr-lock:active {transform:scale(.94)}
.mob-addr-lock[data-on="1"] {border-color:rgba(4,120,87,.32);background:rgba(4,120,87,.09);color:var(--ok)}
.mob-addr-lock:disabled {opacity:.55;cursor:wait}
.mob-addr-hist {position:relative}
.mob-addr-hist[data-has="1"]::before {content:'';position:absolute;top:5px;right:5px;width:6px;height:6px;border-radius:50%;background:var(--brand)}
.sb-hist-x {opacity:1}
.sb {width:100%;position:fixed;top:0;left:0;bottom:0;width:300px;z-index:1000;transform:translateX(-100%);transition:transform .35s var(--ease);box-shadow:var(--shadow-lg);padding:16px;background:var(--bg)}
.sb.open {transform:translateX(0)}
.sb-overlay {position:fixed;top:0;left:0;right:0;bottom:0;background:var(--overlay);z-index:999;opacity:0;pointer-events:none;transition:opacity .35s var(--ease)}
.sb-overlay.open {opacity:1;pointer-events:auto}
.ct {padding:12px}
.ct-card {border:1px solid var(--border-s);border-radius:var(--radius);background:var(--surface)}
.el {width:100% !important;max-width:none}
.resizer {display:none}
.ev {position:fixed;top:0;left:0;right:0;bottom:0;z-index:500;background:var(--card);transform:translateX(100%);transition:transform .35s var(--ease);border-radius:0}
.ev.active {transform:translateX(0)}
.ev-back {display:block !important;background:none;border:none;padding:6px;margin-right:6px;cursor:pointer;color:var(--text2)}
.ev-back svg {width:20px;height:20px}
.cmp-wrap {left:0;right:0;padding:0}
.cmp-win {width:100%;max-width:100%;height:auto;min-height:0;max-height:calc(100vh - 12px);max-height:calc(100dvh - 12px);border-radius:var(--r) var(--r) 0 0}
.cmp-body {min-height:120px}
.sb-irow input,
.tb-search input,
.cmp-inp,
.cmp-body {font-size:16px}
}
@media(max-width:480px) {
.hd-menu {width:36px;height:36px}
}
body,
.sb-card,
.sb-inner,
.sb-form,
.sb-addr-box,
.ct-card,
.ct-inner,
.ct-bar,
.el,
.ev,
.ev-body,
.ev-head,
.ev-sender,
.sb-btn1,
.sb-btn2,
.sb-filter,
.tb-search,
.tb-icon,
.tb-sort,
.cmp-win,
.mob-addr {
      transition:background-color var(--dur) var(--ease-out),
                 border-color var(--dur) var(--ease-out),
                 color var(--dur) var(--ease-out),
                 box-shadow var(--dur) var(--ease-out);
    }
.sb-btn1:active,
.sb-btn2:active,
.ct-tbtn:active,
.tb-icon:active,
.tb-sort:active,
.hd-menu:active,
.sb-filter:active,
.cmp-send:active,
.ev-s-acts button:active,
.mob-addr-copy:active,
.mob-addr-new:active {
      transform:scale(.95);
      transition:transform var(--dur-fast) var(--ease);
    }
.sb-filter,
.ct-tbtn,
.hd-menu,
.tb-icon,
.tb-sort,
.cmp-send,
.ev-s-acts button,
.mob-addr-copy,
.mob-addr-new,
.mob-addr-lock {
      transition:transform var(--dur) var(--ease-spring),
                 background-color var(--dur) var(--ease-out),
                 border-color var(--dur) var(--ease-out),
                 color var(--dur) var(--ease-out),
                 box-shadow var(--dur) var(--ease-out);
    }
@media(prefers-reduced-motion:reduce) {
*,
*::before,
*::after {animation-duration:.001ms!important;animation-iteration-count:1!important;
        transition-duration:.001ms!important}
}
@supports(padding:env(safe-area-inset-top)) {
@media(max-width:1023px) {
.sb {padding-bottom:calc(16px + env(safe-area-inset-bottom))}
.ev {padding-bottom:env(safe-area-inset-bottom);padding-top:env(safe-area-inset-top)}
.sb {padding-top:calc(16px + env(safe-area-inset-top))}
.ev-head,
.ev-sender {padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}
.cmp-wrap {padding-bottom:env(safe-area-inset-bottom)}
.mob-addr {padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
}
}
@media(max-width:1023px) {
.el-list,
.ev-body,
.sb-inner {-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
}
@media(hover:none) {
.sb-filter {height:42px}
.ev-label {font-size:11px}
.sb-hist-time {font-size:11px}
.sb-filter:hover {background:none;color:var(--text2)}
.sb-filter.active:hover {background:var(--brand-soft);color:var(--brand-l,var(--brand))}
.sb-btn1:hover {filter:none;box-shadow:0 6px 18px -6px var(--brand-glow)}
.sb-btn2:hover {background:var(--button,var(--muted));border-color:var(--border);box-shadow:none}
.ct-tbtn:hover {background:transparent;color:var(--text3);border-color:transparent}
.tb-icon:hover,
.tb-sort:hover {background:var(--card);color:var(--text2);border-color:var(--border)}
.mob-addr-copy:hover,
.mob-addr-new:hover {border-color:var(--border);color:var(--text2);background:var(--button,var(--muted))}
.sb-rand:hover {background:transparent;color:var(--text3)}
.ev-s-acts button:hover {border-color:transparent;background:none;color:var(--text3)}
.ev-s-acts button.danger:hover {border-color:transparent;background:none;color:var(--text3)}
.cmp-head button:hover {background:none;color:var(--text3)}
.r-star:hover {color:var(--text3);transform:none}
.r-star.on:hover {color:#f59e0b}
.ev-s-email:hover {color:var(--text3);background:none}
html[data-theme="dark"] .el-row:hover {background:transparent}
html[data-theme="dark"] .el-row.unread:hover,
html[data-theme="dark"] .el-row.sel:hover {background:var(--selected)}
html[data-theme="dark"] .sb-btn2:hover {background:var(--button);border-color:var(--border)}
}
body[data-app="email"] :where(button,.sb-title,.ct-bar-title) svg {pointer-events:none}
@media(max-width:520px) {body[data-app="email"] :where(.mob-addr-hist,.mob-addr-new) {display:none}}
