@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@500;600;700;800;900&display=swap");
/* 健康人生 Bright iPhone Widget Glass Theme v7.48 */
:root{
  --bg:#edf7ff;
  --text:#153047;
  --text-strong:#071827;
  --muted:rgba(21,48,71,.64);
  --muted2:rgba(21,48,71,.46);
  --glass:rgba(255,255,255,.44);
  --glass2:rgba(255,255,255,.58);
  --glass3:rgba(255,255,255,.30);
  --line:rgba(255,255,255,.74);
  --line2:rgba(39,79,112,.12);
  --shadow:0 22px 58px rgba(45,94,130,.18);
  --shadow-soft:0 12px 32px rgba(45,94,130,.12);
  --radius-xl:34px;
  --radius:30px;
  --radius-sm:24px;
  --accent:#27d6a0;
  --accent2:#4a9dff;
  --warn:#ffb84d;
  --danger:#ff5d73;
  --ok:#39d98a;
}
html{background:var(--bg)!important;}
body{
  color:var(--text)!important;
  background:
    radial-gradient(circle at 12% 2%, rgba(93,226,183,.42), transparent 28%),
    radial-gradient(circle at 88% 7%, rgba(89,157,255,.38), transparent 30%),
    radial-gradient(circle at 76% 82%, rgba(255,190,118,.26), transparent 30%),
    linear-gradient(145deg,#f8fdff 0%,#edf7ff 46%,#f6fff8 100%) fixed!important;
  font-family:'Nunito','Avenir Next',-apple-system,BlinkMacSystemFont,'Segoe UI','Noto Sans SC',sans-serif!important;
  -webkit-font-smoothing:antialiased;
  padding-bottom:calc(88px + env(safe-area-inset-bottom));
}
body::before{
  content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:
    linear-gradient(115deg,rgba(255,255,255,.55),transparent 36%),
    radial-gradient(circle at 48% 35%,rgba(255,255,255,.36),transparent 36%);
}
body::after{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="160" height="160" viewBox="0 0 160 160"><filter id="n"><feTurbulence type="fractalNoise" baseFrequency="0.9" numOctaves="3" stitchTiles="stitch"/></filter><rect width="100%25" height="100%25" filter="url(%23n)" opacity="0.13"/></svg>');
  opacity:.16;mix-blend-mode:soft-light;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
/* Every widget/card surface: rounded iPhone widget style */
.header,.hero,.top-section,.welcome-header,.profile-header,.gradient-bg,
.card,.stat-card,.coach-card,.package-card,.profile-card,.login-card,.register-card,.welcome-card,.panel,.item,.search,.filters,.terms,.balance,.info-box,.success-box,.error-box,.modal-content,.form-card,.settings-card,.calendar-card,.session-card,.meal-card,.weight-card,.target-card,.quick-action,.action-card,.choice-card,.role-card,.student-item,.coach-stat,.stat,.metric-card,.list,.toolbar,.filter-box,.alert-box,.section,.box,.content-box,
[class*="card"],[class*="widget"],[class*="panel"],[class*="box"],[class*="item"]{
  color:var(--text)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.66),rgba(255,255,255,.34))!important;
  border:1px solid var(--line)!important;
  border-top-color:rgba(255,255,255,.94)!important;
  border-left-color:rgba(255,255,255,.84)!important;
  border-radius:var(--radius-xl)!important;
  box-shadow:var(--shadow-soft), inset 0 1px 0 rgba(255,255,255,.62)!important;
  backdrop-filter:blur(30px) saturate(175%)!important;
  -webkit-backdrop-filter:blur(30px) saturate(175%)!important;
  overflow:hidden;
}
.header,.hero,.top-section,.welcome-header,.profile-header,.gradient-bg{
  background:linear-gradient(135deg,rgba(88,169,255,.62),rgba(118,239,196,.50),rgba(255,255,255,.32))!important;
  border-radius:0 0 38px 38px!important;
  box-shadow:var(--shadow)!important;
}
.card,.package-card,.coach-card,.student-item,.item{padding:22px!important;margin-bottom:16px!important;}
.stat-card,.quick-action,.choice-card,.role-card{min-height:116px;display:flex!important;flex-direction:column;justify-content:center;align-items:flex-start;}
.card:hover,.coach-card:hover,.package-card:hover,.quick-action:hover{transform:translateY(-1px);transition:.22s ease;box-shadow:var(--shadow), inset 0 1px 0 rgba(255,255,255,.70)!important;}
h1,h2,h3,.title,.coach-name,.package-name,.student-name,.stat-value,.price,.item-title{color:var(--text-strong)!important;font-weight:850!important;letter-spacing:-.035em!important;}
p,.small,.hint,.subtitle,.note,.stat-label,.coach-specialty,.item-sub,.user-email,.setting-value,.coach-rating,.info-label,.empty,.empty-state{color:var(--muted)!important;}
.stat-value,.price{font-size:34px!important;line-height:1!important;text-shadow:0 1px 0 rgba(255,255,255,.7);}
.stat-icon,.nav-icon,.empty-icon{filter:drop-shadow(0 6px 14px rgba(74,157,255,.20));}
.btn,button,.btn-primary,.primary-btn,button[type=submit],.mini-btn.primary{
  color:white!important;font-weight:850!important;border:0!important;border-radius:999px!important;
  background:linear-gradient(135deg,#2ed8a2,#4a9dff)!important;
  box-shadow:0 14px 28px rgba(74,157,255,.22), inset 0 1px 0 rgba(255,255,255,.48)!important;
}
.btn:active,button:active{transform:scale(.975)!important;}
.btn-secondary,.secondary-btn,.btn-light,.mini-btn,.top-btn,.filter-btn,.chip,.btn-outline{
  color:var(--text-strong)!important;background:rgba(255,255,255,.52)!important;border:1px solid rgba(255,255,255,.76)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 8px 20px rgba(45,94,130,.08)!important;
}
.btn-success,.green{background:linear-gradient(135deg,#39d98a,#18c78a)!important;color:white!important;}
.btn-danger,.red{background:linear-gradient(135deg,#ff7d8b,#ff3f5f)!important;color:white!important;}
.amber,.btn-amber{background:linear-gradient(135deg,#ffd36d,#ffad33)!important;color:#4a2a00!important;}
input,select,textarea{
  color:var(--text-strong)!important;background:rgba(255,255,255,.55)!important;border:1px solid rgba(255,255,255,.78)!important;
  border-radius:24px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.65)!important;
}
input::placeholder,textarea::placeholder{color:rgba(21,48,71,.38)!important;}
input:focus,select:focus,textarea:focus{outline:none!important;border-color:rgba(74,157,255,.50)!important;box-shadow:0 0 0 4px rgba(74,157,255,.13)!important;}
.nav-bar,.nav,.bottom-nav,.tab-bar{
  left:12px!important;right:12px!important;bottom:12px!important;border-radius:32px!important;
  background:rgba(255,255,255,.56)!important;border:1px solid rgba(255,255,255,.82)!important;
  box-shadow:0 -10px 34px rgba(45,94,130,.16), inset 0 1px 0 rgba(255,255,255,.68)!important;
  backdrop-filter:blur(30px) saturate(190%)!important;-webkit-backdrop-filter:blur(30px) saturate(190%)!important;
  padding:10px 8px calc(10px + env(safe-area-inset-bottom))!important;
  overflow:hidden!important;
}
.nav-item,.nav a,.nav div{color:rgba(21,48,71,.54)!important;font-weight:780!important;text-decoration:none!important;}
.nav-item.active,.nav .active,.nav-item:hover{color:var(--text-strong)!important;}
.nav-item.active .nav-icon,.nav .active span{background:rgba(255,255,255,.62);border-radius:18px;padding:4px 10px;}
.badge,.tag,.package-tag,.chip.active,.filter-btn.active{
  border-radius:999px!important;background:rgba(255,255,255,.58)!important;color:var(--text-strong)!important;border:1px solid rgba(255,255,255,.78)!important;
}
.info-box{background:rgba(89,157,255,.18)!important;border-left:0!important;}
.success-box{background:rgba(57,217,138,.18)!important;border-left:0!important;}
.error-box{background:rgba(255,93,115,.16)!important;border-left:0!important;}
hr,.divider{border-color:var(--line2)!important;}
a{color:#1976d2!important;}
@media(max-width:640px){
  .content,.shell{padding-left:16px!important;padding-right:16px!important;}
  .card,.stat-card,.coach-card,.package-card,.panel,.item,.student-item,[class*="card"],[class*="widget"],[class*="panel"],[class*="box"],[class*="item"]{border-radius:32px!important;}
  .header,.hero{border-radius:0 0 36px 36px!important;}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .card,.stat-card,.coach-card,.package-card,.panel,.item,.nav-bar,.nav{background:rgba(255,255,255,.92)!important;}
}

/* Softer English typography */
html[lang="en"] body,
html[lang="en"] button,
html[lang="en"] input,
html[lang="en"] select,
html[lang="en"] textarea,
html[lang="en"] .title,
html[lang="en"] h1,
html[lang="en"] h2,
html[lang="en"] h3{
  font-family:'Nunito','Avenir Next',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
  letter-spacing:-.018em!important;
}
html[lang="en"] .title,
html[lang="en"] h1{font-weight:900!important;line-height:1.08!important;}
html[lang="en"] .subtitle,
html[lang="en"] p,
html[lang="en"] .feature-desc{font-weight:650!important;letter-spacing:-.006em!important;}
