/* 滚动的滑稽Ⅱ · 统一网站主题 (仅影响带 rfu-unified 的自有页面) */
:root{
  --rfu-paper:#f7f4ed; --rfu-paper-deep:#eee9de; --rfu-ink:#27231f;
  --rfu-muted:#6f685f; --rfu-border:#d9d2c5; --rfu-white:#fffdf8;
  --rfu-accent:#c76545; --rfu-accent-deep:#9f482f;
  --rfu-shadow:0 18px 46px rgba(61,49,37,.09); --rfu-radius:20px;
}
body.rfu-unified{background:var(--rfu-paper)!important;color:var(--rfu-ink)!important;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif!important;
  min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}
body.rfu-unified:not(.rfu-page-home){padding:0!important;max-width:none!important}
body.rfu-unified input,body.rfu-unified textarea,body.rfu-unified select,body.rfu-unified button{font-family:inherit}
body.rfu-unified :focus-visible{outline:3px solid rgba(199,101,69,.48);outline-offset:2px}
.rfu-header,.rfu-header *,.rfu-footer,.rfu-footer *{box-sizing:border-box}
.rfu-header{position:sticky;top:0;z-index:2000;background:rgba(247,244,237,.96);
  backdrop-filter:blur(18px);border-bottom:1px solid rgba(217,210,197,.85);color:var(--rfu-ink);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif}
.rfu-header-inner{max-width:1180px;width:calc(100% - 40px);min-height:74px;
  margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.rfu-brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;
  color:var(--rfu-ink)!important;font-weight:800;font-size:1rem;line-height:1.3;text-decoration:none!important;letter-spacing:-.02em}
.rfu-brand img{height:42px;width:42px;object-fit:cover;border-radius:12px;box-shadow:0 6px 16px rgba(63,49,36,.15)}
.rfu-nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.rfu-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;
  padding:9px 12px;border-radius:999px;color:#514b44!important;text-decoration:none!important;
  font-size:.91rem;font-weight:600;line-height:1.2;transition:background .18s,color .18s}
.rfu-nav a:hover,.rfu-nav a[aria-current="page"]{background:var(--rfu-paper-deep);color:var(--rfu-ink)!important}
.rfu-nav .rfu-support{background:var(--rfu-accent);color:white!important;padding-inline:17px}
.rfu-nav .rfu-support:hover{background:var(--rfu-accent-deep);color:white!important}
.rfu-menu-button{display:none!important;align-items:center!important;justify-content:center!important;
  width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;
  margin:0!important;padding:0!important;border:1px solid var(--rfu-border)!important;
  border-radius:12px!important;color:var(--rfu-ink)!important;background:var(--rfu-white)!important;
  box-shadow:none!important;cursor:pointer!important;font-size:21px!important;line-height:1!important}
.rfu-footer{clear:both;border-top:1px solid var(--rfu-border);background:var(--rfu-paper);color:var(--rfu-muted)}
.rfu-footer-inner{max-width:1180px;width:calc(100% - 40px);margin:auto;padding:27px 0;
  display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.88rem}
.rfu-footer-links{display:flex;gap:18px;flex-wrap:wrap}
.rfu-footer a{color:var(--rfu-muted)!important;text-decoration:none!important}
.rfu-footer a:hover{color:var(--rfu-accent-deep)!important}
/* 页面级通用组件，保留原 id 和所有交互脚本 */
body.rfu-unified:not(.rfu-page-home) input:not([type=checkbox]):not([type=radio]),
body.rfu-unified:not(.rfu-page-home) textarea,
body.rfu-unified:not(.rfu-page-home) select{
  max-width:100%;box-sizing:border-box;border:1px solid var(--rfu-border);border-radius:12px;
  background:var(--rfu-white);color:var(--rfu-ink);box-shadow:none}
