/* R198 css/reset.css */
/* R198 述职汇报可视化 style.css */
:root {
  --primary: #C41E3A; --secondary: #F5D300; --accent: #8B0000;
  --bg: #FFF8F0; --card: #FFFFFF; --text: #2D2D2D; --text-secondary: #6B7280;
  --border: #F0D0D0; --success: #16A34A; --warning: #F59E0B; --error: #DC2626;
  --font-scale: 1; --touch-min: 44px;
  --contact-footer-h: 92px; --bottom-nav-h: 52px;
  --safe-area-bottom: env(safe-area-inset-bottom, 0px);
  --bottom-chrome-h: calc(var(--contact-footer-h) + var(--bottom-nav-h));
  --zw-fab-size: 56px; --float-gap: 12px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:calc(16px * var(--font-scale));-webkit-text-size-adjust:100%}
body{font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif;background:var(--bg);color:var(--text);line-height:1.5;max-width:480px;margin:0 auto}
body.has-contact-footer{padding-bottom:calc(var(--bottom-chrome-h) + 16px + var(--safe-area-bottom))}
body.share-page{padding-bottom:calc(var(--contact-footer-h) + 16px + var(--safe-area-bottom))}
button,input,select,textarea{font:inherit;border:none;background:none;cursor:pointer}
a{color:inherit;text-decoration:none}
.hidden{display:none!important}
.muted{color:var(--text-secondary);font-size:13px}
.center-text{text-align:center}
.skip-link{position:absolute;left:-9999px;top:0;z-index:9999;padding:8px 16px;background:var(--primary);color:#fff}
.skip-link:focus{left:8px;top:8px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.user-is-tabbing :focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.editor-editable{outline:1px dashed var(--accent);outline-offset:2px;border-radius:4px}
.center-text{text-align:center}
