/* TwoInbox additions to the unchanged TwoMail design system in twomail.css. */
button:disabled { opacity: .55; cursor: not-allowed; }
.button .icon { width: 17px; height: 17px; flex-shrink: 0; }
.button.full { width: 100%; }
.button.secondary { background: var(--blue-soft); color: var(--blue); box-shadow: none; }
.auth-panel .brand { padding: 0 0 14px; }
.sidebar .nav { overflow-y: auto; min-height: 0; }
.sidebar .nav-section-label { margin-top: 16px; }
.sidebar-bottom { flex-shrink: 0; }
.sidebar-toggle[aria-expanded="false"] .icon { transform: rotate(180deg); }
.form-panel { min-width: 0; }
.form-panel form { display: grid; gap: 16px; margin-top: 20px; }
.form-panel h2 { font-size: 18px; }
.form-row { display: flex; gap: 14px; }
.form-row > label { flex: 1; min-width: 0; }
.form-row > .port { flex: 0 0 95px; }
.twoinbox-split { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(300px,1fr); gap: 22px; align-items: start; }
.twoinbox-columns { display: grid; grid-template-columns: 1.1fr 1fr; gap: 22px; }
.page-header .eyebrow { display: none; }
.stat-label { display: flex; align-items: center; justify-content: space-between; color: var(--muted); font-weight: 750; }
.stat-icon { color: var(--blue); background: var(--blue-soft); padding: 8px; border-radius: 12px; }
.stat > small { display: block; margin-top: 8px; color: var(--muted); }
.stat .money-stat { font-size: clamp(20px,2.3vw,32px); overflow-wrap: anywhere; }
.welcome-banner { display: none; }
.setup-item { display: flex; align-items: center; gap: 14px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.setup-item > div { flex: 1; min-width: 0; }
.setup-item strong { font-size: 14px; }
.setup-item p { color: var(--muted); font-size: 13px; margin: 6px 0 0; }
.step { width: 32px; height: 32px; border-radius: 50%; background: var(--surface-soft); color: var(--muted); display: grid; place-items: center; flex-shrink: 0; font-weight: 800; }
.step.done { background: var(--green-soft); color: var(--green); }
.step.current { background: var(--blue-soft); color: var(--blue); }
.step .icon { width: 17px; height: 17px; }
.panel-note { display: flex; align-items: center; gap: 10px; color: var(--muted); font-size: 12px; margin-top: 18px; }
.activity { display: flex; align-items: flex-start; gap: 12px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.activity:last-child { border-bottom: 0; }
.activity-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--blue); margin-top: 6px; flex-shrink: 0; }
.activity small { display: block; color: var(--muted); margin-top: 6px; }
.text-link { color: var(--blue); display: inline-flex; align-items: center; gap: 6px; font-weight: 750; }
.text-link .icon { width: 15px; }
.empty { text-align: center; padding: 45px 24px; }
.empty.large { padding: 80px 24px; }
.empty p { color: var(--muted); line-height: 1.7; }
.empty .button { margin-top: 16px; }
.empty-icon { display: grid; place-items: center; margin: 0 auto 24px; background: var(--blue-soft); border-radius: 20px; width: 64px; height: 64px; color: var(--blue); }
.empty-icon .icon { width: 28px; height: 28px; }
.eyebrow { display: block; color: var(--muted); font-size: 11px; letter-spacing: .08em; font-weight: 850; margin-bottom: 12px; }
.badge.completed,.badge.active,.badge.approved { background: var(--green-soft); color: #166534; border-color: #bbf7d0; }
.badge.configured,.badge.processing { background: var(--blue-soft); color: var(--blue); border-color: #bfdbfe; }
.badge.pending,.badge.candidate,.badge.incomplete { background: var(--orange-soft); color: #92400e; border-color: #fde68a; }
.badge.failed { background: var(--red-soft); color: #b91c1c; border-color: #fecdd3; }
.badge.cancelled { background: #f1f5f9; color: var(--muted); }
.badge i { display: none; }
.count { background: var(--blue-soft); color: var(--blue); padding: 4px 9px; border-radius: 8px; font-weight: 800; }
.list-item,.mailbox-card { display: flex; align-items: center; gap: 14px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.list-item:last-child,.mailbox-card:last-child { border-bottom: 0; }
.list-item > div,.mailbox-card > div:nth-child(2) { flex: 1; min-width: 0; }
.list-item p,.mailbox-card p { margin: 6px 0; color: var(--muted); overflow-wrap: anywhere; }
.list-icon,.mailbox-icon { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 12px; background: var(--blue-soft); color: var(--blue); flex-shrink: 0; }
.mailbox-card { align-items: flex-start; flex-wrap: wrap; }
.mailbox-card h3 { margin-bottom: 6px; }
.mailbox-card small { color: var(--muted); overflow-wrap: anywhere; }
.notice.info { background: var(--blue-soft); border: 1px solid #bfdbfe; color: #1e40af; margin: 0; }
.toolbar { display: flex; justify-content: space-between; align-items: center; gap: 15px; }
.tabs { display: flex; gap: 6px; flex-wrap: wrap; }
.tabs a { padding: 10px 14px; border-radius: 12px; color: var(--muted); font-weight: 750; }
.tabs a.selected { background: var(--blue-soft); color: var(--blue); }
td small { display: block; color: var(--muted); margin-top: 5px; }
.table-empty { text-align: center; padding: 45px; color: var(--muted); }
.caption { font-size: 12px; margin: 0; }
.inline-form { margin-top: 10px; }
.text-button { border: 0; background: transparent; color: var(--blue); padding: 0; cursor: pointer; font-weight: 750; }
details { min-width: 130px; max-width: 280px; }
.nav .nav-advanced{min-width:0;max-width:none;width:100%;margin-top:10px}.nav-advanced>summary{cursor:pointer;padding:12px 14px;color:var(--muted);font-size:12px}.nav-advanced>a{display:flex;margin:4px 0}
summary { cursor: pointer; color: var(--blue); }
dl { display: grid; grid-template-columns: 80px 1fr; gap: 7px; font-size: 12px; }
dd { margin: 0; overflow-wrap: anywhere; }
.settings-form { max-width: 720px; }
.filter-bar { display: flex; align-items: flex-end; gap: 16px; flex-wrap: wrap; }
.filter-bar > label { min-width: 170px; }
.filter-bar > .muted { flex: 1 1 220px; align-self: center; font-size: 12px; }
.admin-pagination { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin-top: 20px; }
.checkbox-label { display: flex; align-items: center; gap: 10px; }
.checkbox-label input { width: 18px; height: 18px; flex: 0 0 auto; }
.rates-table input { min-width: 120px; }
.rates-table td:first-child input { min-width: 230px; }
.rates-table td { padding: 10px 8px; }
.inline-search { align-items: flex-end; }
.auth-panel .notice { margin: 0 0 20px; }
:focus-visible { outline: 3px solid #93c5fd; outline-offset: 2px; }
@media (max-width:1280px) { .twoinbox-columns,.twoinbox-split { grid-template-columns: 1fr; } }
@media (max-width:860px) {
  .sidebar { overflow: visible; }
  .filter-bar > label { flex: 1; }
  .filter-bar > .button { width: auto; }
  .admin-pagination,.toolbar { flex-wrap: wrap; }
  .notice-impersonation { flex-wrap: wrap; }
  .list-item > .badge { margin-left: auto; }
  .top-actions { flex-wrap: wrap; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { transition: none !important; scroll-behavior: auto !important; } }
.memory-gap{margin-top:24px}.memory-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:16px}.memory-actions form{margin:0}.memory-fieldset{border:0;padding:0;margin:0;min-width:0}.memory-source{border-top:1px solid var(--border,#e5e9f0);padding:18px 0}.memory-source small,.memory-check small{display:block;color:#64748b;margin-top:4px}.memory-message{padding:24px 0;border-top:1px solid #e5e9f0}.memory-message header{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.memory-message header p{margin:5px 0}.mail-body{font:inherit;font-size:14px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;background:#f8fafc;padding:18px;border-radius:10px;margin:18px 0;max-height:600px;overflow:auto}.memory-check{display:flex!important;align-items:flex-start;gap:10px;margin:14px 0!important;font-weight:400!important}.memory-check input{width:auto!important;min-width:16px;flex:0 0 auto;margin-top:3px}.memory-filter{flex-wrap:wrap}.memory-filter input{flex:2;min-width:180px}.memory-filter select{flex:1;min-width:150px}.memory-comparison{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.memory-answer{white-space:pre-wrap;line-height:1.8}.panel blockquote{border-left:3px solid #93c5fd;padding:4px 16px;margin:16px 0;color:#475569}.panel details{margin:12px 0}.panel details summary{cursor:pointer;color:#2563eb}.memory-fieldset:disabled{opacity:.75}@media(max-width:640px){.memory-comparison{grid-template-columns:1fr}.memory-filter{display:flex}.memory-actions{align-items:stretch}.memory-message header{display:block}}
