:root { --mt-purple:#65509a; --mt-ink:#25312d; --mt-border:#e3e7e4; }
html { background:#f5f7f6; }
body.mt-portal-body { margin:0; color:var(--mt-ink); background:#f5f7f6; font:14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; min-width:320px; }
.mt-portal-body * { box-sizing:border-box; }
.mt-portal-body a { color:var(--mt-purple); }
.mt-portal-shell { display:flex; min-height:100vh; }
.mt-portal-sidebar { width:240px; flex:0 0 240px; padding:24px 14px; background:#fff; border-right:1px solid var(--mt-border); }
.mt-portal-brand { display:flex; gap:12px; align-items:center; font-size:18px; font-weight:700; text-decoration:none; padding:0 10px 24px; }
.mt-portal-brand img,.mt-portal-logo { width:36px; height:48px; object-fit:contain; }
.mt-portal-sidebar nav { display:flex; flex-direction:column; gap:4px; }
.mt-portal-sidebar nav a { padding:9px 12px; border-radius:8px; color:#45554e; text-decoration:none; font-weight:500; }
.mt-portal-sidebar nav a:hover { background:#f2f0f7; }
.mt-portal-sidebar nav .is-active { color:#fff; background:var(--mt-purple); }
.mt-portal-workspace { flex:1; min-width:0; }
.mt-portal-topbar { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:16px 28px; background:#fff; border-bottom:1px solid var(--mt-border); }
.mt-portal-topbar small { display:block; color:#66756f; }
.mt-portal-topbar form { margin:0; }
.mt-portal-body #wpbody-content { padding:28px; }
.mt-portal-body .wrap { margin:0; }
.mt-portal-body h1 { font-size:26px; line-height:1.3; margin:0 0 18px; font-weight:650; }
.mt-portal-body h2 { font-size:19px; margin-top:24px; }
.mt-portal-body .button-primary { background:var(--mt-purple); border-color:var(--mt-purple); }
.mt-portal-body .button { min-height:34px; border-radius:6px; }
.mt-portal-body .notice,.mt-portal-body .updated { background:white; padding:8px 14px; border-left:4px solid #4e9b69; margin:16px 0; }
.mt-portal-body .notice-error { border-left-color:#b32d2e; }
.mt-portal-body .notice-warning { border-left-color:#dba617; }
.mt-portal-body .form-table { margin-bottom:14px; }
.mt-portal-body .widefat { border:1px solid var(--mt-border); background:#fff; }
.mt-login-card { max-width:440px; margin:8vh auto; padding:36px; background:white; border:1px solid var(--mt-border); border-radius:18px; box-shadow:0 12px 36px #25312d0b; }
.mt-login-card h1 { margin:16px 0 8px; }
.mt-login-card p { color:#66756f; }
.mt-login-card label { display:block; margin:18px 0 6px; }
.mt-login-card input:not([type=checkbox]) { display:block; width:100%; padding:11px; border:1px solid #aebbb3; border-radius:7px; font:inherit; }
.mt-login-card .button-primary { width:100%; margin-top:16px; }
.mt-portal-body :focus-visible { outline:3px solid #ab9cd0; outline-offset:2px; }
@media(max-width:900px) {
 .mt-portal-shell { flex-direction:column; }
 .mt-portal-sidebar { width:100%; flex:auto; padding:14px; border-right:0; border-bottom:1px solid var(--mt-border); }
 .mt-portal-brand { padding-bottom:12px; }
 .mt-portal-sidebar nav { flex-direction:row; overflow-x:auto; flex-wrap:nowrap; }
 .mt-portal-sidebar nav a { white-space:nowrap; }
 .mt-portal-topbar { padding:12px 16px; }
 .mt-portal-body #wpbody-content { padding:20px 12px; }
 .mt-login-card { margin:24px 12px; padding:28px; }
}
