/* RefSheet professional UI refinement */
:root{--rs-bg:#f5f6f8;--rs-panel:#fff;--rs-line:#dde2e7;--rs-line-strong:#c9d0d7;--rs-text:#151a21;--rs-muted:#66717d;--rs-red:#d7192d;--rs-red-dark:#b91426;--rs-radius:10px;--rs-control-radius:7px;--rs-shadow:0 1px 2px rgba(15,23,42,.035),0 8px 24px rgba(15,23,42,.035)}
body{background:#f5f6f8!important;background-image:none!important;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif!important}
.main{max-width:1280px!important}
.panel,.card,.info,.setup-card,.setup-submit,.summary>div,.correction-card,.box,.task-row,.secondary-entry,.coach-sign-card{border-radius:var(--rs-radius)!important;box-shadow:var(--rs-shadow)!important}
.panel-head{background:#fff!important}.main>.head{padding-left:0!important}.main>.head:before{display:none!important}
.eyebrow{color:#7b8794!important;font-size:10px!important;letter-spacing:.08em!important;font-weight:700!important}
.head h1{letter-spacing:-.025em!important;font-weight:760!important}.head p,.muted{color:var(--rs-muted)!important}
.btn,a.btn,button.btn{min-height:38px!important;padding:8px 14px!important;border-radius:var(--rs-control-radius)!important;background:var(--rs-red)!important;border:1px solid var(--rs-red)!important;color:#fff!important;box-shadow:none!important;font-size:12px!important;font-weight:700!important;line-height:1.2!important;transform:none!important}
.btn:hover,a.btn:hover,button.btn:hover{background:var(--rs-red-dark)!important;border-color:var(--rs-red-dark)!important;transform:none!important;box-shadow:none!important}
.btn.alt,.btn.secondary,.entry-button,.small-action,.center-action,.quick-action,.secondary-entry button,.correction-actions button{background:#fff!important;border:1px solid var(--rs-line-strong)!important;color:#26313d!important;box-shadow:none!important}
.btn.alt:hover,.btn.secondary:hover,.entry-button:hover,.small-action:hover,.center-action:hover,.quick-action:hover,.secondary-entry button:hover,.correction-actions button:hover{background:#f2f4f6!important;border-color:#aeb7c0!important;color:#111820!important}
button:disabled,.btn[disabled]{opacity:.45!important;cursor:not-allowed!important}
.actions,.row-actions,.top-actions,.links,.operator-actions{gap:8px!important}
.top,header:not(.side),.operator-bar{min-height:64px;padding-top:10px!important;padding-bottom:10px!important}
.top{padding-left:26px!important;padding-right:26px!important}
.top-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:wrap!important}
.user-menu{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}
.user-greeting{color:#3e4955!important;font-size:12px!important;white-space:nowrap}.user-greeting strong{display:inline!important;font-size:12px!important;font-weight:750!important}
.logout-form{margin:0!important}.logout-btn{min-height:34px!important;padding:6px 11px!important;background:#fff!important;color:#495563!important;border:1px solid var(--rs-line-strong)!important;border-radius:7px!important;font-size:11px!important;font-weight:650!important;box-shadow:none!important}
.logout-btn:hover{background:#f2f4f6!important;color:#1f2933!important}
.page-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 18px}.page-toolbar .btn{min-height:34px!important;padding:6px 11px!important}
.top-account{display:none!important}
.side nav a{min-height:42px;padding:10px 12px!important;border-radius:8px!important;font-weight:600}
.side nav a.active{background:#fff1f2!important;color:#bd1f2d!important;border-color:#f0c7cc!important;box-shadow:none!important}.side nav a.active .nav-icon{color:#d7192d!important}
.nav-section-label{font-size:9px!important;color:#929ba5!important;margin-top:20px!important}
.lifecycle-grid{box-shadow:none!important;border-radius:10px!important}.lifecycle-grid>div{padding:14px 16px!important}.lifecycle-grid small{letter-spacing:0!important;text-transform:none!important;font-size:10px!important}.lifecycle-grid strong{font-size:22px!important;font-weight:700!important}
table{background:#fff}th{text-transform:none!important;letter-spacing:0!important;font-size:10px!important;font-weight:700!important;color:#687380!important;background:#f8f9fa!important}td{font-size:12px!important}tbody tr:hover{background:#fafbfc!important}
.flash,.warning,.notice,.error{padding:11px 13px!important;border-radius:8px!important;font-size:12px!important}
.refsheet-brand-image{box-shadow:none!important;border:0!important;background:transparent!important;padding:0!important}.refsheet-brand-image img{max-height:44px!important}
.sidebar-logo{box-shadow:none!important;border:0!important;background:transparent!important;padding:4px!important}.sidebar-logo img{max-height:58px!important}
.operator-actions a{min-height:34px!important;padding:7px 10px!important;border:1px solid var(--rs-line-strong)!important;border-radius:7px!important;background:#fff!important;color:#2e3a46!important;font-size:11px!important;font-weight:650!important;text-decoration:none!important}
.operator-actions a:hover{background:#f2f4f6!important}.operator-actions .primary-link{background:#202833!important;color:#fff!important;border-color:#202833!important}.operator-actions .user-menu{margin-left:4px}
.login-card,.auth .card{box-shadow:none!important}.login-card{padding:22px!important}.product{display:none!important}.hero p{max-width:460px}
@media(max-width:900px){.top{align-items:flex-start!important}.user-menu{width:auto}.operator-bar{gap:8px!important}}
@media(max-width:780px){.top{padding-left:14px!important;padding-right:14px!important}.user-greeting{max-width:150px;overflow:hidden;text-overflow:ellipsis}.page-toolbar{margin-bottom:14px}.side nav a{min-height:38px}}

.home-modules{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.home-module{
  min-height:112px;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 18px;
  align-items:center;
  gap:14px;
  padding:20px;
  background:#fff;
  border:1px solid var(--rs-line);
  border-radius:12px;
  color:var(--rs-text)!important;
  text-decoration:none!important;
  box-shadow:var(--rs-shadow);
  transition:border-color .14s ease,background .14s ease;
}
.home-module:hover{
  background:#fafbfc;
  border-color:#c4ccd4;
  color:var(--rs-text)!important;
}
.home-module-icon{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#fff1f2;
  color:var(--rs-red);
}
.home-module-icon svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.home-module strong{
  display:block!important;
  font-size:16px!important;
  line-height:1.25;
  margin-bottom:5px;
}
.home-module small{
  display:block;
  color:#77828e!important;
  font-size:11px!important;
}
.home-module>b{
  color:#a1a9b2!important;
  font-size:18px!important;
  font-weight:500!important;
}
@media(max-width:720px){
  .home-modules{grid-template-columns:1fr}
  .home-module{min-height:92px;padding:16px}
}

/* Typography uplift 2026-09-30 */
body{font-size:15px!important}
.eyebrow{font-size:11px!important}
.head h1{font-size:30px!important}
.head p,.muted{font-size:13px!important}
.btn,a.btn,button.btn{font-size:13px!important;min-height:40px!important}
.user-greeting,.user-greeting strong{font-size:14px!important}
.logout-btn{font-size:12px!important}
.side nav a{font-size:14px!important;min-height:44px!important}
.nav-section-label{font-size:11px!important}
.lifecycle-grid small{font-size:12px!important}
.lifecycle-grid strong{font-size:24px!important}
.panel-head h2,.panel .head h2{font-size:17px!important}
.panel-head small,.panel .head .muted{font-size:12px!important}
th{font-size:12px!important}
td{font-size:14px!important}
.flash,.warning,.notice,.error{font-size:13px!important}
.operator-actions a{font-size:13px!important;min-height:36px!important}
label{font-size:13px!important}
input,select,textarea{font-size:14px!important}
.home-module strong{font-size:18px!important}
.home-module small{font-size:13px!important}
.card h3,.box h3,.task-row h3{font-size:16px!important}
.card p,.box p,.task-row p{font-size:13px!important}
@media(max-width:780px){
  .user-greeting,.user-greeting strong{font-size:13px!important}
  .side nav a{font-size:13px!important}
  th{font-size:11px!important}
  td{font-size:13px!important}
}
