*,*::before,*::after{box-sizing:border-box}
html{font-size:16px}
body{min-width:360px;margin:0;background:var(--er-bg);color:var(--er-text);font-family:Inter,"Segoe UI","Microsoft YaHei","PingFang SC",system-ui,sans-serif;font-size:var(--er-font-body);line-height:var(--er-line-body);text-rendering:optimizeLegibility}
button,input,select,textarea{font:inherit}
a{color:var(--er-link)}
h1,h2,h3,h4,h5,h6{color:var(--er-text);letter-spacing:-.015em}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--er-primary);outline-offset:2px}
.text-secondary{color:var(--er-text-secondary)!important}
.admin-shell{min-height:100vh}
.content-area{min-height:calc(100vh - var(--er-topbar-height) - var(--er-workspace-tabs-height));padding:var(--er-content-padding);background:var(--er-bg)}
.content-frame{width:100%;max-width:var(--er-content-max);margin:0 auto}
.panel,.card,.metric-card,.ui-panel{border:1px solid var(--er-border)!important;border-radius:var(--er-radius-md)!important;background:var(--er-surface);box-shadow:none!important}
.module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--er-space-3)}
.module-card{min-height:92px;padding:var(--er-space-4);display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto;column-gap:var(--er-space-3);align-items:center;border:1px solid var(--er-border);border-radius:var(--er-radius-md);background:var(--er-surface);color:var(--er-text);text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.module-card:hover{border-color:var(--er-border-strong);box-shadow:var(--er-shadow-md);transform:translateY(-1px)}
.module-icon{grid-row:1/3;width:44px;height:44px;display:grid;place-items:center;border-radius:var(--er-radius-md);background:var(--er-primary-soft);color:var(--er-primary);font-size:19px}
.module-card strong{align-self:end}.module-card small{align-self:start;color:var(--er-text-muted)}
.metric-card{padding:var(--er-space-4)}
@media(max-width:1279.98px){:root{--er-content-padding:16px}}
@media(max-width:1023.98px){:root{--er-content-padding:16px}}
@media(max-width:767.98px){:root{--er-topbar-height:58px;--er-content-padding:8px}.content-frame{max-width:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