body.rfu-unified:not(.rfu-page-home) input:focus,
body.rfu-unified:not(.rfu-page-home) textarea:focus,
body.rfu-unified:not(.rfu-page-home) select:focus{border-color:var(--rfu-accent);outline:none;box-shadow:0 0 0 3px rgba(199,101,69,.12)}
body.rfu-unified:not(.rfu-page-home) input::placeholder,
body.rfu-unified:not(.rfu-page-home) textarea::placeholder{color:#958b81}
/* BUG 反馈 & BUG 管理：将深蓝玻璃面板换为官网的浅色卡片 */
body.rfu-page-bug,body.rfu-page-bug-admin{color:var(--rfu-ink)!important}
body.rfu-page-bug>.container,body.rfu-page-bug-admin>.container{padding:34px 20px 70px}
body.rfu-page-bug .container>header,body.rfu-page-bug-admin .container>header{padding:20px 0 10px;margin-bottom:26px}
body.rfu-page-bug h1,body.rfu-page-bug-admin h1,
body.rfu-page-bug h2,body.rfu-page-bug-admin h2{
  background:none!important;-webkit-text-fill-color:currentColor!important;color:var(--rfu-ink)!important}
body.rfu-page-bug h1,body.rfu-page-bug-admin h1{font-family:Georgia,"Songti SC",serif;font-weight:500;letter-spacing:-.03em}
body.rfu-page-bug label,body.rfu-page-bug-admin label{color:var(--rfu-muted)}
body.rfu-page-bug .tab-content,body.rfu-page-bug-admin .login-container,
body.rfu-page-bug-admin .admin-header,body.rfu-page-bug-admin .bug-item,
body.rfu-page-bug .bug-item{background:var(--rfu-white);color:var(--rfu-ink);
  border:1px solid var(--rfu-border);box-shadow:var(--rfu-shadow);backdrop-filter:none;
  border-radius:20px}
body.rfu-page-bug .tab-content{min-height:unset}
body.rfu-page-bug .bug-item,body.rfu-page-bug-admin .bug-item{box-shadow:none}
body.rfu-page-bug .tab-btn,body.rfu-page-bug-admin .nav-btn,body.rfu-page-bug .page-btn,
body.rfu-page-bug-admin .page-btn{background:var(--rfu-white);border:1px solid var(--rfu-border);
 color:var(--rfu-ink);border-radius:999px;box-shadow:none}
body.rfu-page-bug .tab-btn.active{background:var(--rfu-accent);border-color:var(--rfu-accent);color:white;box-shadow:none}
body.rfu-page-bug .submit-btn,body.rfu-page-bug-admin .login-btn,
body.rfu-page-bug-admin .feedback-btn{background:var(--rfu-accent);color:white;
  border:1px solid var(--rfu-accent);border-radius:999px;box-shadow:none}
body.rfu-page-bug .submit-btn:hover,body.rfu-page-bug-admin .login-btn:hover{background:var(--rfu-accent-deep)}
body.rfu-page-bug .home-btn,body.rfu-page-bug-admin .home-btn{background:var(--rfu-white);color:var(--rfu-ink);
  border:1px solid var(--rfu-border);box-shadow:none}
body.rfu-page-bug .file-upload{background:var(--rfu-paper);border-color:var(--rfu-border)}
body.rfu-page-bug .file-upload i{color:var(--rfu-accent)}
body.rfu-page-bug .bug-meta,body.rfu-page-bug .no-bugs,body.rfu-page-bug .loading,
body.rfu-page-bug-admin .loading{color:var(--rfu-muted)}
body.rfu-page-bug .bug-header{border-bottom-color:var(--rfu-border)}
body.rfu-page-bug .notification,body.rfu-page-bug-admin .notification{background:var(--rfu-ink);color:white}
/* 后台与公告编辑：保留原业务模块布局，只统一色彩和控件 */
body.rfu-page-announcement,body.rfu-page-announcement-admin{color:var(--rfu-ink)}
body.rfu-page-announcement>.container,body.rfu-page-announcement-admin>.container{
  width:min(1100px,calc(100% - 32px));max-width:1100px;margin:32px auto 60px}
body.rfu-page-announcement .header,body.rfu-page-announcement .login-form,
body.rfu-page-announcement .announcement-form,body.rfu-page-announcement .announcements-list,
body.rfu-page-announcement-admin>.container,body.rfu-page-announcement-admin .form-section,
body.rfu-page-announcement-admin .list-section,body.rfu-page-announcement-admin .login-section{
  background:var(--rfu-white);border:1px solid var(--rfu-border);border-radius:20px;
  box-shadow:var(--rfu-shadow)}
body.rfu-page-announcement .header,body.rfu-page-announcement-admin .header{
  background:var(--rfu-white)!important;color:var(--rfu-ink)!important;text-align:left;border-color:var(--rfu-border)}
body.rfu-page-announcement-admin .header h1,body.rfu-page-announcement .header h1{color:var(--rfu-ink)}
body.rfu-page-announcement-admin .login-section{border-radius:0;background:var(--rfu-paper)!important;box-shadow:none}
body.rfu-page-announcement label,body.rfu-page-announcement-admin label{color:var(--rfu-muted)}
body.rfu-page-announcement button,body.rfu-page-announcement-admin button{
  background:var(--rfu-accent);color:white;border:1px solid transparent;border-radius:12px}
body.rfu-page-announcement button:hover,body.rfu-page-announcement-admin button:hover{background:var(--rfu-accent-deep)}
body.rfu-page-announcement .announcement-item{border-radius:14px;border-color:var(--rfu-border);background:var(--rfu-white)}
body.rfu-page-announcement .version-chip{background:var(--rfu-accent)}
/* 访客统计：保持表格和筛选交互，只替换深色外壳 */
body.rfu-page-visitors{--bg:var(--rfu-paper);--panel:var(--rfu-white);--line:var(--rfu-border);
  --text:var(--rfu-ink);--muted:var(--rfu-muted);--blue:var(--rfu-accent);--cyan:var(--rfu-accent);
  --pink:#ba705c;background:var(--rfu-paper)!important;color:var(--rfu-ink)!important}
body.rfu-page-visitors:before{display:none}
body.rfu-page-visitors .shell{padding:35px 0 65px}
body.rfu-page-visitors .panel{background:var(--rfu-white);box-shadow:var(--rfu-shadow);backdrop-filter:none;border-color:var(--rfu-border)}
body.rfu-page-visitors .brand-mark{background:var(--rfu-accent);color:white;box-shadow:none}
body.rfu-page-visitors .button{background:var(--rfu-white);color:var(--rfu-ink);border-color:var(--rfu-border)}
body.rfu-page-visitors .button.primary{background:var(--rfu-accent);color:white}
body.rfu-page-visitors .button.danger{color:#ae443b}
body.rfu-page-visitors .stat{background:var(--rfu-paper);border-color:var(--rfu-border)}
/* 附属工具 */
body.rfu-page-geo>h2,body.rfu-page-geo>.control-panel,body.rfu-page-geo>.container{max-width:1080px;margin-left:auto;margin-right:auto}
body.rfu-page-geo>h2{padding:46px 20px 8px;font-family:Georgia,"Songti SC",serif;font-size:clamp(2rem,5vw,3.3rem)}
body.rfu-page-geo>.control-panel{background:var(--rfu-white);border:1px solid var(--rfu-border);
  padding:22px;border-radius:20px;box-shadow:var(--rfu-shadow)}
body.rfu-page-geo>.container{padding:22px 12px 65px;grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr)}
body.rfu-page-geo button{background:var(--rfu-accent);border-radius:12px}
body.rfu-page-geo textarea{padding:16px;min-height:300px}
body.rfu-page-ugc>.container{max-width:1180px;margin:30px auto 60px;padding:0 16px}
body.rfu-page-ugc .container>header,body.rfu-page-ugc .tabs,body.rfu-page-ugc .operation-option,
body.rfu-page-ugc .instructions,body.rfu-page-ugc .file-upload,
body.rfu-page-ugc .level-info-container{background:var(--rfu-white);border:1px solid var(--rfu-border);
  border-radius:18px;box-shadow:var(--rfu-shadow)}
body.rfu-page-ugc .container>header h1{color:var(--rfu-ink)}
body.rfu-page-ugc .tab.active{color:var(--rfu-accent);border-bottom-color:var(--rfu-accent);background:var(--rfu-white)}
body.rfu-page-ugc .tabs{overflow:hidden}
body.rfu-page-ugc .container button{border-radius:12px}
body.rfu-page-draw{background:var(--rfu-paper)!important;color:var(--rfu-ink)!important}
body.rfu-page-draw>header{padding-top:34px}
body.rfu-page-draw .card-shadow{box-shadow:var(--rfu-shadow)}
body.rfu-page-draw button:focus-visible{outline:3px solid var(--rfu-accent)}
body.rfu-page-length{height:auto;min-height:100vh;display:block!important;overflow-y:auto!important;
  touch-action:pan-y!important;max-width:none;padding:0!important}
body.rfu-page-length>.card{margin:65px auto 80px;background:var(--rfu-white);border:1px solid var(--rfu-border);
  max-width:430px;box-shadow:var(--rfu-shadow)}
body.rfu-page-length .main-title{color:var(--rfu-accent-deep)}
body.rfu-page-length .analyze-btn{background:var(--rfu-accent);color:white}
body.rfu-page-length .username-input:focus{border-color:var(--rfu-accent)}
body.rfu-page-notfound{display:block!important;text-align:center}
body.rfu-page-notfound>.container{max-width:640px;margin:60px auto 90px;padding:35px;
  background:var(--rfu-white);border:1px solid var(--rfu-border);border-radius:24px;box-shadow:var(--rfu-shadow)}
body.rfu-page-notfound h1,body.rfu-page-notfound .error-code{
  color:var(--rfu-ink)!important;background:none!important;-webkit-text-fill-color:var(--rfu-ink)!important;
  text-shadow:none}
body.rfu-page-notfound .error-code{color:var(--rfu-accent)!important;-webkit-text-fill-color:var(--rfu-accent)!important}
body.rfu-page-notfound .error-message{color:var(--rfu-muted)}
body.rfu-page-notfound .home-btn{background:var(--rfu-accent);color:white;box-shadow:none}
/* 原排行榜已有官网配色，只补充统一外壳 */
body.rfu-page-leaderboard>.topbar{display:none}
/* 防止旧页面全局 header/footer 规则影响统一外壳 */
body.rfu-unified .rfu-header{margin:0!important;padding:0!important;width:100%!important;max-width:none!important;
  text-align:initial!important;border-radius:0!important;box-shadow:none!important;position:sticky!important}
body.rfu-unified .rfu-footer{margin:0!important;padding:0!important;width:100%!important;max-width:none!important;
  border-radius:0!important;box-shadow:none!important;text-align:initial!important}
@media(max-width:950px){
  .rfu-menu-button{display:inline-flex!important}
  .rfu-header-inner{position:relative}
  .rfu-nav{display:none;position:absolute;top:calc(100% - 1px);left:0;right:0;
    background:var(--rfu-white);border:1px solid var(--rfu-border);border-radius:16px;
    padding:12px;box-shadow:var(--rfu-shadow);flex-direction:column;align-items:stretch;gap:2px}
  .rfu-nav.rfu-open{display:flex}
  .rfu-nav a{justify-content:center;padding:12px 14px}
}
@media(max-width:700px){
  .rfu-header-inner,.rfu-footer-inner{width:calc(100% - 28px)}
  body.rfu-page-bug .container>header,body.rfu-page-bug-admin .container>header{padding-top:12px}
  body.rfu-page-bug .container>header .home-btn,body.rfu-page-bug-admin .container>header .home-btn{position:static;display:inline-flex;margin:10px auto}
  body.rfu-page-geo>.container{grid-template-columns:minmax(0,1fr)}
  body.rfu-page-geo>.container>div{min-width:0}
  body.rfu-page-geo textarea{box-sizing:border-box;max-width:100%}
  body.rfu-page-geo>.container>div:nth-child(2){display:none}
  body.rfu-page-announcement>.container,body.rfu-page-announcement-admin>.container{width:calc(100% - 22px)}
  body.rfu-page-length>.card{margin:30px 12px 60px;width:auto;max-width:none}
  body.rfu-page-notfound>.container{margin:35px 12px 65px;padding:25px 18px}
  body.rfu-page-ugc>.container{padding:0 12px}
}
@media(prefers-reduced-motion:reduce){
  .rfu-nav a{transition:none}
}
