body{
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Segoe UI",Arial,sans-serif;
  background:
    radial-gradient(circle at 12% 8%, rgba(37,99,235,.16), transparent 30%),
    radial-gradient(circle at 86% 10%, rgba(59,130,246,.14), transparent 32%),
    linear-gradient(180deg,#f7fbff 0%,#f3f6fb 45%,#eef3fa 100%);
  padding:24px 20px 96px;
  color:#111827;
}

.container{
  max-width:1100px;
  margin:auto;
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  padding:30px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.75);
  box-shadow:
    0 24px 70px rgba(15,23,42,.08),
    inset 0 1px 0 rgba(255,255,255,.85);
}

.top-bar{
  max-width:1100px;
  margin:0 auto 18px;
  background:rgba(255,255,255,.78);
  color:#111827;
  padding:14px 18px;
  border-radius:28px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  border:1px solid rgba(255,255,255,.72);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  box-shadow:
    0 22px 60px rgba(37,99,235,.10),
    inset 0 1px 0 rgba(255,255,255,.9);
}

.top-left{
  display:flex;
  align-items:center;
  gap:14px;
}

.top-logo{
  width:190px;
  height:58px;
  object-fit:contain;
  border-radius:18px;
  background:rgba(255,255,255,.75);
  padding:6px 10px;
  box-shadow:0 8px 24px rgba(15,23,42,.08);
}

.suggest-btn{
  background:rgba(255,255,255,.88);
  color:#111827;
  border:1px solid rgba(209,213,219,.65);
  padding:12px 18px;
  border-radius:999px;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  transition:.2s;
  white-space:nowrap;
  box-shadow:0 8px 24px rgba(15,23,42,.08);
}

.suggest-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(37,99,235,.15);
}

h1{
  text-align:center;
  color:#111827;
  font-size:40px;
  letter-spacing:-1px;
  margin:30px 0 20px;
  font-weight:800;
}
h2{margin-top:28px;color:#111827;font-size:22px;}
h3{margin-top:18px;color:#111827;font-size:18px;}
label{font-weight:bold;margin-top:18px;display:block;}

input,select,textarea{
  width:100%;
  padding:12px;
  margin-top:8px;
  border-radius:10px;
  border:1px solid #ddd;
  box-sizing:border-box;
  font-size:15px;
}

textarea{min-height:120px;resize:vertical;}

.tips{
  background:#eff6ff;
  color:#1d4ed8;
  padding:12px;
  border-radius:10px;
  margin-top:12px;
  font-size:14px;
  line-height:1.6;
}

.page{display:none;}
.page.active{display:block;}

.row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.tags{margin-top:10px;}

.tags button{
  margin:6px 6px 0 0;
  padding:8px 14px;
  border-radius:20px;
  border:1px solid #d1d5db;
  background:white;
  color:#374151;
  cursor:pointer;
  transition:.2s;
  text-align:left;
}

.tags button.active{
  background:#dbeafe;
  border-color:#2563eb;
  color:#2563eb;
}

.status-group button.active{
  background:#16a34a;
  border-color:#16a34a;
  color:white;
}

.title-row{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-top:18px;
}

.title-row label{margin-top:0;}

.change-btn,.small-btn{
  background:#f97316;
  color:white;
  border:none;
  border-radius:10px;
  padding:8px 14px;
  cursor:pointer;
  white-space:nowrap;
}

.small-btn{
  background:#2563eb;
  margin-top:8px;
}

.danger-btn{
  background:#dc2626;
  color:white;
  border:none;
  border-radius:10px;
  padding:8px 14px;
  cursor:pointer;
}

.gray-btn{
  background:#6b7280;
  color:white;
  border:none;
  border-radius:10px;
  padding:8px 14px;
  cursor:pointer;
}

.btn{
  margin-top:20px;
  padding:14px 18px;
  border:none;
  border-radius:12px;
  cursor:pointer;
  font-size:16px;
  width:100%;
}

.generate-btn{background:#2563eb;color:white;}
.copy-btn{background:#16a34a;color:white;}

#result{
  background:#f9fafb;
  min-height:320px;
}

.auto-clear-setting{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:14px;
  padding:14px 16px;
  border:1px solid rgba(148,163,184,.18);
  border-radius:18px;
  background:rgba(255,255,255,.86);
  box-shadow:0 8px 24px rgba(15,23,42,.05);
}

.auto-clear-copy{
  min-width:0;
}

.auto-clear-title{
  color:#1d1d1f;
  font-size:15px;
  font-weight:700;
  line-height:1.25;
}

.auto-clear-desc{
  margin-top:4px;
  color:#6e6e73;
  font-size:13px;
  line-height:1.45;
}

.auto-clear-switch{
  position:relative;
  width:52px;
  height:30px;
  border:none;
  border-radius:999px;
  padding:0;
  background:#d1d1d6;
  flex:0 0 auto;
  cursor:pointer;
  transition:background .2s ease, box-shadow .2s ease, transform .2s ease;
}

.auto-clear-switch::before{
  content:"";
  position:absolute;
  left:2px;
  top:2px;
  width:26px;
  height:26px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 2px 6px rgba(0,0,0,.18);
  transition:transform .22s ease;
}

.auto-clear-switch.is-on{
  background:#34c759;
}

.auto-clear-switch.is-on::before{
  transform:translateX(22px);
}

.auto-clear-switch:hover{
  box-shadow:0 8px 20px rgba(15,23,42,.08);
}

@media(max-width:640px){
  .auto-clear-setting{
    align-items:flex-start;
  }

  .auto-clear-switch{
    margin-top:2px;
  }
}

.card{
  border:1px solid #e5e7eb;
  border-radius:14px;
  padding:14px;
  margin-top:12px;
  background:#fff;
}

.card-title{
  font-weight:bold;
  font-size:17px;
  color:#111827;
}

.card-meta{
  font-size:13px;
  color:#6b7280;
  margin-top:6px;
  line-height:1.6;
}

.actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:10px;
}

.filter-bar{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:12px;
  margin-top:12px;
}

.history-text{
  white-space:pre-wrap;
  background:#f9fafb;
  border-radius:10px;
  padding:12px;
  margin-top:10px;
  display:none;
}

.student-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:6px 6px 0 0;
  padding:6px 10px;
  border-radius:999px;
  background:#eff6ff;
  color:#1d4ed8;
}

.bottom-nav{
  position:fixed;
  bottom:0;
  left:0;
  width:100%;
  background:white;
  border-top:1px solid #e5e7eb;
  display:flex;
  justify-content:space-around;
  padding:10px 0;
  z-index:999;
  box-shadow:0 -2px 10px rgba(0,0,0,.05);
}

.bottom-nav-btn{
  border:none;
  background:none;
  color:#6b7280;
  font-size:14px;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
}

.bottom-nav-btn.active{
  color:#2563eb;
  font-weight:bold;
}

.feedback-mode{
  display:flex;
  gap:12px;
  margin-top:20px;
}

.mode-btn{
  flex:1;
  padding:14px;
  border-radius:14px;
  border:1px solid #d1d5db;
  background:white;
  cursor:pointer;
  font-size:16px;
  font-weight:bold;
}

.mode-btn.active{
  background:#2563eb;
  color:white;
  border-color:#2563eb;
}

.student-check-list{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:10px;
}

.student-check-item{
  border:1px solid #d1d5db;
  border-radius:999px;
  padding:8px 12px;
  background:white;
  cursor:pointer;
}

.student-check-item.active{
  background:#dbeafe;
  border-color:#2563eb;
  color:#2563eb;
}

.custom-tag-editor{
  margin-top:10px;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}

.custom-tag-editor input{
  flex:1 1 220px;
  min-width:180px;
}

.custom-tag-btn{
  background:#eff6ff;
  border:1px solid #bfdbfe;
  color:#1d4ed8;
}

.teacher-display[readonly]{
  background:#f8fafc !important;
  color:#0f172a !important;
  cursor:not-allowed;
}

.group-student-panel{
  border:1px solid #e5e7eb;
  border-radius:14px;
  padding:14px;
  margin-top:12px;
  background:#fcfcfd;
}

.group-result-text{
  white-space:pre-wrap;
  background:#f9fafb;
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:12px;
  margin-top:10px;
}

.suggest-modal-overlay{
  position:fixed;
  inset:0;
  background:rgba(255,255,255,.65);
  backdrop-filter:blur(6px);
  display:none;
  align-items:center;
  justify-content:center;
  z-index:99999;
}

.suggest-modal{
  width:360px;
  max-width:90%;
  background:white;
  border-radius:28px;
  padding:36px 28px;
  position:relative;
  text-align:center;
  box-shadow:0 10px 30px rgba(0,0,0,.08),0 2px 10px rgba(0,0,0,.05);
  animation:suggestPop .2s ease;
}

@keyframes suggestPop{
  from{transform:scale(.92);opacity:0;}
  to{transform:scale(1);opacity:1;}
}

.suggest-close{
  position:absolute;
  right:16px;
  top:12px;
  border:none;
  background:none;
  font-size:28px;
  color:#9ca3af;
  cursor:pointer;
}

.suggest-close:hover{color:#111827;}

.suggest-logo{
  width:84px;
  height:84px;
  object-fit:cover;
  border-radius:20px;
  margin-bottom:16px;
}

.suggest-title{
  font-size:24px;
  color:#111827;
  margin-bottom:22px;
}

.wechat-qrcode{
  width:220px;
  height:220px;
  object-fit:cover;
  border-radius:18px;
  border:1px solid #f3f4f6;
}

.wechat-author{
  margin-top:16px;
  font-size:18px;
  font-weight:bold;
  color:#111827;
}

.wechat-tips{
  margin-top:10px;
  font-size:14px;
  line-height:1.7;
  color:#6b7280;
}

@media(max-width:760px){
  .row,.filter-bar{grid-template-columns:1fr;}
  .top-bar{padding:12px;align-items:center;}
  .top-logo{width:150px;height:50px;padding:4px 8px;}
  .suggest-btn{font-size:13px;padding:10px 12px;}
  h1{font-size:32px;}
  .container{padding:20px;border-radius:24px;}
}

/* Apple / 科技感细节优化 */
input,select,textarea{
  background:rgba(255,255,255,.86);
  border:1px solid rgba(209,213,219,.75);
  box-shadow:0 6px 18px rgba(15,23,42,.04);
}

input:focus,select:focus,textarea:focus{
  outline:none;
  border-color:#2563eb;
  box-shadow:0 0 0 4px rgba(37,99,235,.12);
}

.card,.group-student-panel{
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.78);
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}

.mode-btn{
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}

.mode-btn.active,.generate-btn{
  background:linear-gradient(135deg,#3b82f6,#2563eb);
  box-shadow:0 16px 34px rgba(37,99,235,.25);
}

.copy-btn{
  background:linear-gradient(135deg,#22c55e,#16a34a);
  box-shadow:0 16px 34px rgba(22,163,74,.18);
}

.tips{
  border:1px solid rgba(34,197,94,.18);
}


/* ===== 更接近参考图的 Apple + 科技感 Hero 版本 ===== */

body{
  min-height:100vh;
  background:
    radial-gradient(circle at 18% 18%, rgba(96,165,250,.18), transparent 28%),
    radial-gradient(circle at 86% 16%, rgba(147,197,253,.22), transparent 30%),
    linear-gradient(180deg,#f8fbff 0%,#eef4ff 46%,#f6f8fb 100%) !important;
}

.top-bar{
  max-width:1120px !important;
  min-height:72px;
  margin:0 auto 26px !important;
  padding:14px 22px !important;
  border-radius:26px !important;
  background:rgba(255,255,255,.82) !important;
  border:1px solid rgba(226,232,240,.9) !important;
  box-shadow:
    0 20px 55px rgba(37,99,235,.10),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
}

.top-logo{
  width:176px !important;
  height:58px !important;
  object-fit:contain !important;
  padding:0 !important;
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

.top-divider{
  width:1px;
  height:34px;
  background:linear-gradient(180deg, transparent, rgba(15,23,42,.18), transparent);
  margin:0 8px;
}

.top-name{
  font-size:22px;
  font-weight:800;
  letter-spacing:-.5px;
  color:#111827;
  white-space:nowrap;
}

.suggest-btn{
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(226,232,240,.9) !important;
  color:#111827 !important;
  box-shadow:
    0 12px 30px rgba(15,23,42,.10),
    inset 0 1px 0 rgba(255,255,255,.9) !important;
}

.hero-section{
  max-width:1120px;
  margin:0 auto 0;
  min-height:260px;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:34px 34px 0 0;
  background:
    linear-gradient(120deg, rgba(255,255,255,.30), rgba(255,255,255,.04)),
    radial-gradient(circle at 18% 80%, rgba(59,130,246,.16), transparent 34%),
    radial-gradient(circle at 78% 44%, rgba(96,165,250,.20), transparent 31%);
}

.hero-section::before{
  content:"";
  position:absolute;
  left:-140px;
  bottom:-80px;
  width:520px;
  height:240px;
  border-radius:50%;
  background:
    repeating-radial-gradient(ellipse at center,
      rgba(59,130,246,.10) 0 2px,
      transparent 2px 14px);
  transform:rotate(-10deg);
  opacity:.65;
}

.hero-content{
  position:relative;
  z-index:2;
  text-align:center;
  padding:36px 20px 52px;
}

.hero-badge{
  display:inline-flex;
  padding:6px 16px;
  border-radius:999px;
  background:rgba(219,234,254,.75);
  color:#93c5fd;
  font-size:12px;
  font-weight:800;
  letter-spacing:1.6px;
  margin-bottom:12px;
}

.hero-greeting{
  margin-top:6px;
  color:#2563eb;
  font-size:18px;
  font-weight:850;
  letter-spacing:0;
}

.hero-title{
  margin:0;
  font-size:46px;
  line-height:1.05;
  letter-spacing:-1.8px;
  color:#111827;
  font-weight:900;
}

.hero-subtitle{
  margin-top:18px;
  color:#64748b;
  font-size:18px;
  font-weight:600;
}

.hero-slogan{
  margin-top:10px;
  color:#0f172a;
  font-size:16px;
  font-weight:700;
}

.hero-status{
  display:inline-flex;
  margin-top:22px !important;
  padding:10px 20px !important;
  background:rgba(236,253,245,.82) !important;
  border:1px solid rgba(34,197,94,.22) !important;
  color:#047857 !important;
  backdrop-filter:blur(10px);
}

.hero-visual{
  position:absolute;
  right:70px;
  top:48px;
  width:230px;
  height:190px;
  pointer-events:none;
}

.tech-cube{
  position:absolute;
  right:42px;
  top:20px;
  width:118px;
  height:118px;
  border-radius:32px;
  background:
    linear-gradient(145deg, rgba(219,234,254,.9), rgba(147,197,253,.32));
  box-shadow:
    0 22px 50px rgba(37,99,235,.16),
    inset 0 1px 0 rgba(255,255,255,.9);
  transform:rotate(-12deg);
  border:1px solid rgba(255,255,255,.8);
}

.tech-icon{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%) rotate(12deg);
  width:48px;
  height:48px;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#60a5fa,#2563eb);
  color:white;
  font-size:26px;
  box-shadow:0 14px 28px rgba(37,99,235,.25);
}

.orbit-line{
  position:absolute;
  right:8px;
  top:84px;
  width:230px;
  height:70px;
  border:3px solid rgba(59,130,246,.28);
  border-left-color:transparent;
  border-bottom-color:transparent;
  border-radius:50%;
  transform:rotate(-16deg);
}

.orb{
  position:absolute;
  border-radius:50%;
  background:#60a5fa;
  box-shadow:0 0 18px rgba(59,130,246,.55);
}

.orb-one{
  width:12px;
  height:12px;
  right:0;
  top:64px;
}

.orb-two{
  width:8px;
  height:8px;
  left:32px;
  top:70px;
}

.container{
  max-width:1120px !important;
  margin:-8px auto 0 !important;
  border-radius:28px !important;
  padding:34px !important;
}

#writePage > h2{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:24px;
}

#writePage > h2::before{
  content:"▣";
  color:#2563eb;
  font-size:22px;
}

.mode-btn{
  min-height:78px;
  border-radius:18px !important;
  font-size:17px !important;
}

.mode-btn.active{
  background:linear-gradient(135deg,#3b82f6,#2563eb) !important;
  color:white !important;
}

.mode-btn:not(.active){
  background:rgba(255,255,255,.78) !important;
}

input,select,textarea{
  border-radius:14px !important;
}

@media(max-width:760px){
  .top-bar{
    border-radius:22px !important;
  }
  .top-left{
    width:100%;
    justify-content:space-between;
  }
  .top-divider,.top-name{
    display:none;
  }
  .top-logo{
    width:150px !important;
  }
  .hero-title{
    font-size:38px;
  }
  .hero-visual{
    opacity:.28;
    right:-40px;
  }
  .hero-section{
    min-height:240px;
  }
}


/* ===== 参考图高还原版：Apple Glass + 科技感 ===== */

body{
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Segoe UI",Arial,sans-serif !important;
  margin:0 !important;
  padding:20px 22px 96px !important;
  color:#111827 !important;
  background:
    radial-gradient(circle at 18% 18%, rgba(147,197,253,.28), transparent 32%),
    radial-gradient(circle at 88% 12%, rgba(96,165,250,.20), transparent 30%),
    linear-gradient(180deg,#f9fbff 0%,#eef4ff 44%,#f7f9fc 100%) !important;
}

.top-bar{
  max-width:1180px !important;
  height:74px !important;
  margin:0 auto 18px !important;
  padding:0 26px !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.86) !important;
  border:1px solid rgba(226,232,240,.92) !important;
  backdrop-filter:blur(22px) saturate(160%) !important;
  -webkit-backdrop-filter:blur(22px) saturate(160%) !important;
  box-shadow:
    0 24px 60px rgba(37,99,235,.10),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
}

.top-left{
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
}

.top-logo{
  width:200px !important;
  height:62px !important;
  object-fit:contain !important;
  object-position:left center !important;
  background:transparent !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}

.top-divider{
  width:1px !important;
  height:34px !important;
  background:linear-gradient(180deg,transparent,rgba(15,23,42,.18),transparent) !important;
}

.top-name{
  display:block !important;
  font-size:23px !important;
  font-weight:850 !important;
  letter-spacing:-.7px !important;
  color:#111827 !important;
  white-space:nowrap !important;
}

.suggest-btn{
  background:rgba(255,255,255,.94) !important;
  color:#111827 !important;
  border:1px solid rgba(226,232,240,.95) !important;
  padding:13px 22px !important;
  border-radius:999px !important;
  font-size:15px !important;
  font-weight:750 !important;
  box-shadow:
    0 14px 34px rgba(15,23,42,.10),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
}

.hero-section{
  max-width:1180px !important;
  height:300px !important;
  margin:0 auto !important;
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  border-radius:0 !important;
  background:
    radial-gradient(circle at 20% 90%, rgba(96,165,250,.18), transparent 34%),
    radial-gradient(circle at 78% 45%, rgba(147,197,253,.24), transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.04)) !important;
}

.hero-section::before{
  content:"" !important;
  position:absolute !important;
  left:-170px !important;
  bottom:-90px !important;
  width:620px !important;
  height:280px !important;
  border-radius:50% !important;
  background:
    repeating-radial-gradient(ellipse at center,
      rgba(59,130,246,.10) 0 2px,
      transparent 2px 14px) !important;
  transform:rotate(-10deg) !important;
  opacity:.70 !important;
}

.hero-content{
  position:relative !important;
  z-index:2 !important;
  text-align:center !important;
  padding-top:12px !important;
}

.hero-badge{
  display:inline-flex !important;
  padding:6px 18px !important;
  border-radius:999px !important;
  background:rgba(219,234,254,.78) !important;
  color:#93c5fd !important;
  font-size:12px !important;
  font-weight:900 !important;
  letter-spacing:1.8px !important;
  margin-bottom:14px !important;
}

.hero-title{
  margin:0 !important;
  font-size:48px !important;
  line-height:1.04 !important;
  letter-spacing:-2px !important;
  color:#111827 !important;
  font-weight:900 !important;
}

.hero-subtitle{
  margin-top:18px !important;
  color:#64748b !important;
  font-size:18px !important;
  font-weight:650 !important;
}

.hero-status{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-top:22px !important;
  padding:10px 22px !important;
  border-radius:12px !important;
  background:rgba(236,253,245,.82) !important;
  color:#047857 !important;
  border:1px solid rgba(34,197,94,.22) !important;
  font-weight:750 !important;
  backdrop-filter:blur(10px) !important;
}

.hero-status::before{
  content:"●";
  width:20px;
  height:20px;
  margin-right:8px;
  border-radius:50%;
  background:#111827;
  color:white;
  font-size:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.hero-visual{
  position:absolute !important;
  right:62px !important;
  top:58px !important;
  width:260px !important;
  height:210px !important;
  opacity:1 !important;
}

.tech-cube{
  position:absolute !important;
  right:54px !important;
  top:20px !important;
  width:126px !important;
  height:126px !important;
  border-radius:32px !important;
  background:
    linear-gradient(145deg, rgba(219,234,254,.92), rgba(147,197,253,.34)) !important;
  box-shadow:
    0 26px 60px rgba(37,99,235,.18),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
  transform:rotate(-12deg) !important;
  border:1px solid rgba(255,255,255,.86) !important;
}

.tech-cube::before{
  content:"";
  position:absolute;
  inset:22px;
  border:1px solid rgba(37,99,235,.20);
  border-radius:22px;
}

.tech-icon{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) rotate(12deg) !important;
  width:50px !important;
  height:50px !important;
  border-radius:16px !important;
  background:linear-gradient(135deg,#60a5fa,#2563eb) !important;
  color:white !important;
  font-size:26px !important;
  box-shadow:0 14px 32px rgba(37,99,235,.28) !important;
}

.orbit-line{
  position:absolute !important;
  right:4px !important;
  top:94px !important;
  width:250px !important;
  height:78px !important;
  border:3px solid rgba(59,130,246,.28) !important;
  border-left-color:transparent !important;
  border-bottom-color:transparent !important;
  border-radius:50% !important;
  transform:rotate(-16deg) !important;
}

.orb{
  position:absolute !important;
  border-radius:50% !important;
  background:#60a5fa !important;
  box-shadow:0 0 20px rgba(59,130,246,.58) !important;
}

.orb-one{
  width:12px !important;
  height:12px !important;
  right:2px !important;
  top:70px !important;
}

.orb-two{
  width:8px !important;
  height:8px !important;
  left:28px !important;
  top:82px !important;
}

.container{
  max-width:1180px !important;
  margin:-20px auto 0 !important;
  padding:38px 40px !important;
  border-radius:30px !important;
  background:rgba(255,255,255,.88) !important;
  border:1px solid rgba(255,255,255,.92) !important;
  backdrop-filter:blur(22px) saturate(150%) !important;
  -webkit-backdrop-filter:blur(22px) saturate(150%) !important;
  box-shadow:
    0 28px 80px rgba(15,23,42,.10),
    inset 0 1px 0 rgba(255,255,255,.96) !important;
}

#writePage > h2{
  margin-top:0 !important;
  font-size:26px !important;
  font-weight:850 !important;
  color:#111827 !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}

#writePage > h2::before{
  content:"▣" !important;
  color:#2563eb !important;
  font-size:24px !important;
}

.feedback-mode{
  margin-top:24px !important;
  gap:22px !important;
}

.mode-btn{
  min-height:82px !important;
  border-radius:18px !important;
  font-size:18px !important;
  font-weight:850 !important;
  background:rgba(255,255,255,.84) !important;
  border:1px solid rgba(226,232,240,.92) !important;
  box-shadow:
    0 18px 40px rgba(15,23,42,.08),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
}

.mode-btn.active{
  background:linear-gradient(135deg,#3b82f6,#2563eb) !important;
  color:white !important;
  border-color:transparent !important;
  box-shadow:0 18px 42px rgba(37,99,235,.30) !important;
}

h3{
  color:#2563eb !important;
  font-size:19px !important;
}

label{
  color:#111827 !important;
  font-weight:800 !important;
}

input,select,textarea{
  min-height:48px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.90) !important;
  border:1px solid rgba(209,213,219,.86) !important;
  box-shadow:
    0 8px 24px rgba(15,23,42,.04),
    inset 0 1px 0 rgba(255,255,255,.88) !important;
}

input:focus,select:focus,textarea:focus{
  outline:none !important;
  border-color:#2563eb !important;
  box-shadow:0 0 0 4px rgba(37,99,235,.12) !important;
}

.card,.group-student-panel{
  background:rgba(255,255,255,.88) !important;
  border:1px solid rgba(255,255,255,.92) !important;
  box-shadow:0 18px 44px rgba(15,23,42,.06) !important;
}

.generate-btn{
  background:linear-gradient(135deg,#3b82f6,#2563eb) !important;
  box-shadow:0 16px 34px rgba(37,99,235,.25) !important;
}

.copy-btn{
  background:linear-gradient(135deg,#22c55e,#16a34a) !important;
  box-shadow:0 16px 34px rgba(22,163,74,.18) !important;
}

.bottom-nav{
  background:rgba(255,255,255,.86) !important;
  backdrop-filter:blur(18px) saturate(150%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(150%) !important;
}

@media(max-width:760px){
  body{
    padding:12px 12px 92px !important;
  }

  .top-bar{
    height:auto !important;
    padding:12px 14px !important;
    border-radius:22px !important;
  }

  .top-logo{
    width:145px !important;
    height:48px !important;
  }

  .top-divider,.top-name{
    display:none !important;
  }

  .suggest-btn{
    font-size:13px !important;
    padding:10px 12px !important;
  }

  .hero-section{
    height:250px !important;
  }

  .hero-title{
    font-size:38px !important;
  }

  .hero-subtitle{
    font-size:15px !important;
  }

  .hero-visual{
    opacity:.23 !important;
    right:-60px !important;
  }

  .container{
    padding:24px 18px !important;
    border-radius:26px !important;
  }

  .feedback-mode{
    gap:12px !important;
  }

  .mode-btn{
    font-size:16px !important;
  }
}


/* ===== 统一线性小图标系统 ===== */
.icon-label{
  display:flex !important;
  align-items:center;
  gap:8px;
}

.icon-label svg,
.section-title svg,
.sub-title svg,
.suggest-btn svg,
.mode-btn svg{
  width:20px;
  height:20px;
  stroke-width:2.2;
  flex-shrink:0;
}

.icon-label svg,
.section-title svg,
.sub-title svg{
  color:#2563eb;
}

.suggest-btn{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:8px;
}

.suggest-btn svg{
  color:#111827;
}

.section-title,
.sub-title{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
}

.mode-btn{
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:10px;
}

.mode-btn svg{
  color:currentColor;
}

.input-icon-wrap{
  position:relative;
  width:100%;
}

.input-icon-wrap > svg{
  position:absolute;
  left:16px;
  top:50%;
  transform:translateY(-50%);
  width:20px;
  height:20px;
  color:#64748b;
  stroke-width:2.2;
  pointer-events:none;
  z-index:2;
}

.input-icon-wrap input,
.input-icon-wrap select{
  padding-left:48px !important;
}

#writePage > h2::before{
  content:none !important;
}


.stats-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:16px;
  margin-top:20px;
}

.stat-card{
  background:rgba(255,255,255,.92);
  border-radius:22px;
  padding:24px;
  text-align:center;
  box-shadow:0 18px 40px rgba(15,23,42,.06);
}

.stat-num{
  font-size:40px;
  font-weight:900;
  color:#2563eb;
}

.stat-label{
  margin-top:8px;
  color:#64748b;
  font-weight:700;
}

.analytics-card{
  background:white;
  border-radius:18px;
  padding:18px;
  margin-top:12px;
  box-shadow:0 10px 28px rgba(15,23,42,.05);
}

.analytics-item{
  display:flex;
  justify-content:space-between;
  padding:10px 0;
  border-bottom:1px solid #f1f5f9;
}

.analytics-item:last-child{
  border-bottom:none;
}

.student-profile-card{
  background:rgba(255,255,255,.94);
  border:1px solid rgba(226,232,240,.9);
  border-radius:24px;
  padding:22px;
  margin-top:18px;
  box-shadow:0 18px 40px rgba(15,23,42,.06);
}

.student-profile-card h3{
  margin-top:0;
}

.student-profile-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.student-profile-avatar-row{
  display:flex;
  align-items:center;
  gap:16px;
  margin:16px 0 18px;
  padding:16px;
  border-radius:18px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
}

.student-profile-avatar-preview{
  width:72px;
  height:72px;
  border-radius:50%;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  background:linear-gradient(135deg,#dbeafe,#f8fafc);
  color:#2563eb;
  font-size:24px;
  font-weight:800;
}

.student-profile-avatar-preview img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.student-profile-avatar-controls{
  min-width:0;
  flex:1;
}

.student-profile-avatar-controls strong{
  display:block;
  color:#0f172a;
  font-size:16px;
  line-height:1.35;
}

.student-profile-avatar-controls span{
  display:block;
  margin-top:4px;
  color:#64748b;
  font-size:13px;
  line-height:1.55;
}

.student-profile-avatar-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:12px;
}

#studentArchivePage .student-profile-state-clean{
  background:#f1f5f9;
  color:#64748b;
}

#studentArchivePage .student-profile-state-dirty{
  background:#fff7ed;
  color:#c2410c;
}

#studentArchivePage .student-profile-state-saving{
  background:#eaf3ff;
  color:#1268e8;
}

#studentArchivePage .student-profile-state-saved{
  background:#eafaf2;
  color:#119c5b;
}

#studentArchivePage .student-profile-state-duplicate,
#studentArchivePage .student-profile-state-error{
  background:#fff1f1;
  color:#b45353;
}

.student-profile-grid textarea,
.student-profile-wide{
  grid-column:1 / -1;
}

.student-profile-summary{
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:14px;
  line-height:1.7;
  color:#334155;
  white-space:pre-wrap;
}

.lesson-closure-card{
  margin:16px 0;
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(191,219,254,.86);
  background:linear-gradient(135deg,rgba(239,246,255,.95),rgba(255,255,255,.96));
  box-shadow:0 12px 30px rgba(15,23,42,.05);
}

.lesson-closure-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}

.lesson-closure-head strong{
  display:block;
  color:#1d1d1f;
  font-size:18px;
}

.lesson-closure-head p{
  margin:6px 0 0;
  color:#6e6e73;
  line-height:1.55;
}

.lesson-toggle{
  display:inline-flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
  margin:0;
  padding:9px 12px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(210,210,215,.8);
  color:#0071e3 !important;
  font-weight:800;
}

.lesson-toggle input{
  width:auto !important;
  margin:0 !important;
}

.lesson-closure-grid{
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:14px;
  margin-top:14px;
  align-items:end;
}

.lesson-notify-pill{
  min-height:48px;
  display:flex;
  align-items:center;
  padding:0 14px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(210,210,215,.82);
  color:#6e6e73;
  font-weight:700;
}

.lesson-record-card,
.notification-draft-card{
  background:#fff;
  border:1px solid rgba(210,210,215,.76);
  border-radius:18px;
  padding:16px;
  margin-top:10px;
  box-shadow:0 10px 26px rgba(15,23,42,.045);
}

.lesson-record-card strong,
.notification-draft-card strong{
  display:block;
  color:#1d1d1f;
  margin-bottom:6px;
}

.lesson-record-card p,
.notification-draft-card p{
  margin:0;
  color:#6e6e73;
  line-height:1.65;
  white-space:pre-wrap;
}

.notification-draft-card button{
  margin-top:12px;
}

@media(max-width:640px){
  .lesson-closure-head,
  .lesson-closure-grid{
    grid-template-columns:1fr;
    flex-direction:column;
    align-items:stretch;
  }
}

.student-crm-shell{
  margin-top:18px;
  padding:22px;
  border-radius:28px;
  border:1px solid rgba(210,210,215,.72);
  background:
    radial-gradient(circle at 92% 8%,rgba(0,113,227,.10),transparent 30%),
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(248,250,252,.92));
  box-shadow:0 18px 48px rgba(15,23,42,.08);
}

.student-crm-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 190px;
  gap:18px;
  align-items:stretch;
}

.student-crm-kicker{
  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  border-radius:999px;
  background:#eaf2ff;
  color:#0071e3;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.student-crm-hero h3{
  margin:12px 0 8px;
  font-size:30px;
  line-height:1.15;
  letter-spacing:-.02em;
}

.student-crm-hero p{
  margin:0;
  max-width:760px;
  color:#6e6e73;
  line-height:1.65;
  font-size:15px;
}

.student-crm-score-card,
.student-crm-metric-card,
.student-crm-action-card{
  background:rgba(255,255,255,.92);
  border:1px solid rgba(210,210,215,.72);
  box-shadow:0 10px 26px rgba(15,23,42,.06);
}

.student-crm-score-card{
  border-radius:24px;
  padding:18px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}

.student-crm-score-card span,
.student-crm-metric-card span,
.student-crm-card-head span{
  color:#86868b;
  font-size:13px;
  font-weight:800;
}

.student-crm-score-card strong{
  margin-top:4px;
  color:#0071e3;
  font-size:46px;
  line-height:1;
  letter-spacing:-.04em;
}

.student-crm-score-card small,
.student-crm-metric-card small{
  margin-top:8px;
  color:#6e6e73;
  font-weight:700;
}

.student-crm-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:16px;
}

.student-crm-v2-badges{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

.student-crm-v2-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:9px 12px;
  border-radius:999px;
  border:1px solid rgba(210,210,215,.78);
  background:#fff;
  color:#424245;
  font-size:13px;
  font-weight:800;
  line-height:1.3;
}

.student-crm-v2-badge.danger{
  border-color:rgba(255,59,48,.24);
  background:#fff1f0;
  color:#c01f1a;
}

.student-crm-v2-badge.renewal{
  border-color:rgba(52,199,89,.24);
  background:#eafaf0;
  color:#168a3a;
}

.student-crm-v2-badge.ok{
  border-color:rgba(0,113,227,.20);
  background:#eaf2ff;
  color:#0071e3;
}

.student-crm-v2-badge.muted{
  background:#f5f5f7;
  color:#6e6e73;
}

.student-crm-metric-card{
  border-radius:20px;
  padding:16px;
}

.student-crm-metric-card strong{
  display:block;
  margin-top:8px;
  color:#1d1d1f;
  font-size:24px;
  line-height:1.2;
}

.student-crm-metric-card.risk-high strong,
.student-crm-metric-card.intent-hot strong{
  color:#ff3b30;
}

.student-crm-metric-card.risk-medium strong,
.student-crm-metric-card.intent-high strong{
  color:#ff9500;
}

.student-crm-metric-card.intent-medium strong{
  color:#0071e3;
}

.student-crm-metric-card.intent-low strong{
  color:#6e6e73;
}

.student-crm-action-grid{
  display:grid;
  grid-template-columns:1.1fr 1fr .9fr;
  gap:14px;
  margin-top:16px;
}

.student-crm-action-card{
  border-radius:24px;
  padding:18px;
}

.student-crm-action-card.primary{
  background:linear-gradient(135deg,#1d1d1f,#2c2c2e);
  color:#fff;
}

.student-crm-action-card.primary .student-crm-card-head span,
.student-crm-action-card.primary p{
  color:rgba(255,255,255,.72);
}

.student-crm-card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}

.student-crm-card-head strong{
  color:inherit;
  font-size:15px;
}

.student-crm-action-card p{
  margin:0;
  color:#424245;
  line-height:1.65;
}

.student-crm-action-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}

.student-crm-daily-task-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}

.student-crm-task-pill{
  display:inline-flex;
  align-items:center;
  padding:8px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  font-size:12px;
  font-weight:800;
}

.student-crm-task-pill.must{
  background:rgba(255,59,48,.20);
  border-color:rgba(255,59,48,.35);
}

.student-crm-task-pill.high{
  background:rgba(255,149,0,.20);
  border-color:rgba(255,149,0,.35);
}

.student-crm-task-pill.normal{
  background:rgba(0,113,227,.20);
  border-color:rgba(0,113,227,.35);
}

.student-crm-task-pill.observe{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.18);
}

.student-crm-action-card textarea{
  width:100%;
  min-height:132px;
  margin:4px 0 12px;
  resize:vertical;
  line-height:1.65;
  font-size:14px;
}

.student-crm-course-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.student-crm-course-pill{
  padding:12px 14px;
  border-radius:16px;
  background:#f5f5f7;
  border:1px solid rgba(210,210,215,.72);
  color:#424245;
  font-weight:800;
  line-height:1.45;
}

@media(max-width:900px){
  .student-crm-hero,
  .student-crm-action-grid{
    grid-template-columns:1fr;
  }
  .student-crm-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:640px){
  .student-crm-shell{
    padding:16px;
    border-radius:22px;
  }
  .student-crm-hero h3{
    font-size:24px;
  }
  .student-crm-metrics{
    grid-template-columns:1fr;
  }
}

.student-archive-360{
  margin-top:20px;
  padding-bottom:24px;
}

.student-archive-crm-layout{
  display:grid;
  grid-template-columns:minmax(230px,280px) minmax(0,1fr);
  gap:18px;
  align-items:start;
}

.student-archive-master-panel{
  position:sticky;
  top:calc(var(--merged-header-space, 118px) + 10px);
  max-height:calc(100vh - var(--merged-header-space, 118px) - 30px);
  overflow:hidden;
  padding:16px;
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.94));
  border:1px solid rgba(210,210,215,.76);
  box-shadow:0 18px 42px rgba(15,23,42,.08);
}

.student-archive-master-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:14px;
}

.student-archive-master-head span{
  display:block;
  color:#86868b;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.student-archive-master-head h3{
  margin:4px 0 0;
  color:#1d1d1f;
  font-size:20px;
  line-height:1.2;
}

.student-archive-master-head strong{
  min-width:34px;
  min-height:30px;
  padding:6px 10px;
  border-radius:999px;
  background:#1d1d1f;
  color:#fff;
  text-align:center;
  font-size:13px;
  line-height:1.4;
}

.student-archive-master-search{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:0 12px;
  border-radius:15px;
  background:#fff;
  border:1px solid rgba(210,210,215,.78);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}

.student-archive-master-search svg{
  width:17px;
  height:17px;
  color:#86868b;
  flex-shrink:0;
}

.student-archive-master-search input{
  width:100%;
  min-width:0;
  border:0;
  outline:0;
  background:transparent;
  color:#1d1d1f;
  font-size:14px;
  font-weight:700;
}

.student-archive-master-list{
  display:flex;
  flex-direction:column;
  gap:9px;
  margin-top:14px;
  max-height:calc(100vh - var(--merged-header-space, 118px) - 184px);
  overflow-y:auto;
  padding-right:2px;
}

.student-archive-master-list::-webkit-scrollbar{
  width:6px;
  height:6px;
}

.student-archive-master-list::-webkit-scrollbar-thumb{
  border-radius:999px;
  background:rgba(134,134,139,.36);
}

.student-archive-master-item{
  width:100%;
  min-height:76px;
  padding:12px;
  border:1px solid rgba(210,210,215,.72);
  border-radius:18px;
  background:rgba(255,255,255,.82);
  color:#1d1d1f;
  text-align:left;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  gap:6px;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}

.student-archive-master-item:hover{
  transform:translateY(-1px);
  border-color:rgba(0,113,227,.28);
  box-shadow:0 10px 24px rgba(15,23,42,.08);
}

.student-archive-master-item.active{
  background:linear-gradient(135deg,#fff,#eef5ff);
  border-color:rgba(0,113,227,.38);
  box-shadow:0 14px 30px rgba(0,113,227,.12);
}

.student-archive-master-name{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
}

.student-archive-master-name strong{
  min-width:0;
  color:#1d1d1f;
  font-size:15px;
  line-height:1.35;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.student-archive-master-name span{
  flex-shrink:0;
  padding:4px 8px;
  border-radius:999px;
  background:#f5f5f7;
  color:#6e6e73;
  font-size:11px;
  font-weight:850;
  line-height:1.2;
}

.student-archive-master-item.active .student-archive-master-name span{
  background:#0071e3;
  color:#fff;
}

.student-archive-master-meta,
.student-archive-master-sub{
  color:#6e6e73;
  font-size:12px;
  font-weight:750;
  line-height:1.45;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.student-archive-detail-panel{
  min-width:0;
}

.student-archive-crm-layout .student-archive-control-card{
  grid-template-columns:minmax(210px,260px) auto;
}

.student-archive-hidden-select-wrap{
  display:none !important;
}

.student-archive-control-card,
.student-archive-status-card,
.student-archive-card,
.student-archive-action-card,
.student-archive-portrait-item,
.student-archive-loop-card,
.student-archive-timeline-item{
  background:rgba(255,255,255,.92);
  border:1px solid rgba(210,210,215,.74);
  box-shadow:0 12px 32px rgba(15,23,42,.055);
}

.student-archive-control-card{
  display:grid;
  grid-template-columns:1fr 240px auto;
  gap:14px;
  align-items:end;
  padding:18px;
  border-radius:24px;
}

.student-archive-quick-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-end;
}

.student-archive-status-card{
  margin-top:16px;
  padding:22px;
  border-radius:28px;
  background:
    radial-gradient(circle at 88% 12%,rgba(0,113,227,.10),transparent 34%),
    linear-gradient(135deg,#fff,#f7f9fc);
}

.student-archive-status-main{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) 260px;
  gap:18px;
  align-items:center;
}

.student-archive-avatar{
  width:82px;
  height:82px;
  border-radius:26px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#1d1d1f,#5b6472);
  color:#fff;
  font-size:28px;
  font-weight:900;
  flex-shrink:0;
}

.student-archive-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.student-archive-name-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin-bottom:8px;
}

.student-archive-name-row h3{
  margin:0;
  font-size:30px;
  line-height:1.12;
  letter-spacing:0;
}

.student-archive-status-pill,
.student-archive-priority-pill,
.student-archive-muted-pill{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:7px 11px;
  border-radius:999px;
  font-size:12px;
  font-weight:850;
  line-height:1.2;
}

.student-archive-status-pill.normal{background:#eafaf0;color:#168a3a;}
.student-archive-status-pill.attention{background:#fff7e6;color:#a25a00;}
.student-archive-status-pill.risk{background:#fff1f0;color:#c01f1a;}
.student-archive-status-pill.renewal{background:#eaf2ff;color:#0071e3;}
.student-archive-status-pill.recommend{background:#f4efff;color:#6b3fc9;}

.student-archive-meta-line{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  color:#6e6e73;
  font-size:14px;
  font-weight:700;
}

.student-archive-suggestion-box{
  padding:16px;
  border-radius:22px;
  background:#1d1d1f;
  color:#fff;
}

.student-archive-suggestion-box span{
  display:block;
  color:rgba(255,255,255,.62);
  font-size:12px;
  font-weight:850;
  margin-bottom:8px;
}

.student-archive-suggestion-box strong{
  display:block;
  font-size:18px;
  line-height:1.42;
}

.student-archive-status-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:16px;
}

.student-archive-status-metric{
  padding:14px;
  border-radius:18px;
  background:#f5f5f7;
  border:1px solid rgba(210,210,215,.70);
}

.student-archive-status-metric span{
  display:block;
  color:#86868b;
  font-size:12px;
  font-weight:850;
}

.student-archive-status-metric strong{
  display:block;
  margin-top:6px;
  color:#1d1d1f;
  font-size:17px;
  line-height:1.35;
}

.student-archive-tabs{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:9px;
  margin-top:18px;
  border-radius:18px;
  background:rgba(245,245,247,.88);
  border:1px solid rgba(210,210,215,.70);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
  scroll-snap-type:x proximity;
  scrollbar-width:none;
}

.student-archive-tabs::-webkit-scrollbar{display:none;}

.student-archive-tab{
  flex:0 0 auto;
  border:0;
  background:transparent;
  color:#424245;
  border-radius:13px;
  min-height:44px;
  padding:10px 16px;
  font-size:14px;
  font-weight:850;
  white-space:nowrap;
  scroll-snap-align:start;
  cursor:pointer;
}

.student-archive-tab.active{
  background:#fff;
  color:#0071e3;
  box-shadow:0 8px 20px rgba(15,23,42,.08);
}

.student-archive-tab-panel{
  display:none;
  padding-top:18px;
}

.student-archive-tab-panel.active{
  display:block;
}

.student-archive-section-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:14px;
  margin:8px 0 14px;
}

.student-archive-section-head h3{
  margin:0;
}

.student-archive-section-head p{
  margin:5px 0 0;
  color:#6e6e73;
  line-height:1.55;
}

.student-archive-card{
  padding:18px;
  border-radius:22px;
  margin-top:14px;
}

.student-archive-action-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.student-archive-action-card{
  border-radius:22px;
  padding:17px;
  display:flex;
  flex-direction:column;
  min-height:188px;
  position:relative;
  overflow:hidden;
}

.student-archive-action-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:#d2d2d7;
}

.student-archive-action-card.priority-high{
  border-color:rgba(255,59,48,.26);
  background:linear-gradient(180deg,#fff,#fff8f7);
  box-shadow:0 18px 44px rgba(192,31,26,.12);
}

.student-archive-action-card.priority-high::before{background:#ff3b30;}
.student-archive-action-card.priority-medium::before{background:#ff9500;}
.student-archive-action-card.priority-low::before{background:#0071e3;}

.student-archive-action-card h4{
  margin:0 0 8px;
  color:#1d1d1f;
  font-size:17px;
  line-height:1.3;
}

.student-archive-action-card p{
  margin:0;
  color:#6e6e73;
  line-height:1.6;
  font-size:14px;
  flex:1;
}

.student-archive-action-script{
  margin-top:14px;
  padding:12px;
  border-radius:16px;
  background:#f5f5f7;
  border:1px solid rgba(210,210,215,.70);
}

.student-archive-action-script span,
.student-archive-detail-list span{
  display:block;
  color:#86868b;
  font-size:12px;
  font-weight:850;
  margin-bottom:6px;
}

.student-archive-action-script p{
  color:#1d1d1f;
  font-size:13px;
  line-height:1.55;
  white-space:pre-line;
}

.student-archive-action-foot{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-top:14px;
}

.student-archive-priority-pill.high{background:#fff1f0;color:#c01f1a;}
.student-archive-priority-pill.medium{background:#fff7e6;color:#a25a00;}
.student-archive-priority-pill.low{background:#eaf2ff;color:#0071e3;}

.student-archive-muted-pill{
  background:#f5f5f7;
  color:#6e6e73;
}

.student-archive-two-col{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.student-archive-portrait-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.student-archive-portrait-item{
  border-radius:20px;
  padding:16px;
  min-height:126px;
}

.student-archive-portrait-item span,
.student-archive-loop-card span,
.student-archive-timeline-type{
  display:block;
  color:#86868b;
  font-size:12px;
  font-weight:850;
  margin-bottom:8px;
}

.student-archive-portrait-item strong{
  display:block;
  color:#1d1d1f;
  font-size:17px;
  line-height:1.45;
}

.student-archive-portrait-item p{
  margin:8px 0 0;
  color:#6e6e73;
  line-height:1.6;
}

.student-archive-timeline{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.student-archive-filter-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 14px;
}

.student-archive-filter-chip{
  border:1px solid rgba(210,210,215,.76);
  background:#fff;
  color:#424245;
  border-radius:999px;
  min-height:38px;
  padding:8px 13px;
  font-size:13px;
  font-weight:850;
  cursor:pointer;
}

.student-archive-filter-chip.active{
  border-color:rgba(0,113,227,.28);
  background:#eaf2ff;
  color:#0071e3;
}

.student-archive-timeline-item{
  position:relative;
  border-radius:20px;
  padding:16px 16px 16px 44px;
}

.student-archive-timeline-item::before{
  content:"";
  position:absolute;
  left:18px;
  top:22px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#0071e3;
  box-shadow:0 0 0 5px rgba(0,113,227,.12);
}

.student-archive-timeline-item.warning::before{background:#ff9500;box-shadow:0 0 0 5px rgba(255,149,0,.14);}
.student-archive-timeline-item.danger::before{background:#ff3b30;box-shadow:0 0 0 5px rgba(255,59,48,.14);}
.student-archive-timeline-item.success::before{background:#30d158;box-shadow:0 0 0 5px rgba(48,209,88,.14);}

.student-archive-timeline-title{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:#1d1d1f;
  font-weight:850;
  line-height:1.45;
}

.student-archive-timeline-title time{
  flex-shrink:0;
  color:#86868b;
  font-size:12px;
  font-weight:800;
}

.student-archive-timeline-item p{
  margin:8px 0 0;
  color:#6e6e73;
  line-height:1.6;
}

.student-archive-loop-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.student-archive-loop-card{
  border-radius:22px;
  padding:17px;
}

.student-archive-loop-card h4{
  margin:0 0 8px;
  color:#1d1d1f;
  font-size:17px;
}

.student-archive-loop-card p{
  margin:8px 0 0;
  color:#6e6e73;
  line-height:1.55;
}

.student-archive-loop-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

.student-archive-detail-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}

.student-archive-detail-list div{
  padding:12px;
  border-radius:16px;
  background:#f5f5f7;
  border:1px solid rgba(210,210,215,.70);
}

.student-archive-detail-list strong{
  display:block;
  color:#1d1d1f;
  line-height:1.45;
}

.student-archive-script-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.student-archive-script-card{
  padding:15px;
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(210,210,215,.74);
}

.student-archive-script-card span{
  display:block;
  color:#86868b;
  font-size:12px;
  font-weight:850;
  margin-bottom:8px;
}

.student-archive-script-card p{
  color:#424245;
  line-height:1.6;
  margin:0 0 12px;
  white-space:pre-line;
}

.student-archive-360 .small-btn,
.student-archive-360 .btn{
  min-height:44px;
}

.student-archive-empty{
  padding:18px;
  border-radius:20px;
  background:#f5f5f7;
  border:1px solid rgba(210,210,215,.70);
  color:#6e6e73;
  line-height:1.6;
  font-weight:700;
}

.student-archive-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.student-archive-list-row{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:12px 0;
  border-bottom:1px solid rgba(210,210,215,.62);
  color:#424245;
  line-height:1.45;
}

.student-archive-list-row:last-child{
  border-bottom:0;
}

.student-archive-list-row strong{
  color:#1d1d1f;
  flex-shrink:0;
}

@media(max-width:980px){
  .student-archive-crm-layout{
    grid-template-columns:1fr;
  }
  .student-archive-master-panel{
    position:relative;
    top:auto;
    max-height:none;
  }
  .student-archive-master-list{
    max-height:none;
    display:flex;
    flex-direction:row;
    overflow-x:auto;
    overflow-y:hidden;
    padding-bottom:6px;
    scroll-snap-type:x proximity;
  }
  .student-archive-master-item{
    flex:0 0 230px;
    scroll-snap-align:start;
  }
  .student-archive-control-card,
  .student-archive-status-main{
    grid-template-columns:1fr;
  }
  .student-archive-quick-actions{
    justify-content:flex-start;
  }
  .student-archive-status-metrics,
  .student-archive-action-grid,
  .student-archive-portrait-grid,
  .student-archive-loop-grid,
  .student-archive-two-col{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:640px){
  .student-archive-360{
    padding-bottom:104px;
  }
  .student-archive-crm-layout{
    gap:14px;
  }
  .student-archive-master-panel{
    padding:14px;
    border-radius:20px;
  }
  .student-archive-master-head{
    margin-bottom:12px;
  }
  .student-archive-master-item{
    flex-basis:212px;
    min-height:74px;
  }
  .student-archive-control-card,
  .student-archive-status-card,
  .student-archive-card{
    padding:15px;
    border-radius:20px;
  }
  .student-archive-tabs{
    margin-left:-2px;
    margin-right:-2px;
    border-radius:16px;
  }
  .student-archive-status-metrics,
  .student-archive-action-grid,
  .student-archive-portrait-grid,
  .student-archive-loop-grid,
  .student-archive-detail-list,
  .student-archive-script-grid,
  .student-archive-two-col{
    grid-template-columns:1fr;
  }
  .student-archive-name-row h3{
    font-size:24px;
  }
  .student-archive-section-head,
  .student-archive-timeline-title{
    flex-direction:column;
    align-items:flex-start;
  }
  .student-archive-action-foot{
    align-items:flex-start;
    flex-direction:column;
  }
  .student-archive-action-foot .small-btn{
    width:100%;
  }
  .student-archive-timeline-item{
    padding:15px 15px 15px 40px;
  }
  .student-archive-timeline-title time{
    white-space:normal;
  }
}

#studentArchivePage{
  --archive-blue:#0a84ff;
  --archive-blue-soft:#eef6ff;
  --archive-text:#1f2937;
  --archive-muted:#6b7280;
  --archive-soft:#f6f8fb;
  --archive-card:#ffffff;
  --archive-shadow:0 18px 48px rgba(31,41,55,.08),0 2px 8px rgba(31,41,55,.04);
  --archive-shadow-soft:0 10px 28px rgba(31,41,55,.06);
}

#studentArchivePage .tips{
  border:0;
  border-radius:14px;
  background:rgba(255,255,255,.74);
  color:var(--archive-muted);
  box-shadow:var(--archive-shadow-soft);
}

#studentArchivePage .section-title{
  color:var(--archive-text);
  font-size:20px;
  font-weight:600;
  letter-spacing:0;
}

#studentArchivePage .section-title svg{
  color:var(--archive-blue);
}

#studentArchivePage .student-archive-crm-layout{
  grid-template-columns:minmax(250px,300px) minmax(0,1fr);
  gap:22px;
}

#studentArchivePage .student-archive-master-panel,
#studentArchivePage .student-archive-status-card,
#studentArchivePage .student-archive-card,
#studentArchivePage .student-archive-action-card,
#studentArchivePage .student-archive-portrait-item,
#studentArchivePage .student-archive-loop-card,
#studentArchivePage .student-archive-timeline-item,
#studentArchivePage .student-crm-shell,
#studentArchivePage .student-crm-score-card,
#studentArchivePage .student-crm-metric-card,
#studentArchivePage .student-crm-action-card,
#studentArchivePage .student-profile-card,
#studentArchivePage .analytics-card,
#studentArchivePage .lesson-record-card,
#studentArchivePage .notification-draft-card,
#studentArchivePage .student-archive-empty,
#studentArchivePage .student-archive-detail-list div,
#studentArchivePage .student-archive-script-card{
  border:0;
  border-radius:14px;
  background:rgba(255,255,255,.92);
  box-shadow:var(--archive-shadow-soft);
}

#studentArchivePage .student-archive-master-panel{
  padding:16px;
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(18px);
  box-shadow:var(--archive-shadow);
}

#studentArchivePage .student-archive-master-head{
  align-items:center;
  margin-bottom:12px;
}

#studentArchivePage .student-archive-master-head span{
  color:#94a3b8;
  font-size:12px;
  font-weight:400;
  letter-spacing:0;
  text-transform:none;
}

#studentArchivePage .student-archive-master-head h3{
  margin:2px 0 0;
  color:var(--archive-text);
  font-size:20px;
  font-weight:600;
}

#studentArchivePage .student-archive-master-head strong{
  background:var(--archive-blue-soft);
  color:var(--archive-blue);
  font-weight:600;
  box-shadow:none;
}

#studentArchivePage .student-archive-master-search{
  min-height:42px;
  border:0;
  border-radius:14px;
  background:var(--archive-soft);
  box-shadow:inset 0 1px 2px rgba(31,41,55,.04);
}

#studentArchivePage .student-archive-master-search input{
  color:var(--archive-text);
  font-size:13px;
  font-weight:400;
}

#studentArchivePage .student-archive-master-list{
  gap:10px;
  margin-top:14px;
}

#studentArchivePage .student-archive-master-item{
  position:relative;
  min-height:72px;
  padding:12px 12px 12px 14px;
  border:0;
  border-radius:14px;
  background:rgba(255,255,255,.84);
  box-shadow:0 8px 22px rgba(31,41,55,.045);
  color:var(--archive-text);
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:12px;
  overflow:hidden;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}

#studentArchivePage .student-archive-master-item::before{
  content:"";
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:3px;
  border-radius:0 999px 999px 0;
  background:transparent;
}

#studentArchivePage .student-archive-master-item:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(31,41,55,.08);
}

#studentArchivePage .student-archive-master-item.active{
  background:linear-gradient(135deg,#f8fbff,#eef6ff);
  box-shadow:0 16px 34px rgba(10,132,255,.14);
}

#studentArchivePage .student-archive-master-item.active::before{
  background:var(--archive-blue);
}

#studentArchivePage .student-archive-master-avatar{
  width:42px;
  height:42px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  overflow:hidden;
  background:linear-gradient(135deg,#dbeafe,#f8fafc);
  color:var(--archive-blue);
  font-size:16px;
  font-weight:600;
}

#studentArchivePage .student-archive-master-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}

#studentArchivePage .student-archive-master-body{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:5px;
  flex:1;
}

#studentArchivePage .student-archive-master-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

#studentArchivePage .student-archive-master-title strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--archive-text);
  font-size:14px;
  font-weight:600;
}

#studentArchivePage .student-archive-master-badge{
  flex:0 0 auto;
  padding:4px 8px;
  border-radius:999px;
  font-size:11px;
  font-weight:500;
  line-height:1.2;
}

#studentArchivePage .student-archive-master-badge.normal{
  background:rgba(10,132,255,.10);
  color:#2563eb;
}

#studentArchivePage .student-archive-master-badge.renewal{
  background:rgba(10,132,255,.14);
  color:#0a66d8;
}

#studentArchivePage .student-archive-master-badge.risk{
  background:rgba(248,113,113,.12);
  color:#b45353;
}

#studentArchivePage .student-archive-master-core{
  color:var(--archive-muted);
  font-size:12px;
  font-weight:400;
  line-height:1.35;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

#studentArchivePage .student-archive-control-card{
  padding:0;
  background:transparent;
  box-shadow:none;
  grid-template-columns:minmax(180px,240px) auto;
}

#studentArchivePage .student-archive-quick-actions .small-btn,
#studentArchivePage .student-archive-360 .small-btn,
#studentArchivePage .student-archive-360 .btn{
  border:0;
  border-radius:14px;
  box-shadow:0 8px 18px rgba(31,41,55,.06);
  font-size:13px;
  font-weight:500;
}

#studentArchivePage .student-archive-status-card{
  margin-top:14px;
  padding:24px;
  background:
    radial-gradient(circle at 92% 8%,rgba(10,132,255,.10),transparent 34%),
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(248,251,255,.94));
  box-shadow:var(--archive-shadow);
}

#studentArchivePage .student-archive-status-main{
  grid-template-columns:auto minmax(0,1fr) minmax(220px,280px);
}

#studentArchivePage .student-archive-avatar{
  width:64px;
  height:64px;
  border-radius:14px;
  background:linear-gradient(135deg,#dbeafe,#f8fafc);
  color:var(--archive-blue);
  font-size:22px;
  font-weight:600;
}

#studentArchivePage .student-archive-name-row h3,
#studentArchivePage .student-crm-hero h3,
#studentArchivePage .student-archive-section-head h3,
#studentArchivePage .student-profile-card h3,
#studentArchivePage .student-archive-card h3{
  color:var(--archive-text);
  font-size:20px;
  font-weight:600;
  line-height:1.25;
  letter-spacing:0;
}

#studentArchivePage .student-archive-meta-line,
#studentArchivePage .student-archive-section-head p,
#studentArchivePage .student-crm-hero p,
#studentArchivePage .student-archive-card p,
#studentArchivePage .student-archive-loop-card p,
#studentArchivePage .student-archive-timeline-item p,
#studentArchivePage .student-archive-action-card p{
  color:var(--archive-muted);
  font-size:13px;
  font-weight:400;
  line-height:1.58;
}

#studentArchivePage .student-archive-status-pill,
#studentArchivePage .student-archive-priority-pill,
#studentArchivePage .student-archive-muted-pill,
#studentArchivePage .student-crm-v2-badge{
  min-height:26px;
  padding:6px 9px;
  border:0;
  border-radius:999px;
  font-size:12px;
  font-weight:500;
}

#studentArchivePage .student-archive-status-pill.normal,
#studentArchivePage .student-crm-v2-badge.ok{
  background:rgba(10,132,255,.10);
  color:#2563eb;
}

#studentArchivePage .student-archive-status-pill.attention{
  background:rgba(245,158,11,.11);
  color:#a16207;
}

#studentArchivePage .student-archive-status-pill.risk,
#studentArchivePage .student-crm-v2-badge.danger,
#studentArchivePage .student-archive-priority-pill.high{
  background:rgba(248,113,113,.12);
  color:#b45353;
}

#studentArchivePage .student-archive-status-pill.renewal,
#studentArchivePage .student-crm-v2-badge.renewal,
#studentArchivePage .student-archive-priority-pill.medium{
  background:rgba(10,132,255,.12);
  color:#0a66d8;
}

#studentArchivePage .student-archive-status-pill.recommend,
#studentArchivePage .student-archive-priority-pill.low,
#studentArchivePage .student-archive-muted-pill{
  background:#f1f5f9;
  color:#64748b;
}

#studentArchivePage .student-archive-suggestion-box{
  border-radius:14px;
  background:#f5f9ff;
  color:var(--archive-text);
  box-shadow:inset 0 0 0 1px rgba(10,132,255,.08);
}

#studentArchivePage .student-archive-suggestion-box span{
  color:#64748b;
  font-size:12px;
  font-weight:400;
}

#studentArchivePage .student-archive-suggestion-box strong{
  color:var(--archive-text);
  font-size:16px;
  font-weight:500;
}

#studentArchivePage .student-archive-status-metrics{
  gap:12px;
}

#studentArchivePage .student-archive-status-metric{
  min-height:112px;
  padding:16px;
  border:0;
  border-radius:14px;
  background:#f8fafc;
  box-shadow:inset 0 0 0 1px rgba(226,232,240,.45);
}

#studentArchivePage .student-archive-status-metric span,
#studentArchivePage .student-archive-detail-list span,
#studentArchivePage .student-archive-portrait-item span,
#studentArchivePage .student-archive-loop-card span,
#studentArchivePage .student-archive-timeline-type,
#studentArchivePage .student-crm-score-card span,
#studentArchivePage .student-crm-metric-card span,
#studentArchivePage .student-crm-card-head span,
#studentArchivePage .student-archive-script-card span{
  color:#94a3b8;
  font-size:12px;
  font-weight:400;
}

#studentArchivePage .student-archive-status-metric strong,
#studentArchivePage .student-archive-detail-list strong,
#studentArchivePage .student-archive-portrait-item strong,
#studentArchivePage .student-archive-loop-card h4,
#studentArchivePage .student-crm-metric-card strong{
  color:var(--archive-text);
  font-size:16px;
  font-weight:500;
  line-height:1.35;
}

#studentArchivePage .student-archive-status-metric small{
  display:block;
  margin-top:7px;
  color:var(--archive-muted);
  font-size:12px;
  font-weight:400;
  line-height:1.45;
}

#studentArchivePage .student-archive-tabs{
  border:0;
  border-radius:14px;
  background:rgba(255,255,255,.72);
  box-shadow:var(--archive-shadow-soft);
  padding:7px;
}

#studentArchivePage .student-archive-tab{
  border-radius:12px;
  color:#64748b;
  font-size:13px;
  font-weight:500;
}

#studentArchivePage .student-archive-tab.active{
  color:var(--archive-blue);
  background:#fff;
  box-shadow:0 8px 20px rgba(10,132,255,.10);
}

#studentArchivePage .student-archive-action-grid{
  grid-template-columns:minmax(0,1.35fr) repeat(2,minmax(220px,1fr));
  gap:14px;
}

#studentArchivePage .student-archive-action-card{
  min-height:156px;
  padding:18px;
  background:linear-gradient(180deg,#fff,#f8fbff);
  box-shadow:var(--archive-shadow);
}

#studentArchivePage .student-archive-action-card::before{
  width:0;
}

#studentArchivePage .student-archive-action-card:first-child{
  background:
    radial-gradient(circle at 96% 10%,rgba(10,132,255,.13),transparent 34%),
    linear-gradient(135deg,#ffffff,#f4f9ff);
  box-shadow:0 22px 54px rgba(10,132,255,.14),0 2px 8px rgba(31,41,55,.04);
}

#studentArchivePage .student-archive-action-card h4{
  margin:0 0 8px;
  color:var(--archive-text);
  font-size:20px;
  font-weight:600;
  line-height:1.28;
}

#studentArchivePage .student-archive-action-card h4::before{
  content:"🎯";
  margin-right:8px;
}

#studentArchivePage .student-archive-action-card.priority-high h4::before{
  content:"🚩";
}

#studentArchivePage .student-archive-action-card.priority-medium h4::before{
  content:"💬";
}

#studentArchivePage .student-archive-action-card.priority-low h4::before{
  content:"👀";
}

#studentArchivePage .student-archive-action-card > p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  flex:0 0 auto;
}

#studentArchivePage .student-archive-action-script{
  display:none;
}

#studentArchivePage .student-archive-action-foot{
  margin-top:auto;
  justify-content:flex-start;
}

#studentArchivePage .student-archive-action-foot .student-archive-muted-pill{
  display:none;
}

#studentArchivePage .student-archive-action-foot .small-btn{
  margin-left:auto;
  background:var(--archive-blue);
  color:#fff;
  box-shadow:0 12px 24px rgba(10,132,255,.22);
}

#studentArchivePage .student-crm-shell{
  background:rgba(255,255,255,.78);
  box-shadow:var(--archive-shadow-soft);
  padding:20px;
}

#studentArchivePage .student-crm-kicker{
  background:var(--archive-blue-soft);
  color:var(--archive-blue);
  font-size:12px;
  font-weight:500;
  letter-spacing:0;
  text-transform:none;
}

#studentArchivePage .student-crm-score-card strong{
  color:var(--archive-blue);
  font-size:40px;
  font-weight:600;
}

#studentArchivePage .student-crm-action-card.primary{
  background:linear-gradient(135deg,#f8fbff,#eef6ff);
  color:var(--archive-text);
}

#studentArchivePage .student-crm-action-card.primary .student-crm-card-head span,
#studentArchivePage .student-crm-action-card.primary p{
  color:var(--archive-muted);
}

#studentArchivePage .student-crm-task-pill{
  border:0;
  background:#fff;
  color:#2563eb;
  font-weight:500;
}

#studentArchivePage .student-crm-course-pill,
#studentArchivePage .student-archive-detail-list div,
#studentArchivePage .student-profile-summary,
#studentArchivePage .student-archive-empty{
  border:0;
  border-radius:14px;
  background:#f8fafc;
  color:var(--archive-muted);
  box-shadow:none;
}

#studentArchivePage .student-archive-list-row,
#studentArchivePage .analytics-item{
  border-bottom:1px solid rgba(226,232,240,.55);
  color:var(--archive-muted);
  font-size:13px;
  font-weight:400;
}

#studentArchivePage .student-archive-list-row strong,
#studentArchivePage .analytics-item strong{
  color:var(--archive-text);
  font-weight:500;
}

#studentArchivePage .student-archive-filter-chip{
  border:0;
  background:#fff;
  color:#64748b;
  box-shadow:0 8px 20px rgba(31,41,55,.045);
  font-size:13px;
  font-weight:500;
}

#studentArchivePage .student-archive-filter-chip.active{
  background:var(--archive-blue-soft);
  color:var(--archive-blue);
}

#studentArchivePage .student-archive-timeline-item::before{
  background:var(--archive-blue);
  box-shadow:0 0 0 5px rgba(10,132,255,.10);
}

#studentArchivePage .student-archive-timeline-item.warning::before,
#studentArchivePage .student-archive-timeline-item.danger::before,
#studentArchivePage .student-archive-timeline-item.success::before{
  background:var(--archive-blue);
  box-shadow:0 0 0 5px rgba(10,132,255,.10);
}

#studentArchivePage .student-archive-timeline-title{
  color:var(--archive-text);
  font-size:14px;
  font-weight:500;
}

#studentArchivePage .student-archive-timeline-title time{
  color:#94a3b8;
  font-weight:400;
}

@media(max-width:980px){
  #studentArchivePage .student-archive-crm-layout{
    grid-template-columns:1fr;
  }
  #studentArchivePage .student-archive-master-item{
    flex:0 0 218px;
  }
  #studentArchivePage .student-archive-action-grid{
    grid-template-columns:1fr 1fr;
  }
  #studentArchivePage .student-archive-action-card:first-child{
    grid-column:1 / -1;
  }
}

@media(max-width:640px){
  #studentArchivePage .student-archive-master-panel,
  #studentArchivePage .student-archive-status-card,
  #studentArchivePage .student-archive-card,
  #studentArchivePage .student-crm-shell,
  #studentArchivePage .student-profile-card{
    padding:16px;
  }
  #studentArchivePage .student-archive-master-list{
    flex-direction:row;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x proximity;
  }
  #studentArchivePage .student-archive-master-item{
    flex:0 0 210px;
    scroll-snap-align:start;
  }
  #studentArchivePage .student-archive-status-main,
  #studentArchivePage .student-archive-status-metrics,
  #studentArchivePage .student-archive-action-grid,
  #studentArchivePage .student-crm-action-grid,
  #studentArchivePage .student-crm-metrics{
    grid-template-columns:1fr;
  }
  #studentArchivePage .student-archive-name-row h3,
  #studentArchivePage .student-crm-hero h3,
  #studentArchivePage .student-archive-section-head h3{
    font-size:20px;
  }
  #studentArchivePage .student-archive-priority-block{
    position:sticky;
    top:8px;
    z-index:6;
    padding:2px 0;
    background:linear-gradient(180deg,rgba(248,250,252,.96),rgba(248,250,252,.72));
    backdrop-filter:blur(12px);
  }
}

#studentArchivePage{
  background:linear-gradient(180deg,#fbfdff 0%,#f7faff 100%);
}

#studentArchivePage .tips{
  display:none;
}

#studentArchivePage .student-archive-360{
  margin-top:26px;
}

#studentArchivePage .student-archive-crm-layout{
  grid-template-columns:300px minmax(0,1fr);
  gap:24px;
}

#studentArchivePage .student-archive-master-panel{
  border:1px solid #e8eef7;
  border-radius:18px;
  background:#fff;
  box-shadow:0 18px 48px rgba(30,64,175,.05);
  padding:18px;
}

#studentArchivePage .student-archive-master-head{
  padding:0 4px;
}

#studentArchivePage .student-archive-master-head span{
  color:#102033;
  font-size:15px;
  font-weight:600;
}

#studentArchivePage .student-archive-master-head h3{
  display:none;
}

#studentArchivePage .student-archive-master-head strong{
  min-width:auto;
  min-height:auto;
  padding:0;
  background:transparent;
  color:#6b7890;
  font-size:13px;
  font-weight:500;
}

#studentArchivePage .student-archive-master-search{
  height:36px;
  min-height:36px;
  padding:0 10px;
  gap:7px;
  border:1px solid #e7edf7;
  border-radius:12px;
  background:#fff;
  box-shadow:0 8px 18px rgba(37,99,235,.035);
}

#studentArchivePage .student-archive-master-search svg{
  width:15px;
  height:15px;
  color:#94a3b8;
}

#studentArchivePage .student-archive-master-search input{
  height:34px !important;
  min-height:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  appearance:none;
  -webkit-appearance:none;
  background:transparent !important;
  color:#334155;
  font-size:13px !important;
  font-weight:400;
  line-height:34px !important;
  box-shadow:none !important;
}

#studentArchivePage .student-archive-master-search input::placeholder{
  color:#98a4b8;
}

#studentArchivePage .student-archive-master-filters{
  margin-top:10px;
}

#studentArchivePage .student-archive-master-filters select{
  width:100%;
  min-height:40px;
  border:1px solid #e7edf7;
  border-radius:12px;
  background:#fff;
  color:#334155;
  font-size:13px;
  font-weight:500;
  box-shadow:0 8px 20px rgba(37,99,235,.035);
}

#studentArchivePage .student-archive-master-list{
  gap:10px;
  margin-top:20px;
  padding:0 2px 2px;
}

#studentArchivePage .student-archive-master-item{
  min-height:76px;
  padding:12px 14px;
  border:1px solid #ecf1f8;
  border-radius:14px;
  background:#fff;
  box-shadow:0 10px 28px rgba(15,23,42,.035);
}

#studentArchivePage .student-archive-master-item::before{
  top:0;
  bottom:0;
  width:3px;
  border-radius:14px 0 0 14px;
}

#studentArchivePage .student-archive-master-item:hover{
  transform:translateY(-2px);
  border-color:#dbe8ff;
  box-shadow:0 16px 34px rgba(37,99,235,.10);
}

#studentArchivePage .student-archive-master-item.active{
  border-color:#1374ff;
  background:#f7fbff;
  box-shadow:0 14px 30px rgba(19,116,255,.12);
}

#studentArchivePage .student-archive-master-avatar{
  width:46px;
  height:46px;
  border-radius:50%;
  background:#edf5ff;
  color:#116dff;
  box-shadow:inset 0 0 0 1px rgba(19,116,255,.10);
}

#studentArchivePage .student-archive-master-title strong{
  font-size:14px;
  font-weight:600;
  color:#1f2a44;
}

#studentArchivePage .student-archive-master-badge{
  padding:4px 7px;
  font-size:11px;
  font-weight:600;
}

#studentArchivePage .student-archive-master-badge.normal{
  background:#eafaf2;
  color:#119c5b;
}

#studentArchivePage .student-archive-master-badge.renewal{
  background:#eaf3ff;
  color:#1268e8;
}

#studentArchivePage .student-archive-master-badge.risk{
  background:#fff1f1;
  color:#e05252;
}

#studentArchivePage .student-archive-master-core{
  color:#7b8798;
  font-size:12px;
}

#studentArchivePage .student-archive-control-card{
  display:none;
}

#studentArchivePage .student-archive-status-card{
  margin-top:0;
  padding:0;
  background:transparent;
  box-shadow:none;
}

#studentArchivePage .student-archive-status-main{
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:26px 28px;
  border:1px solid #e8eef7;
  border-radius:18px;
  background:#fff;
  box-shadow:0 18px 48px rgba(30,64,175,.055);
}

#studentArchivePage .student-archive-avatar{
  width:68px;
  height:68px;
  border-radius:50%;
  background:#edf5ff;
  color:#116dff;
  font-size:24px;
}

#studentArchivePage .student-archive-name-row{
  gap:12px;
  margin-bottom:8px;
}

#studentArchivePage .student-archive-name-row h3{
  font-size:24px;
  font-weight:650;
  color:#111827;
}

#studentArchivePage .student-archive-status-pill{
  min-height:26px;
  padding:5px 9px;
  font-size:12px;
  font-weight:600;
}

#studentArchivePage .student-archive-meta-line{
  color:#64748b;
  font-size:13px;
  gap:10px 18px;
}

#studentArchivePage .student-archive-info-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

#studentArchivePage .student-archive-info-pills span{
  min-height:34px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:0 12px;
  border:1px solid #e8eef7;
  border-radius:10px;
  background:#f9fbff;
  color:#58657a;
  font-size:13px;
  font-weight:500;
}

#studentArchivePage .student-archive-info-pills svg{
  width:14px;
  height:14px;
  color:#7b8798;
}

#studentArchivePage .student-archive-status-actions{
  display:flex;
  gap:10px;
  align-self:flex-start;
}

#studentArchivePage .student-archive-status-actions .small-btn{
  min-height:38px;
  border:1px solid #e7edf7;
  border-radius:10px;
  background:#fff;
  color:#334155;
  box-shadow:0 8px 20px rgba(15,23,42,.04);
  display:inline-flex;
  align-items:center;
  gap:7px;
}

#studentArchivePage .student-archive-status-actions svg{
  width:15px;
  height:15px;
}

#studentArchivePage .student-archive-status-metrics{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-top:14px;
}

#studentArchivePage .student-archive-status-metric{
  min-height:116px;
  padding:18px;
  border:1px solid #e6edf8;
  border-radius:14px;
  background:#fff;
  box-shadow:0 16px 36px rgba(15,23,42,.045);
}

#studentArchivePage .student-archive-status-metric.metric-blue{border-color:#d9e8ff;background:linear-gradient(135deg,#fff,#f7fbff);}
#studentArchivePage .student-archive-status-metric.metric-orange{border-color:#ffe3d2;background:linear-gradient(135deg,#fff,#fff9f5);}
#studentArchivePage .student-archive-status-metric.metric-green{border-color:#d9f3e7;background:linear-gradient(135deg,#fff,#f7fffb);}
#studentArchivePage .student-archive-status-metric.metric-purple{border-color:#eddcff;background:linear-gradient(135deg,#fff,#fcf8ff);}

#studentArchivePage .student-archive-status-metric span{
  display:flex;
  align-items:center;
  gap:8px;
  color:#7b8798;
  font-size:14px;
  font-weight:600;
}

#studentArchivePage .student-archive-status-metric span svg{
  width:16px;
  height:16px;
}

#studentArchivePage .student-archive-status-metric.metric-blue svg{color:#1374ff;}
#studentArchivePage .student-archive-status-metric.metric-orange svg{color:#f97316;}
#studentArchivePage .student-archive-status-metric.metric-green svg{color:#16a34a;}
#studentArchivePage .student-archive-status-metric.metric-purple svg{color:#a855f7;}

#studentArchivePage .student-archive-status-metric strong{
  margin-top:14px;
  color:#111827;
  font-size:22px;
  font-weight:650;
  line-height:1.2;
}

#studentArchivePage .student-archive-status-metric small{
  color:#7b8798;
  font-size:12px;
  line-height:1.45;
}

#studentArchivePage .student-archive-priority-block > .student-archive-section-head,
#studentArchivePage .student-archive-tab-panel[data-student-archive-panel="overview"] > .student-archive-section-head:first-child{
  margin:16px 0 0;
  padding:18px 22px 4px;
  border:1px solid #f7dedb;
  border-bottom:0;
  border-radius:18px 18px 0 0;
  background:linear-gradient(135deg,#fff7f5,#fff);
  box-shadow:0 18px 48px rgba(239,68,68,.055);
}

#studentArchivePage .student-archive-priority-block > .student-archive-section-head h3,
#studentArchivePage .student-archive-tab-panel[data-student-archive-panel="overview"] > .student-archive-section-head:first-child h3{
  font-size:17px;
  font-weight:650;
}

#studentArchivePage .student-archive-priority-block > .student-archive-section-head h3::before,
#studentArchivePage .student-archive-tab-panel[data-student-archive-panel="overview"] > .student-archive-section-head:first-child h3::before{
  content:"🚩";
  margin-right:8px;
}

#studentArchivePage .student-archive-priority-block > .student-archive-section-head p,
#studentArchivePage .student-archive-tab-panel[data-student-archive-panel="overview"] > .student-archive-section-head:first-child p{
  font-size:12px;
  color:#7b8798;
}

#studentArchivePage .student-archive-priority-block > .student-archive-section-head .student-archive-muted-pill,
#studentArchivePage .student-archive-tab-panel[data-student-archive-panel="overview"] > .student-archive-section-head:first-child .student-archive-muted-pill{
  background:#fff;
  color:#334155;
  box-shadow:0 8px 18px rgba(15,23,42,.05);
}

#studentArchivePage .student-archive-action-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  padding:18px 22px 22px;
  border:1px solid #f7dedb;
  border-top:0;
  border-radius:0 0 18px 18px;
  background:linear-gradient(135deg,#fff7f5,#fff);
  box-shadow:0 18px 48px rgba(239,68,68,.055);
}

#studentArchivePage .student-archive-action-card,
#studentArchivePage .student-archive-action-card:first-child{
  min-height:112px;
  padding:16px 18px;
  border:0;
  border-radius:14px;
  background:rgba(255,255,255,.88);
  box-shadow:0 12px 30px rgba(30,64,175,.05);
}

#studentArchivePage .student-archive-action-card:nth-child(n+4){
  display:none;
}

#studentArchivePage .student-archive-action-card h4{
  font-size:17px;
  font-weight:650;
  color:#111827;
}

#studentArchivePage .student-archive-action-card > p{
  -webkit-line-clamp:1;
  color:#7b8798;
  font-size:13px;
}

#studentArchivePage .student-archive-action-foot{
  align-items:center;
  gap:8px;
}

#studentArchivePage .student-archive-priority-pill{
  min-height:24px;
  padding:4px 8px;
  font-size:11px;
  font-weight:600;
}

#studentArchivePage .student-archive-action-foot .small-btn{
  min-height:34px;
  padding:0 12px;
  border-radius:10px;
}

#studentArchivePage .student-archive-tabs{
  margin-top:24px;
  padding:0;
  gap:22px;
  border-radius:0;
  border-bottom:1px solid #e8eef7;
  background:transparent;
  box-shadow:none;
}

#studentArchivePage .student-archive-tab{
  min-height:44px;
  padding:0 0 12px;
  border-radius:0;
  background:transparent;
  color:#64748b;
  font-size:14px;
  font-weight:600;
  position:relative;
}

#studentArchivePage .student-archive-tab.active{
  background:transparent;
  color:#1374ff;
  box-shadow:none;
}

#studentArchivePage .student-archive-tab.active::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:2px;
  border-radius:999px;
  background:#1374ff;
}

#studentArchivePage .student-archive-tab-shell{
  display:grid;
  grid-template-columns:36px minmax(0,1fr) 36px;
  align-items:center;
  gap:8px;
  margin-top:24px;
}

#studentArchivePage .student-archive-tab-shell .student-archive-tabs{
  min-width:0;
  margin-top:0;
}

#studentArchivePage .student-archive-tab-scroll{
  width:36px;
  height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.86);
  color:#64748b;
  box-shadow:0 10px 24px rgba(15,23,42,.08);
  cursor:pointer;
  transition:transform .18s ease, color .18s ease, box-shadow .18s ease, opacity .18s ease;
}

#studentArchivePage .student-archive-tab-scroll:hover{
  color:#1374ff;
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(19,116,255,.13);
}

#studentArchivePage .student-archive-tab-scroll:disabled{
  opacity:.35;
  cursor:default;
  transform:none;
  box-shadow:0 8px 18px rgba(15,23,42,.04);
}

#studentArchivePage .student-archive-tab-scroll svg{
  width:18px;
  height:18px;
  stroke-width:2.4;
}

#studentArchivePage .student-crm-shell,
#studentArchivePage .student-profile-card,
#studentArchivePage .student-archive-card,
#studentArchivePage .student-archive-loop-card,
#studentArchivePage .student-archive-portrait-item,
#studentArchivePage .student-archive-timeline-item{
  border:1px solid #e8eef7;
  background:#fff;
  box-shadow:0 14px 36px rgba(30,64,175,.045);
}

#studentArchivePage .student-crm-shell{
  display:none;
}

#studentArchivePage .student-archive-master-body{
  gap:4px;
}

#studentArchivePage .student-archive-master-title{
  align-items:flex-start;
}

#studentArchivePage .student-archive-master-meta{
  color:#7b8798;
  font-size:12px;
  line-height:1.35;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

#studentArchivePage .student-archive-master-core{
  align-self:flex-end;
  min-width:54px;
  margin-left:auto;
  text-align:right;
  color:#475569;
  font-size:12px;
  white-space:nowrap;
}

#studentArchivePage .student-archive-overview-grid{
  display:grid;
  grid-template-columns:1.05fr 1.2fr 1.05fr;
  gap:14px;
  margin-top:18px;
}

#studentArchivePage .student-archive-overview-card{
  border:1px solid #e8eef7;
  border-radius:18px;
  background:#fff;
  box-shadow:0 14px 36px rgba(30,64,175,.045);
  padding:18px;
  min-height:224px;
}

#studentArchivePage .student-archive-overview-card h3{
  margin:0 0 14px;
  color:#111827;
  font-size:17px;
  font-weight:650;
  line-height:1.25;
}

#studentArchivePage .student-archive-overview-card h3 small{
  color:#7b8798;
  font-size:12px;
  font-weight:500;
}

#studentArchivePage .student-archive-summary-list{
  display:grid;
  gap:12px;
}

#studentArchivePage .student-archive-summary-list div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

#studentArchivePage .student-archive-summary-list span{
  color:#7b8798;
  font-size:13px;
}

#studentArchivePage .student-archive-summary-list strong{
  color:#1f2a44;
  font-size:13px;
  font-weight:650;
}

#studentArchivePage .student-archive-radar{
  position:relative;
  width:min(260px,100%);
  aspect-ratio:1;
  margin:2px auto 0;
}

#studentArchivePage .student-archive-radar-web{
  position:absolute;
  inset:34px;
  border-radius:50%;
  background:
    radial-gradient(circle,transparent 0 22%,rgba(19,116,255,.08) 23% 24%,transparent 25% 45%,rgba(19,116,255,.08) 46% 47%,transparent 48% 68%,rgba(19,116,255,.08) 69% 70%,transparent 71%),
    conic-gradient(from 0deg,rgba(19,116,255,.16) 0 1deg,transparent 1deg 60deg,rgba(19,116,255,.16) 60deg 61deg,transparent 61deg 120deg,rgba(19,116,255,.16) 120deg 121deg,transparent 121deg 180deg,rgba(19,116,255,.16) 180deg 181deg,transparent 181deg 240deg,rgba(19,116,255,.16) 240deg 241deg,transparent 241deg 300deg,rgba(19,116,255,.16) 300deg 301deg,transparent 301deg);
}

#studentArchivePage .student-archive-radar-area{
  position:absolute;
  inset:72px 66px 58px 64px;
  background:rgba(16,185,129,.14);
  border:2px solid #1374ff;
  clip-path:polygon(50% 0,88% 27%,82% 76%,50% 100%,17% 76%,12% 28%);
}

#studentArchivePage .radar-label{
  position:absolute;
  color:#1374ff;
  font-size:11px;
  font-weight:600;
  white-space:nowrap;
}

#studentArchivePage .radar-label-0{top:6px;left:50%;transform:translateX(-50%);}
#studentArchivePage .radar-label-1{right:0;top:30%;}
#studentArchivePage .radar-label-2{right:2px;bottom:24%;}
#studentArchivePage .radar-label-3{bottom:4px;left:50%;transform:translateX(-50%);}
#studentArchivePage .radar-label-4{left:0;bottom:24%;}
#studentArchivePage .radar-label-5{left:0;top:30%;}

#studentArchivePage .student-archive-radar-legend{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  margin-top:8px;
  color:#64748b;
  font-size:12px;
}

#studentArchivePage .student-archive-radar-legend span{
  width:16px;
  height:2px;
  border-radius:999px;
  background:#1374ff;
}

#studentArchivePage .student-archive-radar-legend span:last-of-type{
  background:#22c55e;
  border-top:2px dashed #22c55e;
  height:0;
}

#studentArchivePage .student-archive-trend-empty{
  min-height:166px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#7b8798;
}

#studentArchivePage .student-archive-trend-empty svg{
  width:44px;
  height:44px;
  padding:10px;
  border-radius:999px;
  background:#f3f7fd;
  color:#b6c3d6;
}

#studentArchivePage .student-archive-trend-empty strong{
  margin-top:12px;
  color:#526176;
  font-size:14px;
}

#studentArchivePage .student-archive-trend-empty span{
  margin-top:6px;
  font-size:12px;
}

#studentArchivePage .overview-dynamics{
  grid-column:1 / -1;
  min-height:150px;
}

#studentArchivePage .student-archive-overview-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:18px;
}

#studentArchivePage .student-archive-overview-head h3{
  margin:0;
}

#studentArchivePage .student-archive-overview-head button{
  border:0;
  background:transparent;
  color:#1374ff;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
}

#studentArchivePage .student-archive-dynamics-row{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

#studentArchivePage .student-archive-dynamic-item{
  position:relative;
  min-height:82px;
  padding:0 8px 0 28px;
}

#studentArchivePage .student-archive-dynamic-item::before{
  content:"";
  position:absolute;
  left:2px;
  top:4px;
  width:22px;
  height:22px;
  border-radius:50%;
  background:#edf5ff;
  box-shadow:inset 0 0 0 1px #d9e8ff;
}

#studentArchivePage .student-archive-dynamic-item::after{
  content:"";
  position:absolute;
  left:12px;
  top:30px;
  bottom:0;
  width:2px;
  background:#dbe8ff;
}

#studentArchivePage .student-archive-dynamic-item span{
  display:inline-flex;
  padding:5px 10px;
  border-radius:999px;
  background:#edf5ff;
  color:#4975b8;
  font-size:12px;
  font-weight:600;
}

#studentArchivePage .student-archive-dynamic-item strong{
  display:block;
  margin-top:9px;
  color:#111827;
  font-size:13px;
  font-weight:650;
}

#studentArchivePage .student-archive-dynamic-item p{
  margin:5px 0 0;
  color:#7b8798;
  font-size:12px;
}

#studentArchivePage .student-archive-workbench-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

#studentArchivePage .student-archive-workbench-card{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:12px;
  min-height:220px;
  padding:18px;
  border:1px solid #e8eef7;
  border-radius:18px;
  background:#fff;
  box-shadow:0 14px 36px rgba(30,64,175,.045);
}

#studentArchivePage .student-archive-workbench-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  border-radius:18px 0 0 18px;
  background:#1374ff;
}

#studentArchivePage .student-archive-workbench-card.priority-high::before{background:#f97316;}
#studentArchivePage .student-archive-workbench-card.priority-medium::before{background:#1374ff;}
#studentArchivePage .student-archive-workbench-card.priority-low::before{background:#22c55e;}

#studentArchivePage .student-archive-workbench-card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

#studentArchivePage .student-archive-workbench-card-head span,
#studentArchivePage .student-archive-workbench-card-head strong{
  display:inline-flex;
  min-height:24px;
  align-items:center;
  padding:0 9px;
  border-radius:999px;
  background:#f3f7fd;
  color:#4975b8;
  font-size:12px;
  font-weight:650;
}

#studentArchivePage .student-archive-workbench-card h4{
  margin:0;
  color:#111827;
  font-size:16px;
  font-weight:680;
  line-height:1.25;
}

#studentArchivePage .student-archive-workbench-card p{
  margin:0;
  color:#64748b;
  font-size:13px;
  line-height:1.55;
}

#studentArchivePage .student-archive-workbench-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:auto;
}

#studentArchivePage .student-archive-detail-list.compact{
  gap:6px;
}

#studentArchivePage .student-archive-detail-list.compact div{
  min-height:32px;
  padding:8px 10px;
}

#studentArchivePage .student-archive-followup-form{
  display:grid;
  gap:10px;
}

#studentArchivePage .student-archive-followup-form label{
  color:#64748b;
  font-size:13px;
  font-weight:600;
}

#studentArchivePage .student-archive-followup-form select,
#studentArchivePage .student-archive-followup-form input,
#studentArchivePage .student-archive-followup-form textarea{
  width:100%;
  border:1px solid #e8eef7;
  border-radius:12px;
  background:#fff;
  color:#111827;
  font-size:14px;
  box-sizing:border-box;
}

#studentArchivePage .student-archive-followup-form textarea{
  min-height:120px;
  resize:vertical;
}

#studentArchivePage .student-archive-board-table{
  display:grid;
  gap:10px;
}

#studentArchivePage .student-archive-board-row{
  display:grid;
  grid-template-columns:minmax(120px,.7fr) minmax(220px,1.5fr) minmax(120px,.9fr);
  align-items:center;
  gap:14px;
  width:100%;
  min-height:58px;
  padding:12px 14px;
  border:1px solid #e8eef7;
  border-radius:14px;
  background:#fff;
  color:inherit;
  text-align:left;
  box-shadow:0 10px 28px rgba(30,64,175,.035);
}

#studentArchivePage .student-archive-board-row.interactive{
  cursor:pointer;
}

#studentArchivePage .student-archive-board-row.interactive:hover{
  transform:translateY(-1px);
  box-shadow:0 16px 34px rgba(30,64,175,.07);
}

#studentArchivePage .student-archive-board-row strong{
  color:#111827;
  font-size:14px;
  font-weight:680;
}

#studentArchivePage .student-archive-board-row span{
  color:#64748b;
  font-size:13px;
  line-height:1.45;
}

#studentArchivePage .student-archive-board-row em{
  color:#4975b8;
  font-size:12px;
  font-style:normal;
  font-weight:650;
}

#studentArchivePage .student-archive-sales-list{
  display:grid;
  gap:12px;
  margin-top:14px;
}

#studentArchivePage .student-archive-sales-row{
  display:grid;
  grid-template-columns:minmax(260px,1.2fr) minmax(240px,1fr) auto;
  gap:16px;
  align-items:center;
  padding:18px;
  border-radius:18px;
  background:#fff;
  box-shadow:0 14px 36px rgba(30,64,175,.045);
  border:1px solid rgba(226,232,240,.72);
}

#studentArchivePage .student-archive-sales-row.priority-high{
  background:linear-gradient(135deg,rgba(255,247,237,.98),#fff);
}

#studentArchivePage .student-archive-sales-row.priority-medium{
  background:linear-gradient(135deg,rgba(239,246,255,.98),#fff);
}

#studentArchivePage .student-archive-sales-row h4{
  margin:6px 0 6px;
  color:#111827;
  font-size:16px;
  font-weight:700;
}

#studentArchivePage .student-archive-sales-row p{
  margin:0;
  color:#64748b;
  font-size:13px;
  line-height:1.55;
}

#studentArchivePage .student-archive-sales-kicker{
  display:inline-flex;
  min-height:24px;
  align-items:center;
  padding:0 9px;
  border-radius:999px;
  background:#eef6ff;
  color:#1374ff;
  font-size:12px;
  font-weight:700;
}

#studentArchivePage .student-archive-sales-meta{
  display:grid;
  gap:6px;
  color:#64748b;
  font-size:12px;
  line-height:1.45;
}

#studentArchivePage .student-archive-parent-card-text{
  margin:0;
  padding:18px;
  border-radius:16px;
  background:#f8fbff;
  color:#334155;
  font-size:13px;
  line-height:1.75;
  white-space:pre-wrap;
  word-break:break-word;
  font-family:inherit;
}

@media(max-width:980px){
  #studentArchivePage .student-archive-crm-layout{
    grid-template-columns:1fr;
  }
  #studentArchivePage .student-archive-status-main,
  #studentArchivePage .student-archive-status-metrics,
  #studentArchivePage .student-archive-action-grid{
    grid-template-columns:1fr 1fr;
  }
  #studentArchivePage .student-archive-status-actions{
    justify-content:flex-start;
    align-self:auto;
    grid-column:1 / -1;
  }
  #studentArchivePage .student-archive-overview-grid{
    grid-template-columns:1fr;
  }
	  #studentArchivePage .student-archive-dynamics-row{
	    grid-template-columns:1fr;
	  }
  #studentArchivePage .student-archive-workbench-grid{
    grid-template-columns:1fr;
  }
  #studentArchivePage .student-archive-board-row{
    grid-template-columns:1fr;
    align-items:flex-start;
  }
  #studentArchivePage .student-archive-sales-row{
    grid-template-columns:1fr;
    align-items:flex-start;
  }
		}

@media(max-width:640px){
  #studentArchivePage .student-archive-master-panel{
    border-radius:18px;
  }
  #studentArchivePage .student-archive-status-main,
  #studentArchivePage .student-archive-status-metrics,
  #studentArchivePage .student-archive-action-grid{
    grid-template-columns:1fr;
  }
  #studentArchivePage .student-archive-status-actions{
    flex-wrap:wrap;
  }
  #studentArchivePage .student-archive-name-row h3{
    font-size:22px;
  }
  #studentArchivePage .student-archive-status-metric strong{
    font-size:20px;
  }
  #studentArchivePage .student-archive-priority-block{
    position:sticky;
    top:8px;
    z-index:6;
  }
}

.student-import-panel{
  margin-top:18px;
  padding:16px;
  border-radius:18px;
  border:1px solid rgba(191,219,254,.85);
  background:linear-gradient(135deg,rgba(239,246,255,.92),rgba(255,255,255,.96));
}

.student-import-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}

.student-import-head strong{
  display:block;
  font-size:16px;
  color:#0f172a;
}

.student-import-head p{
  margin:5px 0 0;
  color:#64748b;
  line-height:1.6;
}

.student-import-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.student-import-preview{
  margin-top:14px;
}

.student-import-summary{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:10px;
}

.student-import-badge{
  display:inline-flex;
  align-items:center;
  padding:6px 11px;
  border-radius:999px;
  background:#eff6ff;
  color:#2563eb;
  font-weight:800;
  font-size:13px;
}

.student-import-badge.warn{
  background:#fff7ed;
  color:#c2410c;
}

.student-import-badge.ok{
  background:#ecfdf5;
  color:#047857;
}

.student-import-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border:1px solid #e2e8f0;
  border-radius:14px;
  background:#fff;
}

.student-import-table th,
.student-import-table td{
  padding:10px 12px;
  border-bottom:1px solid #edf2f7;
  text-align:left;
  vertical-align:top;
  color:#334155;
  font-size:13px;
}

.student-import-table th{
  background:#f8fafc;
  color:#475569;
  font-weight:850;
}

.student-import-table tr:last-child td{
  border-bottom:none;
}

.student-import-status-ok{
  color:#047857;
  font-weight:800;
}

.student-import-status-error{
  color:#b91c1c;
  font-weight:800;
}

@media(max-width:900px){
  .student-profile-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:640px){
  .student-profile-avatar-row{
    align-items:flex-start;
    flex-direction:column;
  }

  .student-profile-avatar-actions{
    width:100%;
  }

  .student-profile-avatar-actions .small-btn,
  .student-profile-avatar-actions .gray-btn{
    flex:1 1 140px;
    justify-content:center;
  }
}


/* ===== V2.0 智能教学分析 ===== */
#aiAnalysisResult{
  min-height:420px;
  line-height:1.75;
}

.ai-tag{
  display:inline-flex;
  align-items:center;
  padding:6px 12px;
  border-radius:999px;
  background:#eff6ff;
  color:#2563eb;
  font-weight:700;
  margin:4px 6px 4px 0;
}

#aiAbilityCards .stat-num{
  font-size:28px;
}

.risk-visual-card{
  margin-top:14px;
  background:#f8fafc;
  border:1px solid #e5e7eb;
  border-radius:14px;
  padding:12px;
}

.risk-visual-title{
  color:#334155;
  font-weight:800;
  margin-bottom:8px;
}

.risk-visual-bar{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
}

.risk-cell{
  text-align:center;
  padding:8px 6px;
  border-radius:10px;
  background:#e5e7eb;
  color:#475569;
  font-weight:700;
  font-size:13px;
  border:1px solid transparent;
}

.risk-cell.active.low{
  background:#dcfce7;
  color:#166534;
  border-color:#22c55e;
}

.risk-cell.active.mid{
  background:#fef9c3;
  color:#854d0e;
  border-color:#facc15;
}

.risk-cell.active.high{
  background:#fee2e2;
  color:#991b1b;
  border-color:#ef4444;
}

.risk-visual-text{
  margin-top:8px;
  color:#475569;
  line-height:1.6;
  font-size:13px;
}


/* =====================
V3.0 成长报告海报
===================== */

.growth-layout{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  margin-top:22px;
}

.growth-panel{
  background:rgba(255,255,255,.88);
  border:1px solid rgba(255,255,255,.95);
  border-radius:24px;
  padding:22px;
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}

.growth-text-box{
  background:#f8fafc;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:14px;
  line-height:1.7;
  color:#334155;
  white-space:pre-wrap;
}

.growth-insight-layout{
  display:block;
  margin-top:22px;
}

.growth-insight-panel{
  width:100%;
  box-sizing:border-box;
}

.growth-insight-panel .growth-text-box{
  width:100%;
  box-sizing:border-box;
}

#growthRadarChart{
  max-height:360px;
}

.growth-poster{
  width:720px;
  min-height:1080px;
  margin:24px auto;
  padding:36px;
  border-radius:46px;
  position:relative;
  overflow:hidden;
  color:#111827;
  background:
    radial-gradient(circle at 18% 16%, rgba(96,165,250,.30), transparent 30%),
    radial-gradient(circle at 88% 10%, rgba(147,197,253,.26), transparent 30%),
    linear-gradient(180deg,#f8fbff 0%,#eef4ff 48%,#ffffff 100%);
  box-shadow:0 30px 90px rgba(15,23,42,.18);
}

.poster-bg-orb{
  position:absolute;
  border-radius:999px;
  filter:blur(6px);
  opacity:.7;
}

.poster-orb-a{
  width:260px;
  height:260px;
  left:-90px;
  top:180px;
  background:rgba(59,130,246,.14);
}

.poster-orb-b{
  width:220px;
  height:220px;
  right:-80px;
  top:40px;
  background:rgba(147,197,253,.20);
}

.poster-header{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  gap:16px;
}

.poster-logo{
  width:148px;
  height:54px;
  object-fit:contain;
}

.poster-brand{
  font-size:22px;
  font-weight:900;
  letter-spacing:-.5px;
}

.poster-subbrand{
  color:#64748b;
  font-weight:700;
  margin-top:2px;
}

.poster-title-area{
  position:relative;
  z-index:2;
  text-align:center;
  margin-top:42px;
}

.poster-badge{
  display:inline-flex;
  padding:7px 18px;
  border-radius:999px;
  background:rgba(219,234,254,.85);
  color:#3b82f6;
  font-size:13px;
  font-weight:900;
  letter-spacing:1.5px;
}

.poster-title-area h2{
  margin:18px 0 8px;
  font-size:44px;
  font-weight:950;
  letter-spacing:-1.8px;
  color:#111827;
}

.poster-title-area p{
  margin:0;
  color:#64748b;
  font-size:18px;
  font-weight:700;
}

.poster-card{
  position:relative;
  z-index:2;
  margin-top:22px;
  padding:24px;
  border-radius:30px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(255,255,255,.95);
  backdrop-filter:blur(18px);
  box-shadow:0 20px 60px rgba(15,23,42,.08);
}

.poster-card h3{
  margin:0 0 14px;
  color:#2563eb;
  font-size:20px;
}

.poster-card div{
  line-height:1.75;
  font-weight:650;
  color:#334155;
  white-space:pre-wrap;
}

.poster-talent-card{
  grid-column:1 / -1;
}

.poster-talent-card h3{
  display:flex;
  align-items:center;
  gap:8px;
}

.ai-talent-section{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
  white-space:normal !important;
}

.ai-talent-main-card,
.ai-talent-advice-card,
.ai-talent-route-card,
.ai-talent-edit-panel{
  background:rgba(255,255,255,.92);
  border:1px solid rgba(148,163,184,.18);
  border-radius:22px;
  padding:18px 20px;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
  white-space:normal !important;
}

.poster-talent-card .ai-talent-main-card,
.poster-talent-card .ai-talent-advice-card,
.poster-talent-card .ai-talent-route-card,
.poster-talent-card .ai-talent-keywords,
.poster-talent-card .ai-talent-secondary,
.poster-talent-card .ai-talent-kicker{
  white-space:normal !important;
}

.ai-talent-kicker{
  color:#0071e3;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
}

.ai-talent-main-card h3{
  margin:8px 0 8px;
  color:#1d1d1f;
  font-size:20px;
  font-weight:850;
  line-height:1.3;
}

.ai-talent-main-card p,
.ai-talent-advice-card p,
.ai-talent-route-card p{
  margin:0;
  color:#475569;
  font-size:14px;
  font-weight:600;
  line-height:1.65;
}

.ai-talent-keywords,
.ai-talent-secondary{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

.ai-talent-keywords span,
.ai-talent-secondary span{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(0,113,227,.08);
  color:#0071e3;
  font-size:13px;
  font-weight:750;
  line-height:1.2;
}

.ai-talent-secondary span{
  background:rgba(100,116,139,.08);
  color:#475569;
}

.ai-talent-advice-card h4,
.ai-talent-route-card h4{
  margin:0 0 8px;
  color:#1d1d1f;
  font-size:16px;
  font-weight:850;
}

.ai-talent-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}

.ai-talent-mini-btn{
  border:1px solid rgba(0,113,227,.18);
  border-radius:999px;
  padding:7px 12px;
  background:rgba(0,113,227,.08);
  color:#0071e3;
  cursor:pointer;
  font-size:13px;
  font-weight:800;
}

.ai-talent-mini-btn.secondary{
  background:#fff;
  color:#475569;
  border-color:rgba(148,163,184,.28);
}

.ai-talent-edit-panel{
  display:none;
  margin-top:14px;
}

.ai-talent-edit-panel.active{
  display:block;
}

.ai-talent-edit-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.ai-talent-edit-panel label{
  display:block;
  margin:0 0 6px;
  font-size:13px;
  color:#475569 !important;
  font-weight:800 !important;
}

.ai-talent-edit-panel input,
.ai-talent-edit-panel textarea{
  width:100%;
  box-sizing:border-box;
  min-height:44px !important;
  font-size:14px !important;
  border-radius:14px !important;
}

.ai-talent-edit-panel textarea{
  min-height:86px !important;
}

@media(max-width:760px){
  .ai-talent-edit-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:760px){
}

.poster-radar-card{
  height:360px;
}

#posterRadarChart{
  max-height:300px;
}

.poster-footer{
  position:relative;
  z-index:2;
  margin-top:24px;
  padding:22px;
  border-radius:28px;
  background:#111827;
  color:white;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.poster-footer-title{
  font-size:24px;
  font-weight:900;
}

.poster-footer-sub{
  margin-top:6px;
  color:#cbd5e1;
  font-weight:650;
}

.poster-qrcode{
  width:112px;
  height:112px;
  border-radius:20px;
  background:white;
  padding:8px;
  object-fit:cover;
}

@media(max-width:760px){
  .growth-layout{
    grid-template-columns:1fr;
  }

  .growth-poster{
    width:100%;
    min-height:auto;
    padding:24px;
    border-radius:32px;
    box-sizing:border-box;
  }

  .poster-title-area h2{
    font-size:34px;
  }

  .poster-footer{
    gap:16px;
  }

  .poster-qrcode{
    width:88px;
    height:88px;
  }
}


/* =====================
V3.1 时间趋势折线图 / 月度成长曲线
===================== */

#growthTrendChart,
#monthlyGrowthChart{
  max-height:360px;
}

.chart-empty-state{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:220px;
  padding:18px;
  border:1px dashed rgba(148,163,184,.42);
  border-radius:18px;
  background:rgba(248,250,252,.88);
  color:#64748b;
  font-size:14px;
  line-height:1.6;
  text-align:center;
}

.chart-canvas-hidden{
  display:none!important;
}

.monthly-growth-panel{
  margin-top:20px;
}

.monthly-growth-panel #monthlyGrowthChart{
  height:430px!important;
  max-height:430px!important;
}

.monthly-growth-panel .tips{
  padding:14px 16px!important;
  border-radius:16px!important;
  background:rgba(239,246,255,.72)!important;
  border:1px solid rgba(0,113,227,.14)!important;
  color:#475569!important;
  font-size:14px!important;
  line-height:1.55!important;
}

.poster-trend-card{
  height:280px;
}

#posterTrendChart{
  max-height:210px;
}


/* =====================
V3.2 多月份成长报告
===================== */

.monthly-summary-panel{
  margin-top:20px;
}

#monthlySummaryBox{
  max-height:520px;
  overflow:auto;
}

.course-knowledge-panel{
  margin-top:16px !important;
  padding:18px !important;
}

.course-knowledge-panel h3{
  margin:0 0 12px !important;
}

#courseContentSummaryBox{
  white-space:normal !important;
  padding:10px !important;
  line-height:1.55 !important;
  border-radius:18px !important;
}

#courseContentSummaryBox .analytics-card{
  margin:0 !important;
  padding:14px 16px !important;
  border-radius:16px !important;
  box-shadow:none !important;
  background:rgba(255,255,255,.96) !important;
}

#courseContentSummaryBox .month-mini-title{
  margin:8px 0 6px !important;
  font-size:15px !important;
  line-height:1.35 !important;
}

#courseContentSummaryBox .month-mini-title:first-child{
  margin-top:0 !important;
}

#courseContentSummaryBox .analytics-item{
  padding:7px 0 !important;
  align-items:flex-start;
}

#courseContentSummaryBox .analytics-item span{
  display:block;
  width:100%;
  font-size:15px !important;
  line-height:1.55 !important;
}

.month-block{
  padding:16px;
  border-radius:18px;
  background:rgba(255,255,255,.75);
  border:1px solid rgba(226,232,240,.9);
  margin-bottom:14px;
}

.month-block-title{
  font-weight:900;
  color:#2563eb;
  margin-bottom:8px;
}

.month-mini-title{
  font-weight:800;
  color:#111827;
  margin-top:10px;
}


/* =====================
V3.3 可编辑成长海报
===================== */

.poster-editor-panel{
  margin-top:18px;
  padding:22px;
  border-radius:26px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(255,255,255,.95);
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}

.poster-editor-panel textarea{
  min-height:110px;
}


/* =====================
V3.4 苹果风红色喜报证书模块
===================== */

.award-editor-box{
  margin-top:22px;
  padding:20px;
  border-radius:24px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,245,245,.86));
  border:1px solid rgba(254,202,202,.9);
  box-shadow:0 18px 44px rgba(239,68,68,.08);
}

.award-editor-title{
  display:flex;
  align-items:center;
  gap:10px;
  color:#dc2626 !important;
  margin-top:0 !important;
}

.award-editor-title svg{
  width:22px;
  height:22px;
}

.poster-award-card{
  position:relative;
  z-index:2;
  margin-top:22px;
  padding:28px;
  border-radius:32px;
  overflow:hidden;
  color:white;
  background:
    radial-gradient(circle at 18% 8%, rgba(255,255,255,.30), transparent 26%),
    radial-gradient(circle at 88% 18%, rgba(255,232,166,.28), transparent 30%),
    linear-gradient(135deg,#ff5a52 0%,#dc2626 48%,#b91c1c 100%);
  box-shadow:
    0 24px 70px rgba(220,38,38,.28),
    inset 0 1px 0 rgba(255,255,255,.32);
}

.poster-award-card:before,
.poster-award-card:after{
  content:"";
  position:absolute;
  pointer-events:none;
  opacity:.72;
}

.poster-award-card:before{
  right:26px;
  top:28px;
  width:90px;
  height:90px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(255,236,179,.72), rgba(255,236,179,0) 68%);
  filter:blur(2px);
}

.poster-award-card:after{
  left:30px;
  bottom:22px;
  width:160px;
  height:52px;
  background:linear-gradient(90deg, rgba(255,255,255,.20), rgba(255,255,255,0));
  transform:rotate(-8deg);
}

.award-shine{
  position:absolute;
  inset:-80px auto auto -80px;
  width:260px;
  height:260px;
  border-radius:999px;
  background:rgba(255,255,255,.20);
  filter:blur(10px);
}

.poster-award-header{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  gap:16px;
}

.award-icon{
  width:92px;
  height:92px;
  border-radius:28px;
  background:rgba(255,238,244,.28);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:58px;
  line-height:1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35);
}

.poster-award-label{
  font-size:12px;
  font-weight:900;
  letter-spacing:1.6px;
  color:rgba(255,255,255,.72);
}

.poster-award-header h3{
  margin:4px 0 0;
  color:white !important;
  font-size:26px;
  font-weight:950;
}

.poster-award-main{
  position:relative;
  z-index:2;
  margin-top:20px;
  display:grid;
  grid-template-columns:1fr;
  gap:20px;
  align-items:center;
}

.poster-award-card.has-certificate .poster-award-main{
  grid-template-columns:minmax(0,.9fr) minmax(280px,1.2fr);
  gap:24px;
  align-items:stretch;
}

.poster-award-info{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.poster-award-kicker{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  margin-bottom:12px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.24);
  color:rgba(255,255,255,.86);
  font-size:12px;
  font-weight:900;
  letter-spacing:1px;
}

.poster-award-student{
  font-size:34px;
  font-weight:950;
  line-height:1.12;
  letter-spacing:0;
  text-shadow:0 8px 22px rgba(127,29,29,.24);
}

.poster-award-name{
  margin-top:12px;
  font-size:21px;
  font-weight:900;
  line-height:1.35;
  color:rgba(255,255,255,.96);
}

.poster-award-level{
  display:inline-flex;
  margin-top:12px;
  padding:8px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:#dc2626;
  font-weight:950;
  font-size:18px;
}

.poster-award-date{
  margin-top:12px;
  color:rgba(255,255,255,.80);
  font-weight:750;
}

.poster-award-desc{
  margin-top:12px;
  color:rgba(255,255,255,.92) !important;
  line-height:1.7;
  font-weight:700;
}

.poster-certificate-showcase{
  display:none;
  min-width:0;
}

.poster-award-card.has-certificate .poster-certificate-showcase{
  display:flex;
  align-items:center;
  justify-content:center;
}

.poster-certificate-frame{
  width:100%;
  min-height:300px;
  padding:14px;
  border-radius:28px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.96), rgba(255,248,240,.90));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:
    0 24px 55px rgba(127,29,29,.24),
    inset 0 1px 0 rgba(255,255,255,.86);
  backdrop-filter:blur(10px);
}

.poster-award-certificate{
  width:100%;
  height:360px;
  max-height:380px;
  object-fit:contain;
  border-radius:20px;
  background:white;
  padding:8px;
  border:1px solid rgba(226,232,240,.95);
  box-shadow:0 16px 36px rgba(15,23,42,.16);
}

@media(max-width:760px){
  .poster-award-main{
    grid-template-columns:1fr;
  }

  .poster-award-card.has-certificate .poster-award-main{
    grid-template-columns:1fr;
  }

  .poster-award-student{
    font-size:28px;
  }

  .poster-certificate-frame{
    min-height:240px;
    padding:12px;
  }

  .poster-award-certificate{
    width:100%;
    height:320px;
    max-height:340px;
  }
}


/* =====================
海报底部黑色框：左 Logo / 中间扫码 / 右二维码
===================== */

.poster-footer{
  position:relative;
  z-index:2;
  margin-top:24px;
  padding:20px 24px;
  border-radius:28px;
  background:linear-gradient(135deg,#111827 0%,#0f172a 55%,#020617 100%);
  color:white;
  display:grid;
  grid-template-columns:1.35fr 1fr auto;
  align-items:center;
  gap:22px;
  box-shadow:0 22px 60px rgba(15,23,42,.28);
}

.poster-footer-left{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}

.poster-footer-logo{
  width:58px;
  height:58px;
  border-radius:18px;
  object-fit:cover;
  background:white;
  padding:5px;
  flex-shrink:0;
}

.poster-footer-brand{
  font-size:20px;
  font-weight:950;
  line-height:1.15;
  color:white;
}

.poster-footer-slogan{
  margin-top:5px;
  color:#cbd5e1;
  font-size:13px;
  font-weight:650;
  white-space:nowrap;
}

.poster-footer-center{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  text-align:center;
}

.poster-scan-icon{
  width:38px;
  height:38px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.35);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fef3c7;
  font-size:24px;
  font-weight:900;
}

.poster-footer-title{
  font-size:22px;
  font-weight:950;
  color:white;
  white-space:nowrap;
}

.poster-footer-sub{
  margin-top:4px;
  color:#cbd5e1;
  font-size:13px;
  font-weight:650;
}

.poster-footer-sub:empty{
  display:none;
}

.poster-qrcode{
  width:112px;
  height:112px;
  border-radius:20px;
  background:white;
  padding:8px;
  object-fit:cover;
  flex-shrink:0;
}

.poster-qr-upload{
  margin-top:10px;
}

@media(max-width:760px){
  .poster-footer{
    grid-template-columns:1fr;
    text-align:center;
  }

  .poster-footer-left,
  .poster-footer-center{
    justify-content:center;
  }

  .poster-footer-slogan{
    white-space:normal;
  }

  .poster-qrcode{
    margin:auto;
  }
}


/* =====================
最终版：海报底部品牌区
左边 Logo + 激发创造力 · 连接未来
中间 扫码了解课程
右边 二维码
===================== */

.poster-footer{
  position:relative;
  z-index:2;
  margin-top:24px;
  padding:20px 24px;
  border-radius:28px;
  background:linear-gradient(135deg,#111827 0%,#0f172a 55%,#020617 100%);
  color:white;
  display:grid;
  grid-template-columns:1.35fr 1fr auto;
  align-items:center;
  gap:22px;
  box-shadow:0 22px 60px rgba(15,23,42,.28);
}

.poster-footer-left{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}

.poster-footer-logo{
  width:58px;
  height:58px;
  border-radius:18px;
  object-fit:cover;
  background:white;
  padding:5px;
  flex-shrink:0;
}

.poster-footer-brand{
  display:none !important;
}

.poster-footer-slogan{
  margin-top:0;
  color:#cbd5e1;
  font-size:15px;
  font-weight:750;
  white-space:nowrap;
  letter-spacing:.5px;
}

.poster-footer-center{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  text-align:center;
}

.poster-scan-icon{
  width:38px;
  height:38px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.35);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fef3c7;
  font-size:24px;
  font-weight:900;
}

.poster-footer-title{
  font-size:22px;
  font-weight:950;
  color:white;
  white-space:nowrap;
}

.poster-footer-sub{
  margin-top:4px;
  color:#cbd5e1;
  font-size:13px;
  font-weight:650;
}

.poster-footer-sub:empty{
  display:none;
}

.poster-qrcode{
  width:112px;
  height:112px;
  border-radius:20px;
  background:white;
  padding:8px;
  object-fit:cover;
  flex-shrink:0;
}

@media(max-width:760px){
  .poster-footer{
    grid-template-columns:1fr;
    text-align:center;
  }

  .poster-footer-left,
  .poster-footer-center{
    justify-content:center;
  }

  .poster-footer-slogan{
    white-space:normal;
  }

  .poster-qrcode{
    margin:auto;
  }
}


/* 最终修改：海报顶部只保留 Logo，删除“课后反馈助手 / Growth Report” */
.poster-header{
  justify-content:center !important;
  margin-bottom:10px;
}

.poster-logo{
  width:210px;
  height:74px;
  object-fit:contain;
}

.poster-brand,
.poster-subbrand{
  display:none !important;
}


/* V3.5 九项成长能力趋势 */
.poster-radar-card{
  height:390px;
}

#posterRadarChart{
  max-height:330px;
}

#growthRadarChart{
  max-height:390px;
}

#monthlyGrowthChart{
  max-height:420px;
}


/* =====================
V3.6 关键词搜索题库
===================== */

.search-tag-box{
  position:relative;
  margin-top:10px;
  margin-bottom:8px;
}

.search-tag-box svg{
  position:absolute;
  left:14px;
  top:50%;
  transform:translateY(-50%);
  width:18px;
  height:18px;
  color:#64748b;
  pointer-events:none;
}

.search-tag-box input{
  padding-left:44px !important;
  min-height:44px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.92) !important;
}

.search-tag-box input:focus{
  border-color:#2563eb !important;
  box-shadow:0 0 0 4px rgba(37,99,235,.10) !important;
}


/* =====================
V3.6 底部导航苹果风优化
===================== */

.bottom-nav.apple-bottom-nav{
  position:fixed;

  left:50%;
  transform:translateX(-50%);

  bottom:0;

  width:calc(100% - 32px);
  max-width:1200px;

  min-height:72px;

  padding:10px 14px;
  padding-bottom:max(10px, env(safe-area-inset-bottom));

  display:grid;
  grid-template-columns:repeat(8,1fr);

  gap:8px;

  background:rgba(255,255,255,.82);

  border:1px solid rgba(226,232,240,.88);

  border-radius:28px 28px 0 0;

  box-shadow:
    0 -10px 40px rgba(15,23,42,.10),
    inset 0 1px 0 rgba(255,255,255,.95);

  backdrop-filter:blur(22px) saturate(180%);
  -webkit-backdrop-filter:blur(22px) saturate(180%);

  z-index:9999;
}

.bottom-nav.apple-bottom-nav .bottom-nav-btn{
  border:none;
  background:transparent;
  color:#64748b;
  font-size:15px;
  font-weight:700;
  cursor:pointer;
  border-radius:20px;
  min-height:52px;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:9px;
  transition:
    color .2s ease,
    background .2s ease,
    box-shadow .2s ease,
    transform .2s ease;
}

.bottom-nav.apple-bottom-nav .bottom-nav-btn svg{
  width:24px;
  height:24px;
  stroke-width:2;
  color:currentColor;
  flex-shrink:0;
}

.bottom-nav.apple-bottom-nav .bottom-nav-btn span{
  white-space:nowrap;
  line-height:1;
}

.bottom-nav.apple-bottom-nav .bottom-nav-btn:hover{
  color:#2563eb;
  background:rgba(248,250,252,.92);
  transform:translateY(-1px);
}

.bottom-nav.apple-bottom-nav .bottom-nav-btn.active{
  color:#2563eb;
  background:rgba(255,255,255,.95);
  box-shadow:
    0 10px 28px rgba(37,99,235,.12),
    inset 0 1px 0 rgba(255,255,255,.96);
}

@media(max-width:760px){
  .bottom-nav.apple-bottom-nav{
    bottom:10px;
    width:calc(100% - 20px);
    grid-template-columns:repeat(4,1fr);
    border-radius:24px;
    padding:8px;
  }

  .bottom-nav.apple-bottom-nav .bottom-nav-btn{
    flex-direction:column;
    gap:4px;
    font-size:12px;
    min-height:54px;
  }

  .bottom-nav.apple-bottom-nav .bottom-nav-btn svg{
    width:21px;
    height:21px;
  }
}


/* 基础表现标签：单独反馈 + 群反馈 多选高亮 */
.basic-multi button.active,
.group-basic button.active{
  background:#dbeafe !important;
  border-color:#2563eb !important;
  color:#2563eb !important;
  box-shadow:0 8px 22px rgba(37,99,235,.10);
}

.tags button,
.student-check-item{
  touch-action:manipulation;
  user-select:none;
}

textarea{
  min-height:168px !important;
  line-height:1.75 !important;
  overflow:auto;
  white-space:pre-wrap;
  word-break:break-word;
}

#courseContent,
#groupCourseContent,
#extra,
#homework,
#groupHomework,
#result{
  min-height:210px !important;
}

#result{
  min-height:380px !important;
}

#courseContent,
#groupCourseContent{
  min-height:112px !important;
  height:112px;
  line-height:1.6 !important;
}

.group-extra{
  min-height:150px !important;
}

input,
select,
textarea{
  font-size:16px !important;
}

@media(max-width:760px){
  html{
    -webkit-text-size-adjust:100%;
  }

  .top-bar{
    gap:10px !important;
  }

  .top-left{
    min-width:0;
  }

  .suggest-btn span{
    display:none;
  }

  .feedback-mode{
    display:grid !important;
    grid-template-columns:1fr 1fr;
  }

  .title-row{
    align-items:stretch;
    flex-direction:column;
  }

  .change-btn,
  .small-btn,
  .danger-btn,
  .gray-btn{
    width:100%;
    min-height:44px;
  }

  .tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }

  .tags button,
  .student-check-item{
    margin:0;
    min-height:42px;
    max-width:100%;
    white-space:normal;
    line-height:1.45;
  }

  textarea{
    min-height:190px !important;
  }

  #courseContent,
  #groupCourseContent,
  #extra,
  #homework,
  #groupHomework,
  #result{
    min-height:240px !important;
  }

  #courseContent,
  #groupCourseContent{
    min-height:118px !important;
    height:118px;
  }

  .group-student-panel{
    padding:16px !important;
    overflow:hidden;
  }
}


/* =====================
V4.0 邮箱注册登录 + 老师资料 + Supabase 云端数据
===================== */

.auth-overlay{
  position:fixed;
  inset:0;
  z-index:100000;
  background:
    radial-gradient(circle at 18% 18%, rgba(37,99,235,.18), transparent 28%),
    radial-gradient(circle at 82% 12%, rgba(147,197,253,.20), transparent 32%),
    linear-gradient(180deg,#f8fbff 0%,#eef4ff 100%);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px;
}

.auth-card{
  width:100%;
  max-width:420px;
  max-height:92vh;
  overflow-y:auto;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(22px) saturate(160%);
  -webkit-backdrop-filter:blur(22px) saturate(160%);
  border:1px solid rgba(255,255,255,.92);
  border-radius:24px;
  padding:18px;
  box-shadow:0 28px 80px rgba(15,23,42,.14);
}

.auth-logo{
  width:140px;
  height:54px;
  object-fit:contain;
  display:block;
  margin:0 auto 8px;
}

.auth-title{
  text-align:center;
  font-size:22px;
  font-weight:950;
  color:#111827;
  margin:4px 0;
}

.auth-subtitle{
  text-align:center;
  color:#64748b;
  font-weight:650;
  font-size:14px;
  margin-bottom:12px;
}

.auth-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  background:#f1f5f9;
  border-radius:18px;
  padding:6px;
  margin-bottom:18px;
}

.auth-tab{
  border:none;
  border-radius:14px;
  padding:9px;
  background:transparent;
  color:#64748b;
  font-weight:850;
  cursor:pointer;
}

.auth-tab.active{
  background:white;
  color:#2563eb;
  box-shadow:0 8px 20px rgba(15,23,42,.08);
}

.auth-form{display:none;}
.auth-form.active{display:block;}

.auth-form label{
  margin-top:8px;
  font-size:14px;
}

.auth-card input,
.auth-card select{
  min-height:40px;
  padding:8px 12px;
  font-size:15px;
  border-radius:12px;
}

.auth-btn{
  width:100%;
  border:none;
  border-radius:12px;
  padding:10px 14px;
  margin-top:10px;
  background:linear-gradient(135deg,#3b82f6,#2563eb);
  color:white;
  font-weight:900;
  font-size:15px;
  cursor:pointer;
  box-shadow:0 18px 40px rgba(37,99,235,.22);
}

.auth-btn.secondary{
  background:#fff;
  color:#2563eb;
  border:1px solid rgba(37,99,235,.2);
  box-shadow:0 10px 24px rgba(15,23,42,.08);
}

.auth-msg{
  margin-top:12px;
  padding:12px;
  border-radius:14px;
  background:#eff6ff;
  color:#1d4ed8;
  font-size:14px;
  line-height:1.6;
  display:none;
}

.auth-profile-box{
  display:none;
}

.profile-subject-head{
  margin-top:12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.profile-subject-count{
  font-size:13px;
  color:#2563eb;
  font-weight:800;
}

.profile-track-hint{
  margin-top:4px;
  font-size:12px;
  color:#64748b;
  line-height:1.5;
}

.profile-subject-list{
  margin-top:6px;
  max-height:140px;
  overflow:auto;
  padding-right:4px;
}

.profile-subject-list.expanded{
  max-height:none;
}

.profile-subject-list button{
  margin:4px 4px 0 0;
  padding:6px 10px;
  font-size:14px;
  border-radius:999px;
  border:1px solid #d1d5db;
  background:white;
  color:#374151;
  cursor:pointer;
  transition:.2s;
}

.profile-subject-list button.active{
  background:#dbeafe;
  border-color:#2563eb;
  color:#2563eb;
}

.profile-empty-text{
  margin-top:10px;
  font-size:14px;
  color:#94a3b8;
  line-height:1.6;
}

.home-config-card{
  margin:10px 0 16px;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:18px;
  padding:14px;
}

.home-config-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom:8px;
}

.home-config-title{
  font-size:15px;
  font-weight:900;
  color:#0f172a;
}

.home-config-tip{
  font-size:12px;
  color:#64748b;
}

.home-subject-list{
  margin-top:8px;
  max-height:136px;
  overflow:auto;
}

.home-subject-list button{
  margin:6px 6px 0 0;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid #d1d5db;
  background:#fff;
  color:#374151;
  cursor:pointer;
}

.home-subject-list button.active{
  background:#dbeafe;
  border-color:#2563eb;
  color:#2563eb;
}

.home-config-actions{
  margin-top:10px;
  display:flex;
  align-items:center;
  gap:10px;
}

.home-config-status{
  font-size:12px;
  color:#64748b;
  line-height:1.4;
}

.profile-subject-toggle{
  margin-top:10px;
  border:none;
  background:transparent;
  color:#2563eb;
  font-weight:800;
  cursor:pointer;
  padding:0;
}

.profile-save-wrap{
  position:sticky;
  bottom:0;
  margin:8px -4px 0;
  padding:8px 4px 4px;
  background:linear-gradient(to top,rgba(255,255,255,.98),rgba(255,255,255,.85),rgba(255,255,255,0));
  backdrop-filter:blur(4px);
}

.auth-avatar-preview{
  width:86px;
  height:86px;
  border-radius:28px;
  object-fit:cover;
  background:#f1f5f9;
  display:block;
  margin:12px auto;
  border:1px solid #e5e7eb;
}

.auth-bar{
  max-width:1100px;
  margin:0 auto 16px;
  display:none;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 16px;
  border-radius:22px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(226,232,240,.88);
  box-shadow:0 12px 34px rgba(15,23,42,.06);
  backdrop-filter:blur(18px);
}

.auth-user-info{
  display:flex;
  align-items:center;
  gap:10px;
  color:#111827;
  font-weight:800;
}

.auth-user-meta{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.auth-user-avatar{
  width:38px;
  height:38px;
  border-radius:14px;
  object-fit:cover;
  background:#e5e7eb;
}

.auth-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.auth-small-btn{
  border:none;
  border-radius:999px;
  padding:9px 14px;
  background:white;
  color:#2563eb;
  font-weight:850;
  cursor:pointer;
  border:1px solid #dbeafe;
}

.auth-small-btn.danger{
  color:#dc2626;
  border-color:#fee2e2;
}

.admin-only{
  display:none;
}

.sync-status{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 10px;
  border-radius:999px;
  font-size:13px;
  font-weight:800;
  background:#f8fafc;
  color:#64748b;
  border:1px solid #e2e8f0;
}

.sync-status.local{
  background:#fff7ed;
  color:#c2410c;
  border-color:#fed7aa;
}

.sync-status.saving{
  background:#eff6ff;
  color:#1d4ed8;
  border-color:#bfdbfe;
}

.sync-status.synced{
  background:#ecfdf5;
  color:#047857;
  border-color:#bbf7d0;
}

.sync-status.failed{
  background:#fef2f2;
  color:#b91c1c;
  border-color:#fecaca;
}

.wechat-binding-status{
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:26px;
  padding:4px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:850;
  background:#f8fafc;
  color:#64748b;
  border:1px solid #e2e8f0;
}

.wechat-binding-status.bound{
  background:#ecfdf5;
  color:#047857;
  border-color:#bbf7d0;
}

.wechat-binding-status.unbound{
  background:#fff7ed;
  color:#c2410c;
  border-color:#fed7aa;
}

.status-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  margin-top:6px;
}

.bank-status{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 10px;
  border-radius:999px;
  font-size:13px;
  font-weight:800;
  background:#f8fafc;
  color:#64748b;
  border:1px solid #e2e8f0;
}

.bank-status::before{
  content:"";
  width:8px;
  height:8px;
  margin-right:7px;
  border-radius:50%;
  background:currentColor;
}

.admin-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:14px;
  margin-top:16px;
}

.admin-data-card{
  background:white;
  border-radius:18px;
  padding:16px;
  border:1px solid #e5e7eb;
  box-shadow:0 10px 28px rgba(15,23,42,.05);
}

.admin-data-card h3{
  margin-top:0;
}

.admin-table-wrap{
  overflow:auto;
  margin-top:14px;
  border-radius:18px;
  border:1px solid #e5e7eb;
}

.admin-create-card{
  margin-top:14px;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:18px;
  padding:14px;
}

.admin-create-title{
  font-size:16px;
  font-weight:900;
  color:#0f172a;
  margin-bottom:10px;
}

.admin-subject-list{
  margin-top:8px;
  max-height:180px;
  overflow:auto;
}

.admin-subject-list button{
  margin:6px 6px 0 0;
  padding:7px 12px;
  border-radius:999px;
  border:1px solid #d1d5db;
  background:#fff;
  color:#374151;
  cursor:pointer;
}

.admin-subject-list button.active{
  background:#dbeafe;
  border-color:#2563eb;
  color:#2563eb;
}

.admin-create-status{
  margin-top:8px;
  font-size:13px;
  color:#64748b;
}

.admin-table{
  width:100%;
  border-collapse:collapse;
  background:white;
  min-width:900px;
}

.admin-table th,
.admin-table td{
  padding:12px;
  border-bottom:1px solid #f1f5f9;
  text-align:left;
  font-size:14px;
  vertical-align:top;
}

.admin-table th{
  background:#f8fafc;
  color:#334155;
  font-weight:900;
}

.admin-avatar{
  width:44px;
  height:44px;
  border-radius:14px;
  object-fit:cover;
  background:#e5e7eb;
}

#adminPage{
  background:#f5f5f7 !important;
  border-radius:28px;
}

.admin-ops-shell{
  --ops-bg:#f5f5f7;
  --ops-card:#fff;
  --ops-text:#1d1d1f;
  --ops-muted:#6e6e73;
  --ops-line:#e5e5ea;
  --ops-blue:#0071e3;
  --ops-green:#30d158;
  --ops-orange:#ff9f0a;
  --ops-red:#ff3b30;
  background:var(--ops-bg);
  color:var(--ops-text);
  border-radius:28px;
  padding:22px;
  margin:0 0 22px;
}

.admin-ops-hero{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  padding:8px 4px 18px;
}

.admin-ops-kicker{
  display:block;
  margin-bottom:8px;
  color:var(--ops-muted);
  font-size:12px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.admin-ops-title{
  margin:0;
  font-size:clamp(30px,4vw,48px);
  line-height:1.02;
  letter-spacing:0;
}

.admin-ops-subtitle{
  max-width:680px;
  margin:10px 0 0;
  color:var(--ops-muted);
  font-size:16px;
  line-height:1.65;
}

.admin-ops-role{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:7px;
  min-width:170px;
  color:var(--ops-muted);
  font-size:13px;
}

.admin-ops-nav{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  padding:8px;
  margin:0 0 18px;
  border:1px solid rgba(0,0,0,.06);
  border-radius:24px;
  background:rgba(255,255,255,.74);
}

.admin-ops-nav button,
.admin-ops-subnav button{
  border:none;
  border-radius:18px;
  padding:13px 14px;
  background:transparent;
  color:#3a3a3c;
  font-size:14px;
  font-weight:850;
  cursor:pointer;
  transition:background .18s ease,color .18s ease;
}

.admin-ops-nav button.active,
.admin-ops-subnav button.active{
  background:#1d1d1f;
  color:#fff;
}

.admin-ops-subnav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 18px;
}

.admin-ops-subnav button{
  background:#fff;
  border:1px solid rgba(0,0,0,.06);
}

.admin-ops-panel{
  display:none;
}

.admin-ops-panel.active{
  display:block;
}

.admin-ops-card{
  background:var(--ops-card);
  border:1px solid rgba(0,0,0,.05);
  border-radius:24px;
  padding:20px;
}

.admin-ops-card + .admin-ops-card{
  margin-top:16px;
}

.admin-ops-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}

.admin-ops-card h3{
  margin:0;
  font-size:20px;
  letter-spacing:0;
}

.admin-ops-card p{
  margin:6px 0 0;
  color:var(--ops-muted);
  line-height:1.6;
}

.admin-ops-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.admin-ops-stat{
  min-height:128px;
  border-radius:24px;
  padding:18px;
  background:#fff;
  border:1px solid rgba(0,0,0,.05);
}

.admin-ops-stat span{
  display:block;
  color:var(--ops-muted);
  font-size:13px;
  font-weight:780;
}

.admin-ops-stat strong{
  display:block;
  margin-top:18px;
  font-size:34px;
  line-height:1;
  letter-spacing:0;
}

.admin-ops-stat small{
  display:block;
  margin-top:8px;
  color:#86868b;
}

.admin-ops-grid-2{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);
  gap:16px;
  margin-top:16px;
}

.admin-ops-list{
  display:grid;
  gap:10px;
}

.admin-ops-row{
  display:grid;
  grid-template-columns:1.05fr .95fr 1.2fr auto;
  align-items:center;
  gap:12px;
  padding:14px;
  border:1px solid rgba(0,0,0,.05);
  border-radius:20px;
  background:#fbfbfd;
}

.admin-ops-row.compact{
  grid-template-columns:1fr auto;
}

.admin-ops-row-title{
  display:block;
  font-weight:900;
  color:#1d1d1f;
}

.admin-ops-row-meta{
  display:block;
  margin-top:4px;
  color:var(--ops-muted);
  font-size:13px;
  line-height:1.45;
}

.admin-ops-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.admin-ops-tag{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:4px 9px;
  border-radius:999px;
  background:#f2f2f7;
  color:#3a3a3c;
  font-size:12px;
  font-weight:850;
  white-space:nowrap;
}

.admin-ops-tag.high,
.admin-ops-tag.risk{
  background:#fff1f0;
  color:#d70015;
}

.admin-ops-tag.medium,
.admin-ops-tag.warn{
  background:#fff8e5;
  color:#b26a00;
}

.admin-ops-tag.low,
.admin-ops-tag.good{
  background:#eefaf2;
  color:#248a3d;
}

.admin-ops-action{
  border:none;
  border-radius:999px;
  padding:9px 13px;
  background:#0071e3;
  color:#fff;
  font-size:13px;
  font-weight:850;
  cursor:pointer;
}

.admin-ops-action.secondary{
  background:#f2f2f7;
  color:#1d1d1f;
}

.admin-ops-table-card{
  overflow:hidden;
}

.admin-ops-table-scroll{
  overflow:auto;
  margin-top:10px;
}

.admin-ops-table{
  width:100%;
  min-width:1180px;
  border-collapse:separate;
  border-spacing:0 10px;
}

.admin-ops-table th{
  padding:0 12px 4px;
  color:var(--ops-muted);
  font-size:12px;
  font-weight:850;
  text-align:left;
  white-space:nowrap;
}

.admin-ops-table td{
  padding:14px 12px;
  background:#fbfbfd;
  border-top:1px solid rgba(0,0,0,.05);
  border-bottom:1px solid rgba(0,0,0,.05);
  font-size:14px;
  vertical-align:top;
}

.admin-ops-table td:first-child{
  border-left:1px solid rgba(0,0,0,.05);
  border-radius:18px 0 0 18px;
}

.admin-ops-table td:last-child{
  border-right:1px solid rgba(0,0,0,.05);
  border-radius:0 18px 18px 0;
}

.admin-student-link{
  border:none;
  background:transparent;
  color:#0071e3;
  font-weight:900;
  cursor:pointer;
  padding:0;
  text-align:left;
}

.admin-ops-detail-grid{
  display:grid;
  grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);
  gap:16px;
}

.admin-profile-plate{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.admin-profile-avatar{
  width:74px;
  height:74px;
  border-radius:24px;
  background:#1d1d1f;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:28px;
  font-weight:900;
}

.admin-info-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.admin-info-cell{
  padding:12px;
  border-radius:18px;
  background:#f5f5f7;
}

.admin-info-cell span{
  display:block;
  color:var(--ops-muted);
  font-size:12px;
  font-weight:800;
}

.admin-info-cell strong{
  display:block;
  margin-top:5px;
  font-size:16px;
}

.admin-timeline{
  display:grid;
  gap:10px;
}

.admin-timeline-item{
  display:grid;
  grid-template-columns:90px 1fr;
  gap:12px;
  padding:12px;
  border-radius:18px;
  background:#fbfbfd;
  border:1px solid rgba(0,0,0,.05);
}

.admin-timeline-time{
  color:var(--ops-muted);
  font-size:12px;
  font-weight:850;
}

.admin-script-box{
  min-height:150px;
  margin-top:14px;
  padding:16px;
  border-radius:20px;
  background:#f5f5f7;
  color:#1d1d1f;
  line-height:1.75;
  white-space:pre-wrap;
}

.admin-script-controls{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr)) auto;
  gap:12px;
  align-items:end;
}

.admin-view-mode-banner{
  display:none;
  position:sticky;
  top:88px;
  z-index:50;
  margin:0 0 16px;
  padding:14px 16px;
  border-radius:22px;
  border:1px solid rgba(0,113,227,.16);
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(16px);
}

.admin-view-mode-banner.active{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}

.admin-view-mode-banner strong{
  display:block;
  margin-bottom:4px;
}

.admin-view-mode-banner span{
  color:var(--ops-muted);
  font-size:13px;
}

.admin-system-section{
  display:grid;
  gap:16px;
  min-width:0;
  max-width:100%;
}

.admin-system-section > *,
#adminPanel_system,
#adminPanel_system .admin-ops-card{
  min-width:0;
  max-width:100%;
}

.admin-system-section .admin-create-card,
.admin-system-section .admin-data-card,
.admin-system-section .admin-table-wrap{
  box-shadow:none;
  border-color:rgba(0,0,0,.06);
  border-radius:22px;
}

#adminPanel_system .admin-table-wrap{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

#adminPanel_system .admin-table{
  width:max-content;
  min-width:980px;
}

.admin-employee-performance{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  min-width:210px;
}

.admin-ops-empty{
  padding:18px;
  border-radius:20px;
  background:#f5f5f7;
  color:var(--ops-muted);
}

.admin-ops-card.lifted{
  box-shadow:0 18px 42px rgba(29,29,31,.045);
}

.admin-ops-stat{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  box-shadow:0 10px 28px rgba(29,29,31,.035);
}

.admin-ops-stat::after{
  content:"";
  position:absolute;
  inset:auto 16px 16px auto;
  width:42px;
  height:42px;
  border-radius:16px;
  background:#f5f5f7;
}

.admin-ops-stat.focus{
  border-color:rgba(0,113,227,.20);
}

.admin-ops-stat.risk{
  border-color:rgba(215,0,21,.18);
  background:linear-gradient(180deg,#fff,#fff7f6);
}

.admin-ops-stat.warn{
  border-color:rgba(178,106,0,.18);
  background:linear-gradient(180deg,#fff,#fffaf0);
}

.admin-ops-stat.good{
  border-color:rgba(36,138,61,.16);
  background:linear-gradient(180deg,#fff,#f5fbf6);
}

.admin-ops-stat-icon{
  width:36px;
  height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  background:#f5f5f7;
  color:#1d1d1f;
}

.admin-ops-stat-icon svg{
  width:18px;
  height:18px;
}

.admin-ops-stat-top{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.admin-ops-stat-value{
  position:relative;
  z-index:1;
}

.admin-priority-list{
  display:grid;
  gap:12px;
}

.admin-follow-card{
  display:grid;
  grid-template-columns:minmax(180px,.8fr) minmax(0,1.25fr) auto;
  gap:14px;
  align-items:center;
  padding:16px;
  border:1px solid rgba(0,0,0,.05);
  border-radius:22px;
  background:#fbfbfd;
}

.admin-follow-name{
  display:flex;
  flex-direction:column;
  gap:5px;
}

.admin-follow-reason{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.admin-follow-reason strong{
  font-size:15px;
  color:#1d1d1f;
}

.admin-follow-actionline{
  color:#3a3a3c;
  font-size:13px;
  line-height:1.5;
}

.admin-filter-bar{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  padding:14px;
  margin:0 0 16px;
  border-radius:24px;
  background:#f5f5f7;
}

.admin-filter-field{
  display:flex;
  flex-direction:column;
  gap:7px;
  min-width:0;
}

.admin-filter-field label{
  color:#6e6e73;
  font-size:12px;
  font-weight:850;
}

.admin-filter-field input,
.admin-filter-field select,
.admin-script-controls select{
  width:100%;
  min-height:42px;
  border:1px solid rgba(0,0,0,.08);
  border-radius:16px;
  background:#fff;
  color:#1d1d1f;
  padding:0 12px;
  font-size:14px;
}

.admin-filter-actions{
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  gap:8px;
}

.admin-result-note{
  color:#6e6e73;
  font-size:13px;
  font-weight:800;
  white-space:nowrap;
}

.admin-student-card-grid,
.admin-recommend-grid,
.admin-push-grid,
.admin-sms-grid,
.admin-template-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.admin-student-card,
.admin-recommend-card,
.admin-push-card,
.admin-sms-card,
.admin-template-card{
  border:1px solid rgba(0,0,0,.05);
  border-radius:24px;
  background:#fff;
  padding:16px;
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}

.admin-student-card:hover,
.admin-recommend-card:hover,
.admin-push-card:hover,
.admin-sms-card:hover,
.admin-template-card:hover{
  transform:translateY(-1px);
  border-color:rgba(0,113,227,.16);
  background:#fbfbfd;
}

.admin-card-topline{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}

.admin-card-title{
  margin:0;
  font-size:18px;
  line-height:1.25;
  letter-spacing:0;
}

.admin-card-subtitle{
  margin-top:5px;
  color:#6e6e73;
  font-size:13px;
  line-height:1.45;
}

.admin-card-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:12px 0;
}

.admin-card-metric{
  min-height:70px;
  padding:10px;
  border-radius:18px;
  background:#f5f5f7;
}

.admin-card-metric span{
  display:block;
  color:#6e6e73;
  font-size:12px;
  font-weight:800;
}

.admin-card-metric strong{
  display:block;
  margin-top:6px;
  font-size:18px;
  color:#1d1d1f;
}

.admin-card-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:12px;
}

.admin-profile-hero{
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);
  gap:16px;
  margin-bottom:16px;
}

.admin-profile-summary{
  display:flex;
  gap:16px;
  align-items:flex-start;
}

.admin-profile-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}

.admin-profile-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:8px;
  margin-bottom:14px;
  border-radius:22px;
  background:#f5f5f7;
}

.admin-profile-tabs button,
.admin-script-scenario{
  border:none;
  border-radius:16px;
  padding:10px 12px;
  background:transparent;
  color:#3a3a3c;
  font-weight:850;
  cursor:pointer;
}

.admin-profile-tabs button.active,
.admin-script-scenario.active{
  background:#1d1d1f;
  color:#fff;
}

.admin-profile-panel{
  border:1px solid rgba(0,0,0,.05);
  border-radius:24px;
  background:#fff;
  padding:16px;
}

.admin-profile-module-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.admin-profile-module{
  padding:14px;
  border-radius:20px;
  background:#f5f5f7;
}

.admin-profile-module h4{
  margin:0 0 8px;
  font-size:15px;
}

.admin-profile-module p{
  margin:0;
  color:#6e6e73;
  line-height:1.6;
}

.admin-timeline-item{
  position:relative;
}

.admin-timeline-item::before{
  content:"";
  position:absolute;
  left:74px;
  top:16px;
  bottom:16px;
  width:1px;
  background:#d2d2d7;
}

.admin-conversion-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:0 0 16px;
}

.admin-conversion-item{
  padding:14px;
  border-radius:20px;
  background:#f5f5f7;
}

.admin-conversion-item span{
  display:block;
  color:#6e6e73;
  font-size:12px;
  font-weight:850;
}

.admin-conversion-item strong{
  display:block;
  margin-top:8px;
  font-size:24px;
}

.admin-recommend-reason{
  min-height:72px;
  padding:12px;
  border-radius:18px;
  background:#f5f5f7;
  color:#3a3a3c;
  line-height:1.6;
}

.admin-push-status-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:10px 0 12px;
}

.admin-compliance-note{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:0 0 16px;
  padding:14px;
  border-radius:22px;
  background:#fff7e8;
  color:#3a3a3c;
  line-height:1.6;
}

.admin-compliance-note i{
  flex:0 0 auto;
  width:28px;
  height:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  background:#fff;
  color:#9a5b00;
}

.admin-reminder-preview,
.admin-sms-preview{
  margin:12px 0;
  padding:12px;
  border-radius:18px;
  background:#f5f5f7;
  color:#3a3a3c;
  font-size:13px;
  line-height:1.65;
}

.admin-reminder-preview strong,
.admin-sms-preview strong{
  display:block;
  margin-bottom:6px;
  color:#1d1d1f;
}

.admin-safety-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:12px;
}

.admin-safety-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:9px 10px;
  border-radius:16px;
  background:#f5f5f7;
  color:#6e6e73;
  font-size:12px;
  font-weight:800;
}

.admin-sms-pending-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-bottom:16px;
}

.admin-sms-pending-card{
  padding:16px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(0,0,0,.05);
}

.admin-risk-list{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:16px;
}

.admin-risk-item{
  padding:14px;
  border-radius:20px;
  background:#f5f5f7;
}

.admin-risk-item strong{
  display:block;
  color:#1d1d1f;
  font-size:18px;
}

.admin-risk-item span{
  display:block;
  margin-top:6px;
  color:#6e6e73;
  font-size:12px;
  font-weight:850;
}

.admin-sms-settings-grid{
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);
  gap:16px;
}

.admin-sms-channel-card{
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(0,0,0,.05);
  padding:18px;
}

.admin-template-vars{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

.admin-task-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}

.admin-script-layout{
  display:grid;
  grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);
  gap:16px;
}

.admin-script-sidebar{
  border-radius:24px;
  background:#f5f5f7;
  padding:14px;
}

.admin-script-scenarios{
  display:grid;
  gap:8px;
  margin-top:12px;
}

.admin-script-scenario{
  text-align:left;
  background:#fff;
}

.admin-script-controls{
  grid-template-columns:repeat(3,minmax(0,1fr)) auto;
}

.admin-script-output-card{
  min-height:100%;
  border:1px solid rgba(0,0,0,.05);
  border-radius:24px;
  background:#fff;
  padding:16px;
}

.admin-script-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:12px;
}

.admin-empty-state,
.admin-loading-state{
  min-height:220px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  text-align:center;
  padding:28px;
  border:1px solid rgba(0,0,0,.05);
  border-radius:24px;
  background:#fbfbfd;
  color:#6e6e73;
}

.admin-empty-state i,
.admin-loading-state i{
  width:40px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  background:#f2f2f7;
  color:#1d1d1f;
}

.admin-empty-state strong,
.admin-loading-state strong{
  color:#1d1d1f;
  font-size:18px;
}

.admin-loading-bars{
  width:min(260px,80%);
  display:grid;
  gap:8px;
}

.admin-loading-bars span{
  height:10px;
  border-radius:999px;
  background:linear-gradient(90deg,#f2f2f7,#e5e5ea,#f2f2f7);
  background-size:180% 100%;
  animation:adminSkeleton 1.2s ease-in-out infinite;
}

.admin-loading-bars span:nth-child(2){
  width:78%;
  margin:auto;
}

.admin-loading-bars span:nth-child(3){
  width:54%;
  margin:auto;
}

@keyframes adminSkeleton{
  0%{background-position:100% 0;}
  100%{background-position:0 0;}
}

@media(prefers-reduced-motion:reduce){
  .admin-loading-bars span{
    animation:none;
  }

  .admin-student-card,
  .admin-recommend-card,
  .admin-push-card,
  .admin-sms-card,
  .admin-template-card{
    transition:none;
  }
}

@media(max-width:980px){
  .admin-ops-shell{
    padding:14px;
    border-radius:22px;
  }

  .admin-ops-hero{
    align-items:flex-start;
    flex-direction:column;
  }

  .admin-ops-role{
    align-items:flex-start;
  }

  .admin-ops-nav,
  .admin-ops-stats,
  .admin-ops-grid-2,
  .admin-ops-detail-grid,
  .admin-filter-bar,
  .admin-student-card-grid,
  .admin-recommend-grid,
  .admin-push-grid,
  .admin-sms-grid,
  .admin-template-grid,
  .admin-sms-pending-grid,
  .admin-risk-list,
  .admin-safety-grid,
  .admin-sms-settings-grid,
  .admin-profile-hero,
  .admin-profile-module-grid,
  .admin-conversion-strip,
  .admin-script-layout,
  .admin-script-controls{
    grid-template-columns:1fr;
  }

  .admin-ops-row,
  .admin-ops-row.compact,
  .admin-follow-card{
    grid-template-columns:1fr;
  }

  .admin-ops-nav button{
    text-align:left;
  }

  .admin-filter-actions,
  .admin-card-footer{
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}

@media(max-width:760px){
  .auth-overlay{
    padding:10px;
    align-items:flex-start;
  }

  .auth-card{
    max-width:100%;
    max-height:96vh;
    border-radius:24px;
    padding:18px;
  }

  .profile-subject-list{
    max-height:180px;
  }

  .auth-bar{
    flex-direction:column;
    align-items:flex-start;
  }

  .auth-actions{
    width:100%;
  }

  .auth-small-btn{
    flex:1;
  }
}

/* =====================
Stitch 官网首页视觉融合层
===================== */
:root{
  --stitch-bg:#f9f9ff;
  --stitch-surface:#ffffff;
  --stitch-surface-soft:#f2f3fc;
  --stitch-line:#c1c6d5;
  --stitch-text:#191c22;
  --stitch-muted:#414753;
  --stitch-primary:#0066cc;
  --stitch-primary-dark:#004e9f;
  --stitch-green:#34c759;
  --stitch-orange:#ff9500;
  --stitch-red:#ff3b30;
  --stitch-shadow:0 18px 48px rgba(15,23,42,.08);
  --stitch-card-shadow:0 4px 20px rgba(0,0,0,.05);
}

body{
  color:var(--stitch-text) !important;
  background:
    radial-gradient(circle at 82% 0%, rgba(0,102,204,.10), transparent 36%),
    linear-gradient(180deg,#f9f9ff 0%,#f2f3fc 48%,#ffffff 100%) !important;
}

.auth-bar,
.top-bar,
.container,
.auth-card{
  background:rgba(255,255,255,.76) !important;
  border:1px solid rgba(193,198,213,.38) !important;
  backdrop-filter:blur(22px) saturate(170%) !important;
  -webkit-backdrop-filter:blur(22px) saturate(170%) !important;
  box-shadow:var(--stitch-shadow) !important;
}

.top-bar{
  max-width:1200px !important;
  min-height:76px !important;
  margin:0 auto 18px !important;
  border-radius:28px !important;
}

.merged-header-shell{
  max-width:1200px;
  margin:0 auto 12px;
  padding:10px 18px;
  border-radius:24px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(193,198,213,.38);
  backdrop-filter:blur(22px) saturate(170%);
  -webkit-backdrop-filter:blur(22px) saturate(170%);
  box-shadow:var(--stitch-shadow);
  display:grid;
  grid-template-columns:minmax(270px,330px) minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
}

.merged-header-shell > .auth-bar,
.merged-header-shell > .top-bar{
  max-width:none !important;
  width:100% !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.merged-header-shell > .auth-bar{
  grid-column:2 / 4;
  grid-row:1;
  padding:0 !important;
  border-radius:0 !important;
}

.merged-header-shell > .top-bar{
  grid-column:1;
  grid-row:1;
  min-height:0 !important;
  height:auto !important;
  padding:0 !important;
  border-top:0 !important;
  border-radius:0 !important;
}

.merged-header-shell .top-left{
  gap:14px !important;
}

.merged-header-shell .top-logo{
  width:150px !important;
  height:62px !important;
  object-fit:contain !important;
  object-position:left center !important;
}

.merged-header-shell .top-divider{
  height:34px !important;
}

.merged-header-shell .top-name{
  font-size:21px !important;
}

.merged-header-shell .top-bar .suggest-btn{
  display:none !important;
}

.merged-header-shell .auth-user-info{
  flex:1 1 auto;
  min-width:0;
  gap:8px !important;
  align-items:center !important;
}

.merged-header-shell .auth-user-meta{
  flex:1 1 auto;
  min-width:0;
  display:flex !important;
  flex-direction:column !important;
  gap:3px !important;
}

.merged-header-shell .auth-user-avatar{
  width:34px !important;
  height:34px !important;
  min-width:34px !important;
  border-radius:12px !important;
}

.merged-header-shell .sync-status{
  align-self:flex-start;
  min-height:24px !important;
  padding:4px 10px !important;
  font-size:12px !important;
}

.merged-header-shell .status-row{
  margin-top:5px !important;
}

.merged-header-shell .bank-status{
  min-height:24px !important;
  padding:4px 10px !important;
  font-size:12px !important;
}

.merged-header-shell .auth-actions{
  flex:0 0 auto;
  justify-content:flex-end;
  align-items:center !important;
  flex-wrap:nowrap !important;
  gap:6px !important;
}

.merged-header-shell .auth-small-btn{
  min-height:38px !important;
  padding:8px 13px !important;
  font-size:14px !important;
}

.merged-header-shell #currentTeacherNameText{
  line-height:1.28 !important;
  max-width:520px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.merged-header-shell #currentTeacherEmailText{
  line-height:1.2 !important;
  max-width:520px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.suggest-action-btn{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:6px;
}

.suggest-action-btn svg{
  width:18px;
  height:18px;
  stroke-width:2.2;
}

@media(max-width:1080px){
  .merged-header-shell{
    grid-template-columns:1fr;
    gap:12px;
  }

  .merged-header-shell > .top-bar,
  .merged-header-shell > .auth-bar{
    grid-column:1;
    grid-row:auto;
  }

  .merged-header-shell > .auth-bar{
    display:flex !important;
  }

  .merged-header-shell .top-bar{
    padding-bottom:10px !important;
    border-bottom:1px solid rgba(193,198,213,.24) !important;
  }

  .merged-header-shell .top-logo{
    width:142px !important;
    height:58px !important;
  }
}

.top-name{
  color:var(--stitch-text) !important;
  font-size:24px !important;
  letter-spacing:0 !important;
}

.suggest-btn,
.auth-small-btn{
  border-color:rgba(193,198,213,.52) !important;
  background:rgba(255,255,255,.88) !important;
  box-shadow:var(--stitch-card-shadow) !important;
}

.hero-section{
  max-width:1200px !important;
  min-height:172px !important;
  height:auto !important;
  margin:0 auto 10px !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 90% 12%, rgba(0,102,204,.10), transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.62),rgba(242,243,252,.34)) !important;
}

.hero-section::before{
  opacity:.22 !important;
}

.hero-content{
  max-width:980px !important;
  margin:auto !important;
  padding:28px 22px 26px !important;
}

.hero-badge{
  background:rgba(0,102,204,.10) !important;
  color:var(--stitch-primary) !important;
  letter-spacing:0 !important;
}

.hero-greeting{
  color:var(--stitch-primary) !important;
  font-size:16px !important;
  font-weight:850 !important;
}

.hero-title{
  font-size:32px !important;
  line-height:1.18 !important;
  letter-spacing:0 !important;
  color:var(--stitch-text) !important;
  margin-top:6px !important;
}

.hero-slogan{
  color:var(--stitch-text) !important;
  font-size:15px !important;
  margin-top:8px !important;
}

.hero-subtitle{
  color:var(--stitch-muted) !important;
  font-size:13px !important;
  margin-top:8px !important;
  font-weight:650 !important;
}

.hero-status{
  border-radius:999px !important;
  background:rgba(52,199,89,.10) !important;
  border-color:rgba(52,199,89,.26) !important;
  color:#047857 !important;
  max-width:520px !important;
  margin-top:12px !important;
  padding:7px 14px !important;
  font-size:13px !important;
  line-height:1.35 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.tech-cube{
  background:
    linear-gradient(145deg,rgba(255,255,255,.88),rgba(215,227,255,.58)) !important;
}

.hero-visual{
  transform:scale(.72) !important;
  transform-origin:center right !important;
  opacity:.55 !important;
}

.tech-icon{
  background:linear-gradient(135deg,#ff6b00 0%,#34c759 48%,#007aff 100%) !important;
}

.container{
  max-width:1200px !important;
  margin:0 auto !important;
  border-radius:32px !important;
}

.stitch-showcase-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:16px 0 10px;
}

.stitch-mini-card{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:14px;
  border-radius:18px;
  background:rgba(255,255,255,.70);
  border:1px solid rgba(193,198,213,.24);
  box-shadow:var(--stitch-card-shadow);
  text-align:left;
}

.stitch-card-icon{
  width:38px;
  height:38px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  color:var(--stitch-primary);
  background:rgba(255,255,255,.92);
  box-shadow:var(--stitch-card-shadow);
}

.stitch-card-icon svg{
  width:20px;
  height:20px;
  stroke-width:2.2;
}

.stitch-card-title{
  color:var(--stitch-text);
  font-size:14px;
  font-weight:900;
  line-height:1.25;
}

.stitch-card-text{
  margin-top:4px;
  color:var(--stitch-muted);
  font-size:12px;
  font-weight:650;
  line-height:1.45;
}

.home-config-card,
.card,
.group-student-panel,
.growth-panel,
.poster-editor-panel,
.award-editor-box,
.admin-create-card,
.admin-data-card,
.analytics-card,
.stat-card{
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(193,198,213,.28) !important;
  box-shadow:var(--stitch-card-shadow) !important;
}

.level-impact-box{
  margin:12px 0 8px;
  padding:14px;
  border-radius:18px;
  background:rgba(242,243,252,.74);
  border:1px solid rgba(193,198,213,.32);
  box-shadow:var(--stitch-card-shadow);
}

.level-impact-head{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--stitch-text);
  font-size:15px;
  font-weight:900;
}

.level-impact-head svg{
  width:18px;
  height:18px;
  color:var(--stitch-primary);
}

.level-impact-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:10px;
  margin-top:12px;
}

.level-impact-item{
  padding:12px;
  border-radius:14px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(193,198,213,.22);
}

.level-impact-title{
  color:var(--stitch-primary);
  font-size:13px;
  font-weight:900;
  margin-bottom:5px;
}

.level-impact-text{
  color:var(--stitch-muted);
  font-size:12px;
  font-weight:650;
  line-height:1.55;
}

.home-config-card{
  border-radius:22px !important;
  padding:18px !important;
}

.mode-btn{
  border-radius:20px !important;
  border:1px solid rgba(193,198,213,.42) !important;
  background:rgba(242,243,252,.74) !important;
  box-shadow:var(--stitch-card-shadow) !important;
}

.mode-btn.active,
.generate-btn,
.auth-btn{
  background:linear-gradient(135deg,var(--stitch-primary),var(--stitch-primary-dark)) !important;
  box-shadow:0 14px 34px rgba(0,102,204,.22) !important;
}

.copy-btn{
  background:linear-gradient(135deg,#34c759,#16a34a) !important;
}

.small-btn,
.change-btn{
  background:var(--stitch-primary) !important;
}

.danger-btn,
.auth-small-btn.danger{
  color:#b91c1c !important;
  border-color:#fecaca !important;
  background:rgba(255,255,255,.92) !important;
}

input,
select,
textarea{
  border-radius:14px !important;
  border-color:rgba(193,198,213,.65) !important;
  background:rgba(255,255,255,.94) !important;
}

input:focus,
select:focus,
textarea:focus{
  border-color:var(--stitch-primary) !important;
  box-shadow:0 0 0 4px rgba(0,102,204,.12) !important;
}

.tags button,
.profile-subject-list button,
.home-subject-list button,
.admin-subject-list button,
.student-check-item{
  border-color:rgba(193,198,213,.72) !important;
  background:rgba(255,255,255,.92) !important;
}

.tags button.active,
.profile-subject-list button.active,
.home-subject-list button.active,
.admin-subject-list button.active,
.student-check-item.active{
  background:rgba(0,102,204,.10) !important;
  border-color:var(--stitch-primary) !important;
  color:var(--stitch-primary) !important;
}

.bottom-nav.apple-bottom-nav{
  border-color:rgba(193,198,213,.40) !important;
  background:rgba(255,255,255,.78) !important;
}

.bottom-nav.apple-bottom-nav .bottom-nav-btn.active{
  color:var(--stitch-primary) !important;
}

@media(max-width:760px){
  .hero-title{
    font-size:36px !important;
    letter-spacing:0 !important;
  }

  .stitch-showcase-grid{
    display:none !important;
  }
}

/* =====================
V4.1 手机浏览器强适配
===================== */
@media(max-width:640px){
  *{
    box-sizing:border-box;
  }

  html,
  body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }

  body{
    padding:6px 6px 78px !important;
    background:#f6f8fb !important;
  }

  .container{
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:10px !important;
    border-radius:16px !important;
    overflow:hidden;
  }

  .merged-header-shell{
    width:100% !important;
    max-width:100% !important;
    margin:0 0 10px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }

  .merged-header-shell > .auth-bar{
    padding:10px !important;
  }

  .top-bar{
    position:fixed !important;
    right:14px !important;
    bottom:86px !important;
    z-index:1000 !important;
    display:block !important;
    width:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
  }

  .top-bar .top-left{
    display:none !important;
  }

  .top-bar .suggest-btn{
    width:50px !important;
    height:50px !important;
    min-width:50px !important;
    padding:0 !important;
    border-radius:999px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:rgba(255,255,255,.94) !important;
    border:1px solid rgba(226,232,240,.9) !important;
    box-shadow:0 12px 28px rgba(15,23,42,.16) !important;
  }

  .merged-header-shell .top-bar .suggest-btn{
    display:flex !important;
  }

  .top-bar .suggest-btn span{
    display:none !important;
  }

  .top-bar .suggest-btn svg{
    width:23px !important;
    height:23px !important;
  }

  .top-name{
    font-size:18px !important;
    max-width:52vw;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .auth-bar{
    width:100% !important;
    margin:0 0 10px !important;
    padding:10px !important;
    border-radius:18px !important;
    gap:8px !important;
  }

  .auth-user-info{
    width:100%;
    min-width:0;
    gap:8px !important;
    align-items:center !important;
  }

  .auth-user-avatar{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    border-radius:12px !important;
  }

  .auth-user-meta{
    min-width:0;
    flex:1;
  }

  #currentTeacherNameText,
  #currentTeacherEmailText{
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  #currentTeacherNameText{
    font-size:15px !important;
    line-height:1.25 !important;
  }

  #currentTeacherEmailText{
    font-size:12px !important;
    line-height:1.25 !important;
  }

  .sync-status{
    width:auto !important;
    max-width:100% !important;
    min-height:28px !important;
    padding:5px 10px !important;
    font-size:12px !important;
    border-radius:999px !important;
  }

  .auth-actions{
    display:flex !important;
    width:100%;
    gap:6px !important;
    flex-wrap:nowrap !important;
  }

  .auth-actions .suggest-action-btn{
    display:none !important;
  }

  .auth-small-btn{
    flex:1;
    width:auto !important;
    min-height:34px !important;
    padding:7px 6px !important;
    font-size:12px !important;
    white-space:nowrap !important;
    border-radius:14px !important;
  }

  .hero-section{
    display:none !important;
  }

  .home-config-card,
  .card,
  .group-student-panel,
  .growth-panel,
  .poster-editor-panel,
  .award-editor-box,
  .admin-create-card,
  .admin-data-card,
  .analytics-card{
    border-radius:18px !important;
    padding:16px !important;
    max-width:100% !important;
    overflow:hidden;
  }

  .home-config-card{
    margin-top:0 !important;
  }

  .row,
  .filter-bar,
  .stats-grid,
  .admin-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  h1,
  h2,
  h3,
  .section-title,
  .card-title,
  .admin-create-title{
    word-break:break-word;
    line-height:1.25;
  }

  .section-title{
    font-size:22px !important;
    align-items:flex-start !important;
  }

  label,
  .icon-label{
    font-size:15px !important;
    line-height:1.45 !important;
  }

  .input-icon-wrap{
    width:100% !important;
  }

  input,
  select,
  textarea{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    font-size:16px !important;
    border-radius:14px !important;
  }

  textarea{
    min-height:160px !important;
  }

  #result,
  #reportResult,
  #studentGrowthReport,
  #aiAnalysisResult,
  #ruleDealResult,
  #growthReportText{
    min-height:260px !important;
  }

  .actions,
  .home-config-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .btn,
  .generate-btn,
  .copy-btn,
  .small-btn,
  .danger-btn,
  .gray-btn,
  .change-btn{
    width:100% !important;
    max-width:100% !important;
    min-height:46px !important;
    white-space:normal !important;
    line-height:1.35 !important;
    padding:10px 12px !important;
  }

  .title-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
  }

  .tags,
  .profile-subject-list,
  .home-subject-list,
  .admin-subject-list,
  .student-check-list{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    max-width:100% !important;
  }

  .tags button,
  .profile-subject-list button,
  .home-subject-list button,
  .admin-subject-list button,
  .student-check-item{
    flex:0 1 auto;
    max-width:100%;
    margin:0 !important;
    padding:9px 12px !important;
    min-height:40px !important;
    white-space:normal !important;
    word-break:break-word;
    line-height:1.35 !important;
    font-size:14px !important;
  }

  .search-tag-box{
    width:100% !important;
  }

  .search-tag-box input{
    padding-left:42px !important;
  }

  .admin-table-wrap{
    width:100% !important;
    max-width:100% !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch;
    border-radius:16px !important;
  }

  .admin-table{
    min-width:980px !important;
  }

  .growth-poster{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:18px !important;
    border-radius:24px !important;
    transform:none !important;
  }

  .poster-title{
    font-size:28px !important;
    line-height:1.15 !important;
  }

  .poster-radar-card{
    height:auto !important;
    min-height:280px !important;
  }

  #posterRadarChart,
  #growthRadarChart,
  #monthlyGrowthChart{
    max-width:100% !important;
    max-height:300px !important;
  }

  .poster-award-main,
  .poster-footer{
    grid-template-columns:1fr !important;
  }

  .bottom-nav.apple-bottom-nav{
    left:8px !important;
    right:8px !important;
    bottom:8px !important;
    transform:none !important;
    width:auto !important;
    max-width:none !important;
    max-height:66px !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    grid-template-columns:none !important;
    gap:4px !important;
    padding:6px !important;
    border-radius:20px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .bottom-nav.apple-bottom-nav::-webkit-scrollbar{
    display:none;
  }

  .bottom-nav.apple-bottom-nav .bottom-nav-btn{
    flex:0 0 64px !important;
    min-width:64px !important;
    width:64px !important;
    min-height:50px !important;
    padding:5px 3px !important;
    border-radius:14px !important;
    font-size:11px !important;
    gap:3px !important;
  }

  .bottom-nav.apple-bottom-nav .bottom-nav-btn span{
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .bottom-nav.apple-bottom-nav .bottom-nav-btn svg{
    width:18px !important;
    height:18px !important;
  }
}

/* =====================
V4.3 桌面端左侧导航，移动端保留底部导航
===================== */
@media(min-width:900px){
  body{
    padding:20px 22px 28px 118px !important;
  }

  .bottom-nav.apple-bottom-nav{
    left:18px !important;
    right:auto !important;
    top:50% !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
    width:78px !important;
    max-width:78px !important;
    min-height:auto !important;
    max-height:calc(100vh - 40px) !important;
    padding:10px 8px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    grid-template-columns:none !important;
    gap:6px !important;
    border-radius:28px !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    scrollbar-width:none;
    box-shadow:
      12px 0 38px rgba(15,23,42,.10),
      inset 0 1px 0 rgba(255,255,255,.95) !important;
  }

  .bottom-nav.apple-bottom-nav::-webkit-scrollbar{
    display:none;
  }

  .bottom-nav.apple-bottom-nav .bottom-nav-btn{
    width:100% !important;
    min-width:0 !important;
    min-height:58px !important;
    padding:8px 4px !important;
    flex:0 0 auto !important;
    flex-direction:column !important;
    gap:4px !important;
    border-radius:18px !important;
    font-size:12px !important;
    line-height:1.1 !important;
  }

  .bottom-nav.apple-bottom-nav .bottom-nav-btn svg{
    width:22px !important;
    height:22px !important;
  }

  .bottom-nav.apple-bottom-nav .bottom-nav-btn span{
    max-width:100% !important;
    white-space:normal !important;
    text-align:center !important;
    line-height:1.12 !important;
  }

  .bottom-nav.apple-bottom-nav .bottom-nav-btn:hover{
    transform:translateX(2px) !important;
  }

  .bottom-nav.apple-bottom-nav .bottom-nav-btn.active{
    box-shadow:
      0 10px 24px rgba(0,102,204,.12),
      inset 0 1px 0 rgba(255,255,255,.96) !important;
  }
}

/* =====================
V4.4 Apple Store 风格字体 / 色彩 / 点击微动
===================== */
:root{
  --apple-bg:#f5f5f7;
  --apple-surface:#ffffff;
  --apple-surface-soft:#fbfbfd;
  --apple-text:#1d1d1f;
  --apple-muted:#6e6e73;
  --apple-border:#d2d2d7;
  --apple-blue:#0071e3;
  --apple-blue-hover:#0077ed;
  --apple-green:#30d158;
  --apple-red:#ff3b30;
  --apple-shadow:0 8px 28px rgba(0,0,0,.07);
  --apple-shadow-strong:0 14px 42px rgba(0,0,0,.10);
}

body{
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","PingFang SC","Helvetica Neue",Arial,sans-serif !important;
  color:var(--apple-text) !important;
  background:linear-gradient(180deg,#fbfbfd 0%,#f5f5f7 100%) !important;
  letter-spacing:0 !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

.auth-bar,
.top-bar,
.container,
.auth-card,
.card,
.analytics-card,
.stat-card,
.student-profile-card,
.growth-panel,
.group-student-panel,
.risk-visual-card,
.bottom-nav.apple-bottom-nav{
  background:rgba(255,255,255,.88) !important;
  border-color:rgba(210,210,215,.70) !important;
  box-shadow:var(--apple-shadow) !important;
}

h1,h2,h3,
.hero-title,
.top-name,
.card-title,
.section-title,
.stat-num{
  color:var(--apple-text) !important;
  letter-spacing:-.01em !important;
}

.hero-title{
  font-weight:760 !important;
}

.hero-subtitle,
.hero-slogan,
.card-meta,
.stat-label,
.tips,
label{
  color:var(--apple-muted) !important;
}

.hero-greeting,
.bank-status,
.sync-status,
.bottom-nav.apple-bottom-nav .bottom-nav-btn.active,
.tags button.active,
.student-check-item.active,
.profile-subject-list button.active{
  color:var(--apple-blue) !important;
}

.generate-btn,
.small-btn{
  background:var(--apple-blue) !important;
  color:#fff !important;
  box-shadow:none !important;
}

.generate-btn:hover,
.small-btn:hover{
  background:var(--apple-blue-hover) !important;
}

.copy-btn{
  background:var(--apple-green) !important;
  color:#fff !important;
  box-shadow:none !important;
}

.danger-btn{
  background:#fff !important;
  color:var(--apple-red) !important;
  border:1px solid rgba(255,59,48,.30) !important;
}

input,select,textarea{
  background:rgba(255,255,255,.92) !important;
  border-color:rgba(210,210,215,.85) !important;
  color:var(--apple-text) !important;
  box-shadow:none !important;
}

input:focus,
select:focus,
textarea:focus{
  border-color:var(--apple-blue) !important;
  box-shadow:0 0 0 4px rgba(0,113,227,.14) !important;
}

.card,
.analytics-card,
.stat-card,
.student-profile-card,
.growth-panel,
.group-student-panel,
.mode-btn,
.tags button,
.student-check-item,
.profile-subject-list button,
.bottom-nav.apple-bottom-nav .bottom-nav-btn,
.btn,
.small-btn,
.gray-btn,
.danger-btn{
  transition:
    transform .22s cubic-bezier(.2,.8,.2,1),
    box-shadow .22s cubic-bezier(.2,.8,.2,1),
    background-color .22s ease,
    border-color .22s ease,
    color .22s ease !important;
  will-change:transform;
}

.card:hover,
.analytics-card:hover,
.stat-card:hover,
.student-profile-card:hover,
.growth-panel:hover,
.group-student-panel:hover{
  transform:translateY(-2px);
  box-shadow:var(--apple-shadow-strong) !important;
}

.apple-tap-motion,
.card:active,
.analytics-card:active,
.stat-card:active,
.student-profile-card:active,
.growth-panel:active,
.group-student-panel:active,
.mode-btn:active,
.tags button:active,
.student-check-item:active,
.profile-subject-list button:active,
.bottom-nav.apple-bottom-nav .bottom-nav-btn:active,
.btn:active,
.small-btn:active,
.gray-btn:active,
.danger-btn:active{
  animation:appleTapMotion .26s cubic-bezier(.2,.8,.2,1);
}

@keyframes appleTapMotion{
  0%{transform:scale(1);}
  42%{transform:scale(.975);}
  100%{transform:scale(1);}
}

@media(prefers-reduced-motion:reduce){
  .apple-tap-motion,
  .card:active,
  .analytics-card:active,
  .stat-card:active,
  .student-profile-card:active,
  .growth-panel:active,
  .group-student-panel:active,
  .mode-btn:active,
  .tags button:active,
  .student-check-item:active,
  .profile-subject-list button:active,
  .bottom-nav.apple-bottom-nav .bottom-nav-btn:active,
  .btn:active,
  .small-btn:active,
  .gray-btn:active,
  .danger-btn:active{
    animation:none !important;
  }
}

/* =====================
V4.5 首页 Banner 精简版
===================== */
.header-greeting-text{
  position:static !important;
  transform:none !important;
  z-index:auto !important;
  font-size:15px !important;
  line-height:1.2 !important;
  font-weight:760 !important;
  color:var(--apple-blue) !important;
  margin:0 8px 0 0 !important;
  white-space:nowrap !important;
  min-width:0 !important;
  max-width:170px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  text-align:left !important;
  pointer-events:auto !important;
}

.brand-title-line{
  display:flex !important;
  align-items:baseline !important;
  gap:0 !important;
  min-width:0 !important;
  white-space:nowrap !important;
}

.brand-title-line .top-name{
  flex:0 0 auto !important;
}

.merged-header-shell + .container{
  margin-top:14px !important;
}

.auth-user-info{
  align-items:center !important;
}

.auth-user-avatar{
  width:46px !important;
  height:46px !important;
}

.hero-section{
  height:auto !important;
  min-height:210px !important;
  max-height:230px !important;
  border-radius:0 !important;
}

.hero-content{
  padding:26px 20px 32px !important;
}

.hero-greeting{
  display:none !important;
}

.hero-title{
  font-size:42px !important;
  line-height:1.06 !important;
  font-weight:780 !important;
  letter-spacing:-.03em !important;
}

.hero-slogan{
  margin-top:12px !important;
  color:var(--apple-text) !important;
  font-size:24px !important;
  line-height:1.18 !important;
  font-weight:720 !important;
  letter-spacing:-.02em !important;
}

.hero-subtitle{
  margin-top:13px !important;
  color:var(--apple-muted) !important;
  font-size:15px !important;
  line-height:1.45 !important;
  font-weight:650 !important;
}

.hero-visual{
  transform:scale(.82) !important;
  right:36px !important;
  top:20px !important;
  opacity:.62 !important;
}

@media(max-width:760px){
  .header-greeting-text{
    font-size:12px !important;
    max-width:96px !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .hero-section{
    min-height:185px !important;
    max-height:none !important;
  }

  .hero-content{
    padding:24px 14px 28px !important;
  }

  .hero-title{
    font-size:30px !important;
  }

  .hero-slogan{
    font-size:20px !important;
  }

  .hero-subtitle{
    font-size:13px !important;
  }

  .hero-visual{
    opacity:.18 !important;
    transform:scale(.62) !important;
  }
}

.growth-operation-hero{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  padding:22px;
  border:1px solid rgba(37,99,235,.12);
  border-radius:28px;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(237,246,255,.9));
  box-shadow:0 18px 48px rgba(37,99,235,.08);
  margin-bottom:18px;
}

.growth-operation-hero h2{
  margin:0 0 8px;
  font-size:clamp(24px,3vw,38px);
  letter-spacing:0;
}

.growth-operation-hero p{
  margin:0;
  color:#64748b;
  font-weight:700;
  line-height:1.7;
}

.growth-operation-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 14px;
  border-radius:999px;
  background:#eaf3ff;
  color:#1264d8;
  font-weight:900;
  white-space:nowrap;
}

.growth-operation-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);
  gap:18px;
  align-items:start;
}

.growth-operation-card{
  background:rgba(255,255,255,.95);
  border:1px solid rgba(148,163,184,.2);
  border-radius:24px;
  padding:20px;
  box-shadow:0 14px 36px rgba(15,23,42,.06);
}

.growth-operation-card h3{
  margin:0 0 14px;
  display:flex;
  align-items:center;
  gap:8px;
  font-size:18px;
}

.growth-operation-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.growth-operation-field{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.growth-operation-field label{
  font-weight:900;
  color:#334155;
}

.growth-operation-field select,
.growth-operation-field input,
.growth-operation-field textarea{
  width:100%;
  border:1px solid rgba(148,163,184,.35);
  border-radius:16px;
  background:#fff;
  padding:12px 14px;
  font-size:15px;
  font-weight:700;
  color:#0f172a;
  outline:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}

.growth-operation-field textarea{
  min-height:120px;
  resize:vertical;
  line-height:1.6;
}

.growth-operation-checks{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}

.growth-operation-check{
  display:flex;
  align-items:center;
  gap:8px;
  padding:12px;
  border:1px solid rgba(148,163,184,.2);
  border-radius:16px;
  background:#f8fbff;
  font-weight:800;
  color:#334155;
}

.growth-operation-preview{
  display:grid;
  gap:10px;
}

.growth-operation-preview-item{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-radius:16px;
  background:#f8fafc;
  color:#475569;
  font-weight:800;
}

.growth-operation-preview-item strong{
  color:#0f172a;
  text-align:right;
}

.growth-operation-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:16px;
}

.growth-operation-primary{
  border:none;
  border-radius:18px;
  padding:14px 20px;
  background:#1473e6;
  color:#fff;
  font-weight:900;
  box-shadow:0 14px 30px rgba(20,115,230,.22);
  cursor:pointer;
}

.growth-operation-secondary{
  border:1px solid rgba(20,115,230,.18);
  border-radius:18px;
  padding:14px 18px;
  background:#fff;
  color:#1264d8;
  font-weight:900;
  cursor:pointer;
}

.growth-operation-results{
  display:none;
  margin-top:18px;
}

.growth-operation-results.active{
  display:block;
}

.growth-operation-tabs{
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding-bottom:8px;
}

.growth-operation-tab{
  border:1px solid rgba(148,163,184,.24);
  background:#fff;
  color:#64748b;
  border-radius:999px;
  padding:10px 14px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
}

.growth-operation-tab.active{
  background:#1473e6;
  color:#fff;
  border-color:#1473e6;
  box-shadow:0 12px 24px rgba(20,115,230,.18);
}

.growth-operation-output{
  margin-top:14px;
  padding:18px;
  min-height:260px;
  white-space:pre-wrap;
  line-height:1.8;
  border-radius:22px;
  border:1px solid rgba(148,163,184,.2);
  background:linear-gradient(180deg,#fff,#f8fbff);
  color:#111827;
  font-weight:650;
}

.growth-operation-empty{
  padding:18px;
  border-radius:20px;
  background:#fff7ed;
  color:#9a3412;
  font-weight:800;
  line-height:1.7;
}

@media (max-width:900px){
  .growth-operation-hero,
  .growth-operation-layout{
    grid-template-columns:1fr;
  }

  .growth-operation-hero{
    flex-direction:column;
    padding:18px;
  }

  .growth-operation-grid,
  .growth-operation-checks{
    grid-template-columns:1fr;
  }
}

.growth-operation-store-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:24px;
  align-items:stretch;
  padding:34px;
  margin-bottom:26px;
  border-radius:34px;
  background:
    radial-gradient(circle at 12% 18%,rgba(20,115,230,.16),transparent 30%),
    linear-gradient(135deg,#fff 0%,#f4f8ff 56%,#edf5ff 100%);
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 24px 70px rgba(15,23,42,.08);
}

.growth-operation-store-copy h2{
  margin:0;
  font-size:clamp(32px,4vw,46px);
  line-height:1.08;
  letter-spacing:0;
  color:#111827;
}

.growth-operation-store-copy p{
  max-width:760px;
  margin:14px 0 0;
  color:#64748b;
  font-size:16px;
  line-height:1.75;
  font-weight:750;
}

.growth-operation-hero-stat{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
  min-height:150px;
  padding:24px;
  border-radius:28px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(255,255,255,.8);
  box-shadow:0 18px 44px rgba(37,99,235,.1);
  backdrop-filter:blur(18px);
}

.growth-operation-hero-stat span,
.growth-operation-kicker{
  color:#1473e6;
  font-size:13px;
  font-weight:950;
}

.growth-operation-hero-stat strong{
  color:#0f172a;
  font-size:30px;
  line-height:1.15;
}

.growth-operation-hero-stat small{
  color:#64748b;
  font-weight:800;
  line-height:1.55;
}

.growth-operation-search-card,
.growth-operation-rule-card{
  padding:24px;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 18px 52px rgba(15,23,42,.06);
  margin-bottom:24px;
}

.growth-operation-search-card h3,
.growth-operation-section-head h3,
.growth-operation-rule-card h3{
  margin:0;
  color:#111827;
  font-size:24px;
  line-height:1.2;
  letter-spacing:0;
}

.growth-operation-search-card select{
  width:100%;
  margin-top:16px;
  padding:18px 20px;
  border-radius:22px;
  border:1px solid rgba(20,115,230,.18);
  background:#f8fbff;
  color:#0f172a;
  font-size:18px;
  font-weight:900;
  outline:none;
}

.growth-operation-student-summary{
  margin-top:14px;
}

.growth-operation-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin:22px 0 14px;
}

.growth-operation-section-head p,
.growth-operation-rule-card p{
  margin:0;
  color:#64748b;
  font-size:13px;
  line-height:1.6;
  font-weight:750;
}

.growth-operation-segment{
  display:inline-flex;
  gap:6px;
  padding:6px;
  border-radius:999px;
  background:#eef4fb;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.05);
  overflow:auto;
  max-width:100%;
}

.growth-operation-segment.compact{
  border-radius:20px;
  flex-wrap:wrap;
  background:#f2f6fb;
}

.growth-operation-segment-btn{
  border:none;
  border-radius:999px;
  padding:11px 18px;
  background:transparent;
  color:#64748b;
  font-size:14px;
  font-weight:950;
  white-space:nowrap;
  cursor:pointer;
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease,color .18s ease;
}

.growth-operation-segment-btn:hover,
.growth-operation-choice-card:hover,
.growth-operation-mini-card:hover,
.growth-operation-evidence-card:hover,
.growth-operation-tag-card:hover{
  transform:translateY(-2px);
}

.growth-operation-segment-btn.active{
  background:#fff;
  color:#1473e6;
  box-shadow:0 10px 26px rgba(37,99,235,.14);
}

.growth-operation-date-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,220px));
  gap:14px;
  margin:14px 0 22px;
}

.growth-operation-choice-strip{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(230px,280px);
  gap:14px;
  overflow-x:auto;
  padding:2px 2px 18px;
  scroll-snap-type:x proximity;
}

.growth-operation-choice-strip::-webkit-scrollbar,
.growth-operation-tag-row::-webkit-scrollbar,
.growth-operation-result-tabs::-webkit-scrollbar{
  height:6px;
}

.growth-operation-choice-strip::-webkit-scrollbar-thumb,
.growth-operation-tag-row::-webkit-scrollbar-thumb,
.growth-operation-result-tabs::-webkit-scrollbar-thumb{
  background:rgba(100,116,139,.18);
  border-radius:999px;
}

.growth-operation-choice-card{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
  min-height:160px;
  padding:20px;
  border-radius:28px;
  border:1px solid rgba(148,163,184,.2);
  background:linear-gradient(180deg,#fff,#f8fbff);
  text-align:left;
  color:#0f172a;
  box-shadow:0 16px 42px rgba(15,23,42,.06);
  cursor:pointer;
  scroll-snap-align:start;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;
}

.growth-operation-choice-card svg{
  width:26px;
  height:26px;
  color:#1473e6;
}

.growth-operation-choice-card strong{
  font-size:19px;
  line-height:1.25;
}

.growth-operation-choice-card span{
  color:#64748b;
  font-size:13px;
  line-height:1.55;
  font-weight:750;
}

.growth-operation-choice-card.active{
  border-color:rgba(20,115,230,.58);
  background:linear-gradient(180deg,#eef6ff,#fff);
  box-shadow:0 20px 50px rgba(20,115,230,.15);
}

.growth-operation-choice-card.active::after,
.growth-operation-evidence-card.active::after{
  content:"";
  position:absolute;
  top:16px;
  right:16px;
  width:12px;
  height:12px;
  border-radius:50%;
  background:#1473e6;
  box-shadow:0 0 0 5px rgba(20,115,230,.12);
}

.growth-operation-mini-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.growth-operation-mini-card{
  position:relative;
  padding:18px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 14px 34px rgba(15,23,42,.05);
  transition:transform .18s ease,box-shadow .18s ease;
}

.growth-operation-mini-card.wide{
  grid-column:1/-1;
}

.growth-operation-mini-card span{
  display:block;
  margin-bottom:10px;
  color:#334155;
  font-size:15px;
  font-weight:950;
}

.growth-operation-mini-card input{
  width:100%;
  border:1px solid rgba(148,163,184,.25);
  border-radius:16px;
  padding:13px 14px;
  background:#f8fbff;
  color:#0f172a;
  font-size:15px;
  font-weight:850;
  outline:none;
}

.growth-operation-tag-row{
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding-bottom:6px;
}

.growth-operation-tag-card{
  border:1px solid rgba(148,163,184,.22);
  border-radius:999px;
  padding:10px 14px;
  background:#f8fafc;
  color:#475569;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
  transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease;
}

.growth-operation-tag-card.active{
  background:#eaf3ff;
  border-color:rgba(20,115,230,.42);
  color:#1473e6;
}

.growth-operation-evidence-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.growth-operation-evidence-card{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:56px;
  border:1px solid rgba(148,163,184,.2);
  border-radius:18px;
  background:#f8fbff;
  color:#334155;
  font-weight:900;
  cursor:pointer;
  transition:transform .18s ease,background .18s ease,border-color .18s ease;
}

.growth-operation-evidence-card.active{
  background:#eef6ff;
  border-color:rgba(20,115,230,.48);
  color:#1473e6;
}

.growth-operation-rule-card{
  margin-top:16px;
}

.growth-operation-rule-card textarea{
  width:100%;
  min-height:210px;
  margin-top:16px;
  border:1px solid rgba(148,163,184,.22);
  border-radius:22px;
  background:#f8fbff;
  color:#0f172a;
  padding:18px;
  font-size:15px;
  line-height:1.7;
  font-weight:700;
  resize:vertical;
  outline:none;
}

.growth-operation-stat-strip{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.growth-operation-preview-item{
  min-height:96px;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,23,42,.05);
}

.growth-operation-preview-item strong{
  font-size:21px;
  color:#111827;
  text-align:left;
}

.growth-operation-primary.wide-btn{
  width:100%;
  justify-content:center;
  margin-top:16px;
  padding:18px 22px;
  border-radius:999px;
  background:linear-gradient(135deg,#1473e6,#4f8cff);
  transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease;
}

.growth-operation-primary.wide-btn:active{
  transform:scale(.98);
}

.growth-operation-primary.is-loading{
  opacity:.78;
  pointer-events:none;
}

.growth-operation-results{
  margin-top:28px;
}

.growth-operation-result-tabs{
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding:4px 2px 12px;
}

.growth-operation-result-tabs .growth-operation-tab{
  background:#fff;
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}

.growth-operation-output{
  display:grid;
  gap:14px;
  min-height:220px;
  padding:0;
  border:none;
  background:transparent;
  box-shadow:none;
  white-space:normal;
}

.growth-operation-result-card{
  position:relative;
  padding:20px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 16px 42px rgba(15,23,42,.06);
  color:#111827;
}

.growth-operation-result-card h4{
  margin:0 88px 10px 0;
  font-size:19px;
  letter-spacing:0;
}

.growth-operation-result-card p{
  margin:0;
  white-space:pre-wrap;
  color:#334155;
  font-size:15px;
  line-height:1.85;
  font-weight:700;
}

.growth-operation-copy-mini{
  position:absolute;
  top:16px;
  right:16px;
  border:1px solid rgba(20,115,230,.18);
  border-radius:999px;
  background:#f8fbff;
  color:#1473e6;
  padding:8px 12px;
  font-weight:950;
  cursor:pointer;
}

.growth-operation-toast{
  position:fixed;
  left:50%;
  bottom:110px;
  z-index:9999;
  transform:translate(-50%,18px);
  opacity:0;
  pointer-events:none;
  padding:12px 18px;
  border-radius:999px;
  background:rgba(15,23,42,.92);
  color:#fff;
  font-weight:900;
  box-shadow:0 18px 42px rgba(15,23,42,.22);
  transition:opacity .2s ease,transform .2s ease;
}

.growth-operation-toast.show{
  opacity:1;
  transform:translate(-50%,0);
}

.growth-operation-page-shell{
  background:#f5f5f7;
  padding-top:12px;
}

.growth-operation-store-hero{
  grid-template-columns:minmax(0,1fr) 290px;
  gap:22px;
  padding:34px 36px;
  margin-bottom:22px;
  border-radius:32px;
  background:#f5f5f7;
  border:none;
  box-shadow:none;
}

.growth-operation-store-copy h2{
  font-size:clamp(36px,4.2vw,42px);
  color:#1d1d1f;
  font-weight:850;
}

.growth-operation-store-copy p{
  max-width:760px;
  color:#6e6e73;
  font-size:18px;
  line-height:1.55;
  font-weight:700;
}

.growth-operation-hero-stat{
  min-height:132px;
  padding:22px;
  border-radius:26px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 18px 45px rgba(15,23,42,.08);
}

.growth-operation-hero-stat strong{
  font-size:28px;
}

.growth-operation-quick-grid{
  display:grid;
  grid-template-columns:1.05fr .9fr 1.45fr;
  gap:18px;
  align-items:stretch;
  margin-bottom:28px;
}

.growth-operation-quick-card,
.growth-operation-search-card,
.growth-operation-rule-card{
  margin:0;
  padding:22px;
  border-radius:28px;
  background:rgba(255,255,255,.9);
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 18px 45px rgba(15,23,42,.07);
}

.growth-operation-card-topline h3,
.growth-operation-section-head h3,
.growth-operation-rule-card h3{
  margin:4px 0 0;
  font-size:24px;
  color:#1d1d1f;
  font-weight:850;
  letter-spacing:0;
}

.growth-operation-card-topline p,
.growth-operation-section-head p,
.growth-operation-rule-card p{
  margin:8px 0 0;
  color:#6e6e73;
  font-size:13px;
  line-height:1.45;
  font-weight:700;
}

.growth-operation-search-card select{
  margin-top:16px;
  padding:15px 16px;
  border-radius:20px;
  background:#f5f7fb;
  border:1px solid rgba(148,163,184,.18);
  font-size:16px;
  color:#1d1d1f;
}

.growth-operation-student-summary .growth-operation-stat-strip{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}

.growth-operation-segment{
  margin-top:16px;
  padding:5px;
  background:#e9edf3;
}

.growth-operation-segment-btn{
  min-height:40px;
  padding:0 16px;
  font-size:14px;
  font-weight:800;
}

.growth-operation-date-row{
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:14px 0 0;
}

.growth-operation-mini-card.compact-field{
  padding:12px;
  border-radius:18px;
}

.growth-operation-mini-card.compact-field input{
  padding:10px 11px;
  border-radius:14px;
}

.growth-operation-choice-strip{
  grid-auto-columns:minmax(180px,210px);
  gap:12px;
  padding:16px 2px 8px;
}

.growth-operation-choice-card{
  min-height:124px;
  padding:16px;
  border-radius:24px;
  box-shadow:0 12px 30px rgba(15,23,42,.055);
}

.growth-operation-choice-card svg{
  width:22px;
  height:22px;
}

.growth-operation-choice-card strong{
  font-size:18px;
}

.growth-operation-choice-card span{
  font-size:12.5px;
  line-height:1.45;
}

.growth-operation-choice-card.active{
  background:rgba(0,113,227,.08);
  border-color:rgba(0,113,227,.42);
  box-shadow:0 14px 32px rgba(0,113,227,.12);
}

.growth-operation-section-head.compact-head{
  margin:12px 0 12px;
  align-items:flex-end;
}

.growth-operation-section-head.compact-head h3{
  font-size:26px;
}

.growth-operation-stat-strip{
  grid-template-columns:repeat(6,minmax(150px,1fr));
  gap:12px;
  margin-bottom:28px;
  overflow-x:auto;
  padding-bottom:6px;
}

.growth-operation-preview-item{
  min-height:92px;
  padding:16px;
  border-radius:20px;
  box-shadow:0 12px 30px rgba(15,23,42,.055);
}

.growth-operation-preview-item span{
  font-size:13px;
  color:#6e6e73;
}

.growth-operation-preview-item strong{
  font-size:26px;
  line-height:1.15;
  color:#1d1d1f;
}

.growth-operation-optional-layout{
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  gap:18px;
  margin-bottom:22px;
}

.growth-operation-mini-grid.compact-grid{
  gap:12px;
}

.growth-operation-mini-card{
  padding:16px;
  border-radius:22px;
  box-shadow:0 12px 30px rgba(15,23,42,.055);
}

.growth-operation-mini-card span{
  margin-bottom:9px;
  font-size:14px;
}

.growth-operation-mini-card input{
  padding:12px 13px;
  border-radius:15px;
  font-size:14px;
}

.growth-operation-tag-row.wrap{
  flex-wrap:wrap;
}

.growth-operation-tag-card{
  padding:9px 13px;
  font-size:13px;
  font-weight:800;
}

.growth-operation-tag-card.active{
  background:rgba(0,113,227,.08);
  border-color:rgba(0,113,227,.38);
  color:#0071e3;
}

.growth-operation-evidence-grid.compact-evidence{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.growth-operation-evidence-card{
  min-height:48px;
  border-radius:16px;
  font-size:13px;
}

.growth-operation-rule-card.compact-rule{
  padding:20px;
  border-radius:26px;
}

.growth-operation-rule-card textarea{
  min-height:160px;
  margin-top:14px;
  padding:15px;
  border-radius:18px;
  background:#f5f7fb;
  font-size:14px;
  line-height:1.65;
}

.growth-operation-primary.wide-btn{
  height:54px;
  margin-top:14px;
  border-radius:999px;
  font-size:16px;
}

.growth-operation-results{
  margin-top:30px;
  padding:0 0 18px;
}

.growth-operation-results .growth-operation-section-head.result-head{
  margin-bottom:14px;
}

.growth-operation-results .growth-operation-section-head{
  margin:0 0 16px;
  align-items:flex-start;
  background:transparent;
}

.growth-operation-results .growth-operation-section-head h3{
  margin:0;
  background:transparent !important;
  color:#111827 !important;
  font-size:28px;
  font-weight:800;
  line-height:1.2;
  letter-spacing:0;
}

.growth-operation-results .growth-operation-section-head p{
  margin-top:6px;
  background:transparent;
}

.growth-operation-result-tabs{
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding:2px 2px 10px;
  scrollbar-width:thin;
}

.growth-operation-result-tabs .growth-operation-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  height:44px;
  padding:0 20px;
  border-radius:999px;
  border:1px solid #e2e8f0;
  background:rgba(255,255,255,.86);
  color:#475569 !important;
  font-size:15px;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(15,23,42,.04);
}

.growth-operation-result-tabs .growth-operation-tab.active,
.growth-operation-result-tabs .growth-operation-tab.active:hover{
  background:linear-gradient(135deg,#007aff,#1473e6) !important;
  border-color:#007aff !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff;
  box-shadow:0 12px 24px rgba(0,122,255,.2);
}

.growth-operation-result-tabs .growth-operation-tab:not(.active):hover{
  color:#1473e6 !important;
  border-color:rgba(20,115,230,.24);
  background:#fff;
}

.growth-operation-output{
  gap:16px;
  min-height:180px;
  margin-top:10px;
}

.growth-operation-result-card{
  padding:20px;
  border-radius:22px;
  margin:0;
  box-shadow:0 12px 32px rgba(15,23,42,.055);
}

.growth-operation-result-card h4{
  margin:0 74px 10px 0;
  font-size:19px;
  font-weight:850;
  line-height:1.35;
  color:#111827;
}

.growth-operation-result-card p{
  font-size:15px;
  line-height:1.7;
  color:#334155;
  font-weight:650;
}

.growth-operation-copy-mini{
  top:14px;
  right:14px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(148,163,184,.25);
  background:#f8fafc;
  color:#475569;
  font-size:13px;
  font-weight:800;
  line-height:1;
  box-shadow:none;
}

.growth-operation-copy-mini:hover{
  border-color:rgba(0,122,255,.28);
  background:#eaf3ff;
  color:#007aff;
}

@media (max-width:900px){
  .growth-operation-store-hero,
  .growth-operation-quick-grid,
  .growth-operation-layout,
  .growth-operation-mini-grid{
    grid-template-columns:1fr;
  }

  .growth-operation-store-hero{
    padding:24px;
  }

  .growth-operation-section-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .growth-operation-choice-strip{
    grid-auto-columns:minmax(180px,72vw);
  }

  .growth-operation-evidence-grid,
  .growth-operation-stat-strip,
  .growth-operation-date-row{
    grid-template-columns:1fr;
  }

  .growth-operation-stat-strip{
    overflow:visible;
  }

  .growth-operation-result-tabs .growth-operation-tab{
    min-height:42px;
    height:42px;
    padding:0 18px;
    font-size:15px;
  }

  .growth-operation-results .growth-operation-section-head h3{
    font-size:24px;
  }

  .growth-operation-result-card{
    padding:18px;
    border-radius:20px;
  }
}

/* Growth operation layout hotfix: stable vertical sections, no horizontal overflow. */
.growth-operation-page-shell{
  width:100% !important;
  max-width:1200px !important;
  margin:0 auto !important;
  padding:32px 24px 80px !important;
  box-sizing:border-box !important;
  overflow-x:hidden !important;
  background:#f5f5f7 !important;
}

.growth-operation-page-shell *{
  box-sizing:border-box;
}

.growth-operation-store-hero{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(240px,300px) !important;
  gap:20px !important;
  width:100% !important;
  margin:0 0 22px !important;
  padding:30px 0 12px !important;
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
}

.growth-operation-store-copy,
.growth-operation-store-copy h2,
.growth-operation-store-copy p{
  min-width:0 !important;
  word-break:normal !important;
  writing-mode:horizontal-tb !important;
}

.growth-operation-store-copy h2{
  font-size:clamp(34px,4vw,42px) !important;
  line-height:1.12 !important;
  color:#1d1d1f !important;
}

.growth-operation-store-copy p{
  max-width:780px !important;
  font-size:18px !important;
  line-height:1.55 !important;
  color:#6e6e73 !important;
}

.growth-operation-hero-stat{
  min-width:0 !important;
  min-height:auto !important;
  padding:20px !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.9) !important;
  border:1px solid rgba(148,163,184,.2) !important;
  box-shadow:0 18px 45px rgba(15,23,42,.08) !important;
}

.growth-operation-section-card,
.growth-operation-search-card,
.growth-operation-rule-card{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 0 18px !important;
  padding:22px !important;
  border-radius:26px !important;
  background:rgba(255,255,255,.9) !important;
  border:1px solid rgba(148,163,184,.2) !important;
  box-shadow:0 16px 40px rgba(15,23,42,.065) !important;
  overflow:hidden !important;
}

.growth-operation-quick-grid,
.growth-operation-optional-layout{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
}

.growth-operation-quick-card{
  width:100% !important;
  min-width:0 !important;
  margin:0 0 18px !important;
}

.growth-operation-card-topline h3,
.growth-operation-section-head h3,
.growth-operation-rule-card h3{
  margin:0 !important;
  font-size:24px !important;
  line-height:1.25 !important;
  color:#1d1d1f !important;
  font-weight:850 !important;
  writing-mode:horizontal-tb !important;
}

.growth-operation-card-topline p,
.growth-operation-section-head p,
.growth-operation-rule-card p{
  margin:8px 0 0 !important;
  font-size:13px !important;
  line-height:1.5 !important;
  color:#6e6e73 !important;
}

.growth-operation-search-card select{
  width:100% !important;
  max-width:100% !important;
  margin-top:16px !important;
  padding:15px 16px !important;
  border-radius:20px !important;
  background:#f5f7fb !important;
  border:1px solid rgba(148,163,184,.2) !important;
  color:#1d1d1f !important;
  font-size:16px !important;
}

.growth-operation-student-summary{
  width:100% !important;
  overflow:hidden !important;
}

.growth-operation-student-summary .growth-operation-stat-strip{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr)) !important;
  overflow:visible !important;
  margin:14px 0 0 !important;
}

.growth-operation-segment{
  display:inline-flex !important;
  max-width:100% !important;
  margin-top:16px !important;
  padding:5px !important;
  overflow-x:auto !important;
  background:#e9edf3 !important;
}

.growth-operation-segment-btn{
  flex:0 0 auto !important;
  min-height:42px !important;
  padding:0 18px !important;
  font-size:14px !important;
}

.growth-operation-date-row{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr)) !important;
  gap:12px !important;
  margin:14px 0 0 !important;
}

.growth-operation-choice-strip{
  display:flex !important;
  gap:14px !important;
  width:100% !important;
  max-width:100% !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  padding:16px 2px 8px !important;
  -webkit-overflow-scrolling:touch;
}

.growth-operation-choice-card{
  flex:0 0 190px !important;
  width:190px !important;
  min-width:190px !important;
  min-height:118px !important;
  height:auto !important;
  padding:18px !important;
  border-radius:22px !important;
}

.growth-operation-choice-card strong{
  font-size:18px !important;
}

.growth-operation-choice-card span{
  font-size:12.5px !important;
  line-height:1.45 !important;
}

.growth-operation-mini-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr)) !important;
  gap:12px !important;
  width:100% !important;
}

.growth-operation-mini-card{
  min-width:0 !important;
  padding:16px !important;
  border-radius:20px !important;
}

.growth-operation-mini-card.wide{
  grid-column:1/-1 !important;
}

.growth-operation-tag-row{
  max-width:100% !important;
  overflow-x:auto !important;
  padding-bottom:6px !important;
}

.growth-operation-tag-row.wrap{
  flex-wrap:wrap !important;
  overflow-x:visible !important;
}

.growth-operation-evidence-grid{
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr)) !important;
}

.growth-operation-rule-card textarea{
  min-height:160px !important;
  max-width:100% !important;
}

.growth-operation-stat-strip{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr)) !important;
  gap:12px !important;
  width:100% !important;
  max-width:100% !important;
  overflow:visible !important;
  margin-bottom:18px !important;
}

.growth-operation-preview-item{
  min-width:0 !important;
  min-height:86px !important;
  padding:16px !important;
  border-radius:20px !important;
}

.growth-operation-preview-item strong{
  font-size:24px !important;
  word-break:break-word !important;
}

.growth-operation-primary.wide-btn{
  width:100% !important;
  height:54px !important;
  margin:4px 0 22px !important;
}

.growth-operation-result-tabs{
  max-width:100% !important;
  overflow-x:auto !important;
  gap:10px !important;
}

.growth-operation-result-tabs .growth-operation-tab{
  flex:0 0 auto !important;
  height:44px !important;
  min-height:44px !important;
  padding:0 18px !important;
  font-size:15px !important;
  color:#475569 !important;
  background:rgba(255,255,255,.86) !important;
  border:1px solid #e2e8f0 !important;
}

.growth-operation-result-tabs .growth-operation-tab.active,
.growth-operation-result-tabs .growth-operation-tab.active:hover{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  background:linear-gradient(135deg,#007aff,#1473e6) !important;
  border-color:#007aff !important;
}

.growth-operation-output{
  gap:14px !important;
  min-height:160px !important;
}

.growth-operation-result-card{
  padding:18px 20px !important;
  border-radius:20px !important;
  margin:0 !important;
}

.growth-operation-result-card h4{
  font-size:19px !important;
  margin:0 70px 8px 0 !important;
}

.growth-operation-result-card p{
  font-size:14.5px !important;
  line-height:1.7 !important;
}

.growth-operation-copy-mini{
  top:14px !important;
  right:14px !important;
  padding:6px 10px !important;
  font-size:13px !important;
}

@media (max-width:900px){
  .growth-operation-page-shell{
    padding:24px 14px 80px !important;
  }

  .growth-operation-store-hero{
    grid-template-columns:1fr !important;
  }

  .growth-operation-section-card,
  .growth-operation-search-card,
  .growth-operation-rule-card{
    padding:18px !important;
    border-radius:22px !important;
  }
}

/* Growth operation visual refinement: lighter Apple-style finish. */
.growth-operation-page-shell{
  max-width:1180px !important;
  padding:36px 24px 80px !important;
  background:linear-gradient(180deg,#f5f5f7 0%,#fff 52%,#f5f5f7 100%) !important;
  color:#1d1d1f !important;
}
.growth-operation-store-hero{
  grid-template-columns:minmax(0,1fr) minmax(280px,320px) !important;
  gap:22px !important;
  padding:22px 0 8px !important;
  margin-bottom:24px !important;
}
.growth-operation-store-copy h2{
  font-size:clamp(30px,4vw,40px) !important;
  line-height:1.08 !important;
  letter-spacing:-0.035em !important;
  font-weight:800 !important;
  color:#1d1d1f !important;
}
.growth-operation-store-copy p{
  max-width:760px !important;
  font-size:18px !important;
  line-height:1.45 !important;
  color:#6e6e73 !important;
  font-weight:600 !important;
}
.growth-operation-hero-stat{
  width:100% !important;
  max-width:320px !important;
  padding:22px !important;
  border-radius:24px !important;
  background:#fff !important;
  border:1px solid rgba(0,0,0,.06) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.05) !important;
}
.growth-operation-hero-stat span{
  font-size:13px !important;
  font-weight:600 !important;
  color:#6e6e73 !important;
}
.growth-operation-hero-stat strong{
  font-size:30px !important;
  line-height:1.1 !important;
  font-weight:760 !important;
  letter-spacing:-.02em !important;
  color:#1d1d1f !important;
}
.growth-operation-hero-stat small{
  font-size:13px !important;
  line-height:1.45 !important;
  font-weight:600 !important;
  color:#6e6e73 !important;
}
.growth-operation-section-card,
.growth-operation-search-card,
.growth-operation-rule-card{
  padding:24px !important;
  border-radius:24px !important;
  margin-bottom:24px !important;
  background:#fff !important;
  border:1px solid rgba(0,0,0,.06) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.05) !important;
}
.growth-operation-card-topline h3,
.growth-operation-section-head h3,
.growth-operation-rule-card h3{
  font-size:24px !important;
  line-height:1.18 !important;
  font-weight:760 !important;
  letter-spacing:-.015em !important;
  color:#1d1d1f !important;
}
.growth-operation-card-topline p,
.growth-operation-section-head p,
.growth-operation-rule-card p{
  font-size:14px !important;
  line-height:1.45 !important;
  color:#6e6e73 !important;
  font-weight:500 !important;
}
.growth-operation-search-card select{
  height:56px !important;
  padding:0 16px !important;
  border-radius:18px !important;
  background:#f5f5f7 !important;
  border:1px solid #d2d2d7 !important;
  font-size:16px !important;
  font-weight:600 !important;
  color:#1d1d1f !important;
}
.growth-operation-student-summary .growth-operation-stat-strip{
  gap:12px !important;
}
.growth-operation-preview-item{
  min-height:104px !important;
  padding:18px 20px !important;
  border-radius:20px !important;
  background:#fff !important;
  border:1px solid rgba(0,0,0,.06) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.045) !important;
}
.growth-operation-preview-item span{
  font-size:13px !important;
  line-height:1.3 !important;
  font-weight:600 !important;
  color:#6e6e73 !important;
}
.growth-operation-preview-item strong{
  font-size:24px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  letter-spacing:-.02em !important;
  color:#1d1d1f !important;
  overflow-wrap:anywhere !important;
}
.growth-operation-student-summary .growth-operation-preview-item:nth-child(3) strong,
.growth-operation-student-summary .growth-operation-preview-item:nth-child(4) strong,
#growthOperationPreview .growth-operation-preview-item:nth-child(6) strong{
  font-size:18px !important;
  line-height:1.35 !important;
  font-weight:650 !important;
  letter-spacing:0 !important;
}
.growth-operation-segment{
  padding:4px !important;
  border-radius:999px !important;
  background:#e8e8ed !important;
}
.growth-operation-segment-btn{
  height:42px !important;
  min-height:42px !important;
  padding:0 16px !important;
  font-size:14px !important;
  font-weight:650 !important;
  color:#1d1d1f !important;
}
.growth-operation-segment-btn.active{
  background:#fff !important;
  color:#0071e3 !important;
  box-shadow:0 4px 12px rgba(0,0,0,.08) !important;
}
.growth-operation-choice-strip{
  gap:14px !important;
  padding:14px 2px 6px !important;
}
.growth-operation-choice-card{
  flex-basis:180px !important;
  width:180px !important;
  min-width:180px !important;
  min-height:112px !important;
  padding:16px !important;
  border-radius:20px !important;
  background:#fff !important;
  border:1px solid rgba(0,0,0,.06) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.045) !important;
}
.growth-operation-choice-card svg{
  width:22px !important;
  height:22px !important;
  color:#0071e3 !important;
}
.growth-operation-choice-card strong{
  font-size:17px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  color:#1d1d1f !important;
}
.growth-operation-choice-card span{
  font-size:13px !important;
  line-height:1.4 !important;
  font-weight:500 !important;
  color:#6e6e73 !important;
}
.growth-operation-choice-card.active{
  background:rgba(0,113,227,.08) !important;
  border-color:rgba(0,113,227,.32) !important;
  box-shadow:0 8px 24px rgba(0,113,227,.08) !important;
}
.growth-operation-mini-card{
  min-height:auto !important;
  padding:18px 20px !important;
  border-radius:20px !important;
  background:#fff !important;
  border:1px solid rgba(0,0,0,.06) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.045) !important;
}
.growth-operation-mini-card span{
  font-size:13px !important;
  line-height:1.3 !important;
  font-weight:600 !important;
  color:#6e6e73 !important;
}
.growth-operation-mini-card input{
  height:48px !important;
  border-radius:16px !important;
  background:#f5f5f7 !important;
  border:1px solid #d2d2d7 !important;
  font-size:15px !important;
  font-weight:500 !important;
}
.growth-operation-tag-card{
  padding:8px 12px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  color:#1d1d1f !important;
  font-size:13px !important;
  font-weight:600 !important;
}
.growth-operation-tag-card.active{
  background:rgba(0,113,227,.08) !important;
  border-color:rgba(0,113,227,.3) !important;
  color:#0071e3 !important;
}
.growth-operation-evidence-card{
  min-height:46px !important;
  border-radius:16px !important;
  background:#fff !important;
  border:1px solid rgba(0,0,0,.06) !important;
  font-size:13px !important;
  font-weight:600 !important;
}
.growth-operation-rule-card textarea{
  min-height:150px !important;
  padding:14px 16px !important;
  border-radius:18px !important;
  background:#f5f5f7 !important;
  border:1px solid #d2d2d7 !important;
  font-size:15px !important;
  line-height:1.65 !important;
  font-weight:500 !important;
}
.growth-operation-primary.wide-btn{
  height:52px !important;
  border-radius:999px !important;
  background:#0071e3 !important;
  box-shadow:0 8px 20px rgba(0,113,227,.18) !important;
  font-size:16px !important;
  font-weight:700 !important;
}
.growth-operation-primary.wide-btn:hover{
  transform:translateY(-1px) !important;
}
.growth-operation-result-tabs .growth-operation-tab{
  height:42px !important;
  min-height:42px !important;
  padding:0 18px !important;
  border-radius:999px !important;
  font-size:15px !important;
  font-weight:650 !important;
}
.growth-operation-result-card{
  padding:18px 20px !important;
  border-radius:20px !important;
  border:1px solid rgba(0,0,0,.06) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.045) !important;
}
.growth-operation-result-card h4{
  font-size:18px !important;
  line-height:1.3 !important;
  font-weight:700 !important;
  color:#1d1d1f !important;
}
.growth-operation-result-card p{
  font-size:15px !important;
  line-height:1.7 !important;
  font-weight:500 !important;
  color:#1d1d1f !important;
}
.growth-operation-copy-mini{
  padding:6px 10px !important;
  border-radius:999px !important;
  background:#f5f5f7 !important;
  border:1px solid rgba(0,0,0,.06) !important;
  color:#1d1d1f !important;
  font-size:13px !important;
  font-weight:650 !important;
}
@media (max-width:900px){
  .growth-operation-page-shell{
    padding:28px 14px 80px !important;
  }
  .growth-operation-store-copy h2{
    font-size:30px !important;
  }
  .growth-operation-store-copy p{
    font-size:16px !important;
  }
  .growth-operation-hero-stat{
    max-width:none !important;
  }
  .growth-operation-section-card,
  .growth-operation-search-card,
  .growth-operation-rule-card{
    padding:20px !important;
    border-radius:22px !important;
  }
}

/* Growth operation premium layer: subtle depth, scroll hints, and refined states. */
.growth-operation-page-shell{
  position:relative !important;
  isolation:isolate !important;
  background:
    radial-gradient(circle at 12% 8%, rgba(0,113,227,.10), transparent 28%),
    radial-gradient(circle at 88% 12%, rgba(120,80,255,.08), transparent 26%),
    linear-gradient(180deg,#f8fafc 0%,#f5f5f7 42%,#fff 100%) !important;
}
.growth-operation-store-hero,
.growth-operation-section-card,
.growth-operation-search-card,
.growth-operation-rule-card,
.growth-operation-preview-item,
.growth-operation-mini-card,
.growth-operation-result-card,
.growth-operation-choice-card{
  background:rgba(255,255,255,.82) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:0 18px 45px rgba(15,23,42,.07) !important;
  -webkit-backdrop-filter:blur(18px) !important;
  backdrop-filter:blur(18px) !important;
}
.growth-operation-store-hero{
  border-radius:30px !important;
  padding:26px !important;
}
.growth-operation-hero-stat{
  background:rgba(255,255,255,.76) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:0 18px 45px rgba(15,23,42,.07) !important;
  -webkit-backdrop-filter:blur(18px) !important;
  backdrop-filter:blur(18px) !important;
}
.growth-operation-hero-stat strong,
.growth-operation-preview-item strong{
  letter-spacing:-.035em !important;
}
.growth-operation-section-card,
.growth-operation-search-card,
.growth-operation-rule-card,
.growth-operation-preview-item,
.growth-operation-mini-card,
.growth-operation-result-card,
.growth-operation-choice-card,
.growth-operation-evidence-card{
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease !important;
}
.growth-operation-section-card:hover,
.growth-operation-search-card:hover,
.growth-operation-rule-card:hover,
.growth-operation-preview-item:hover,
.growth-operation-mini-card:hover,
.growth-operation-result-card:hover,
.growth-operation-choice-card:hover,
.growth-operation-evidence-card:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 24px 60px rgba(15,23,42,.10) !important;
}
.growth-operation-choice-card.active,
.growth-operation-evidence-card.active,
.growth-operation-tag-card.active{
  background:linear-gradient(180deg,rgba(0,113,227,.10),rgba(255,255,255,.92)) !important;
  border-color:rgba(0,113,227,.38) !important;
  box-shadow:0 18px 48px rgba(0,113,227,.13) !important;
}
.growth-operation-choice-card.active::after,
.growth-operation-evidence-card.active::after{
  box-shadow:0 0 0 6px rgba(0,113,227,.12) !important;
}
.growth-operation-tag-card{
  background:rgba(255,255,255,.68) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
}
.growth-operation-scroll-wrap{
  position:relative !important;
  max-width:100% !important;
  overflow:hidden !important;
}
.growth-operation-scroll-wrap::before,
.growth-operation-scroll-wrap::after{
  content:"" !important;
  position:absolute !important;
  top:0 !important;
  width:48px !important;
  height:100% !important;
  pointer-events:none !important;
  z-index:2 !important;
  opacity:.9 !important;
  transition:opacity .2s ease !important;
}
.growth-operation-scroll-wrap::before{
  left:0 !important;
  background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,0)) !important;
}
.growth-operation-scroll-wrap::after{
  right:0 !important;
  background:linear-gradient(270deg,rgba(255,255,255,.96),rgba(255,255,255,0)) !important;
}
.growth-operation-scroll-wrap.at-start::before,
.growth-operation-scroll-wrap.at-end::after,
.growth-operation-scroll-wrap:not(.can-scroll)::before,
.growth-operation-scroll-wrap:not(.can-scroll)::after{
  opacity:0 !important;
}
.growth-operation-choice-strip,
.growth-operation-result-tabs,
.growth-operation-tag-row.horizontal-scroll{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scrollbar-width:none !important;
  -webkit-overflow-scrolling:touch !important;
  scroll-behavior:smooth !important;
}
.growth-operation-choice-strip::-webkit-scrollbar,
.growth-operation-result-tabs::-webkit-scrollbar,
.growth-operation-tag-row.horizontal-scroll::-webkit-scrollbar{
  display:none !important;
}
.growth-operation-tag-row.horizontal-scroll{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:10px !important;
  padding:10px 2px 4px !important;
}
.growth-operation-tag-row.horizontal-scroll .growth-operation-tag-card{
  flex:0 0 auto !important;
}
.growth-operation-scroll-arrow{
  position:absolute !important;
  top:50% !important;
  z-index:3 !important;
  width:34px !important;
  height:34px !important;
  transform:translateY(-50%) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.82) !important;
  color:#1d1d1f !important;
  box-shadow:0 12px 28px rgba(15,23,42,.12) !important;
  -webkit-backdrop-filter:blur(14px) !important;
  backdrop-filter:blur(14px) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:24px !important;
  line-height:1 !important;
  font-weight:700 !important;
  cursor:pointer !important;
  transition:opacity .2s ease, transform .2s ease, color .2s ease, background .2s ease !important;
}
.growth-operation-scroll-arrow.left{
  left:6px !important;
}
.growth-operation-scroll-arrow.right{
  right:6px !important;
}
.growth-operation-scroll-arrow:hover{
  color:#0071e3 !important;
  background:rgba(255,255,255,.94) !important;
  transform:translateY(-50%) scale(1.04) !important;
}
.growth-operation-scroll-wrap.at-start .growth-operation-scroll-arrow.left,
.growth-operation-scroll-wrap.at-end .growth-operation-scroll-arrow.right,
.growth-operation-scroll-wrap:not(.can-scroll) .growth-operation-scroll-arrow{
  opacity:0 !important;
  pointer-events:none !important;
}
.growth-operation-scroll-wrap.compact .growth-operation-scroll-arrow{
  width:30px !important;
  height:30px !important;
  font-size:21px !important;
}
.growth-operation-result-tabs{
  padding:4px 42px 8px !important;
}
.growth-operation-choice-strip{
  padding:14px 44px 10px !important;
}
.growth-operation-tag-row.horizontal-scroll{
  padding-left:38px !important;
  padding-right:38px !important;
}
.growth-operation-result-tabs .growth-operation-tab.active,
.growth-operation-result-tabs .growth-operation-tab.active:hover{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  background:linear-gradient(135deg,#0071e3,#0a84ff) !important;
  border-color:rgba(0,113,227,.72) !important;
  box-shadow:0 14px 34px rgba(0,113,227,.22) !important;
}
.growth-operation-primary.wide-btn:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 18px 36px rgba(0,113,227,.24) !important;
}
.growth-operation-copy-mini:hover{
  color:#0071e3 !important;
  border-color:rgba(0,113,227,.28) !important;
  background:rgba(0,113,227,.08) !important;
}
.growth-operation-empty{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  padding:18px 20px !important;
  border-radius:20px !important;
  background:rgba(255,255,255,.72) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  color:#6e6e73 !important;
}
.growth-operation-empty::before{
  content:"✦" !important;
  width:34px !important;
  height:34px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:12px !important;
  background:rgba(0,113,227,.08) !important;
  color:#0071e3 !important;
}
@media (max-width:900px){
  .growth-operation-store-hero{
    padding:22px !important;
    border-radius:26px !important;
  }
  .growth-operation-scroll-arrow{
    display:none !important;
  }
  .growth-operation-choice-strip,
  .growth-operation-result-tabs,
  .growth-operation-tag-row.horizontal-scroll{
    padding-left:2px !important;
    padding-right:2px !important;
  }
  .growth-operation-scroll-wrap::before,
  .growth-operation-scroll-wrap::after{
    width:28px !important;
  }
}

/* Growth operation compact type scale: make it feel like a daily Apple-style tool, not a large display page. */
.growth-operation-store-copy h2,
.growth-operation-store-hero h1{
  font-size:clamp(30px,3.2vw,38px) !important;
  line-height:1.08 !important;
  letter-spacing:-0.035em !important;
  font-weight:800 !important;
}
.growth-operation-store-copy p,
.growth-operation-store-hero p{
  max-width:720px !important;
  font-size:16px !important;
  line-height:1.5 !important;
  color:#6e6e73 !important;
}
.growth-operation-store-hero{
  padding:22px 24px !important;
  border-radius:26px !important;
  gap:18px !important;
  margin-bottom:22px !important;
}
.growth-operation-hero-stat{
  padding:20px 22px !important;
  border-radius:24px !important;
}
.growth-operation-hero-stat strong,
.growth-operation-hero-stat .value{
  font-size:30px !important;
  line-height:1.1 !important;
  letter-spacing:-0.03em !important;
}
.growth-operation-section-card,
.growth-operation-search-card,
.growth-operation-rule-card{
  padding:22px 24px !important;
  border-radius:24px !important;
  margin-bottom:22px !important;
}
.growth-operation-card-topline{
  margin-bottom:14px !important;
}
.growth-operation-card-topline h3,
.growth-operation-section-head h3,
.growth-operation-rule-card h3{
  font-size:22px !important;
  line-height:1.25 !important;
  margin-bottom:8px !important;
}
.growth-operation-card-topline p,
.growth-operation-section-head p,
.growth-operation-rule-card p{
  font-size:14px !important;
  line-height:1.45 !important;
}
.growth-operation-search-card select,
.growth-operation-section-card select{
  height:52px !important;
  border-radius:16px !important;
  font-size:15px !important;
}
.growth-operation-preview-item{
  min-height:92px !important;
  padding:16px 18px !important;
  border-radius:18px !important;
}
.growth-operation-preview-item span{
  font-size:12px !important;
  line-height:1.3 !important;
  font-weight:600 !important;
}
.growth-operation-preview-item strong{
  font-size:22px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  letter-spacing:-0.02em !important;
}
.growth-operation-student-summary .growth-operation-preview-item:nth-child(3) strong,
.growth-operation-student-summary .growth-operation-preview-item:nth-child(4) strong,
#growthOperationPreview .growth-operation-preview-item:nth-child(6) strong{
  font-size:16px !important;
  line-height:1.45 !important;
  font-weight:700 !important;
  letter-spacing:-0.01em !important;
}
.growth-operation-mini-card{
  padding:16px 18px !important;
  border-radius:18px !important;
  min-height:92px !important;
}
.growth-operation-mini-card span{
  font-size:12px !important;
}
.growth-operation-mini-card input{
  height:46px !important;
  border-radius:15px !important;
  font-size:14px !important;
}
.growth-operation-segment-btn{
  height:40px !important;
  min-height:40px !important;
  font-size:14px !important;
}
.growth-operation-choice-card{
  width:172px !important;
  min-width:172px !important;
  flex-basis:172px !important;
  min-height:104px !important;
  padding:15px !important;
  border-radius:18px !important;
}
.growth-operation-choice-card strong{
  font-size:16px !important;
}
.growth-operation-choice-card span{
  font-size:12.5px !important;
}
.growth-operation-tag-card,
.growth-operation-evidence-card{
  font-size:12.5px !important;
}
.growth-operation-rule-card textarea{
  min-height:138px !important;
  font-size:14px !important;
  line-height:1.6 !important;
}
.growth-operation-result-tabs .growth-operation-tab{
  height:40px !important;
  min-height:40px !important;
  padding:0 16px !important;
  font-size:14px !important;
}
.growth-operation-result-card{
  padding:16px 18px !important;
  border-radius:18px !important;
}
.growth-operation-result-card h4{
  font-size:17px !important;
  line-height:1.3 !important;
}
.growth-operation-result-card p{
  font-size:14px !important;
  line-height:1.68 !important;
}
.growth-operation-copy-mini{
  font-size:12.5px !important;
  padding:5px 9px !important;
}
@media (max-width:900px){
  .growth-operation-store-copy h2,
  .growth-operation-store-hero h1{
    font-size:clamp(28px,8vw,32px) !important;
  }
  .growth-operation-store-copy p,
  .growth-operation-store-hero p{
    font-size:15px !important;
  }
  .growth-operation-section-card,
  .growth-operation-search-card,
  .growth-operation-rule-card{
    padding:18px !important;
  }
  .growth-operation-card-topline h3,
  .growth-operation-section-head h3,
  .growth-operation-rule-card h3{
    font-size:21px !important;
  }
}

/* =====================
朋友圈成长海报分享型优化
===================== */

.poster-asset-tools{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:14px;
  margin:14px 0 18px;
}

.poster-asset-tool{
  padding:16px;
  border-radius:20px;
  background:rgba(248,250,252,.86);
  border:1px solid rgba(148,163,184,.22);
}

.poster-asset-tool input[type="file"]{
  width:100%;
  margin:10px 0;
  padding:10px;
  border-radius:14px;
  background:#fff;
  border:1px solid rgba(148,163,184,.24);
}

.growth-poster .poster-logo{
  width:160px !important;
  max-width:160px !important;
  height:56px !important;
  object-fit:contain;
}

.growth-poster .poster-footer-logo{
  width:118px !important;
  height:42px !important;
  object-fit:contain;
}

.poster-title-area{
  min-height:148px;
}

.poster-title-copy{
  max-width:500px;
  margin:0 auto;
}

.poster-student-photo-wrap{
  position:absolute;
  right:18px;
  top:0;
  z-index:3;
  width:104px;
  height:104px;
  padding:5px;
  border-radius:32px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.96);
  box-shadow:0 18px 42px rgba(15,23,42,.12);
}

.poster-student-photo-wrap img{
  width:100%;
  height:100%;
  border-radius:27px;
  object-fit:cover;
  display:block;
}

.poster-chart-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.92fr);
  gap:16px;
  margin-top:22px;
}

.growth-poster .poster-chart-grid .poster-card{
  margin-top:0;
}

.growth-poster .poster-chart-card{
  padding:18px !important;
  border-radius:24px !important;
}

.growth-poster .poster-chart-card h3{
  margin-bottom:10px;
  font-size:17px;
  color:#1d4ed8;
}

.poster-chart-canvas{
  position:relative;
  width:100%;
}

.poster-chart-canvas.compact{
  height:280px;
}

.poster-chart-canvas.slim{
  height:200px;
}

.poster-chart-canvas.monthly{
  height:220px;
}

.growth-poster .poster-radar-card,
.growth-poster .poster-trend-card,
.growth-poster .poster-monthly-growth-card{
  height:auto !important;
}

.growth-poster #posterRadarChart,
.growth-poster #posterTrendChart,
.growth-poster #posterMonthlyGrowthChart{
  width:100% !important;
  height:100% !important;
  max-height:none !important;
}

.poster-ability-card div,
#posterAbilityInsights{
  white-space:normal !important;
}

.poster-ability-card .poster-ability-list{
  display:grid;
  gap:10px;
}

.poster-ability-item{
  padding:12px 13px;
  border-radius:18px;
  background:rgba(239,246,255,.76);
  border:1px solid rgba(37,99,235,.10);
  color:#334155;
  font-size:13px;
  line-height:1.55;
  font-weight:700;
}

.poster-ability-item strong{
  display:block;
  color:#1d4ed8;
  font-size:14px;
  margin-bottom:3px;
}

.poster-chart-hint{
  margin:-4px 0 10px;
  color:#64748b !important;
  font-size:12px !important;
  line-height:1.45 !important;
  font-weight:650 !important;
  white-space:normal !important;
}

.growth-poster .poster-monthly-growth-card{
  margin-top:16px;
}

.growth-poster .chart-empty-state{
  min-height:150px;
  font-size:12px;
  border-radius:18px;
}

@media(max-width:760px){
  .poster-title-area{
    min-height:auto;
  }

  .poster-student-photo-wrap{
    position:static;
    margin:12px auto 0;
    width:96px;
    height:96px;
  }

  .poster-chart-grid{
    grid-template-columns:1fr;
  }

  .poster-chart-canvas.compact,
  .poster-chart-canvas.slim,
  .poster-chart-canvas.monthly{
    height:210px;
  }
}

/* =====================
朋友圈成长海报重排：分享图版式
===================== */

.growth-poster.poster-share-poster{
  width:720px;
  min-height:auto;
  padding:30px 32px 28px;
  border-radius:44px;
  background:
    radial-gradient(circle at 12% 8%, rgba(59,130,246,.22), transparent 30%),
    radial-gradient(circle at 92% 6%, rgba(147,197,253,.20), transparent 28%),
    linear-gradient(180deg,#f8fbff 0%,#eef5ff 56%,#ffffff 100%);
  box-shadow:0 26px 74px rgba(15,23,42,.16);
}

.poster-share-top{
  position:relative;
  z-index:3;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  min-height:86px;
}

.growth-poster.poster-share-poster .poster-logo{
  width:160px !important;
  max-width:160px !important;
  height:62px !important;
  object-fit:contain;
  object-position:left center;
}

.growth-poster.poster-share-poster .poster-student-photo-wrap{
  position:relative;
  right:auto;
  top:auto;
  width:112px;
  height:112px;
  padding:5px;
  border-radius:34px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(255,255,255,.96);
  box-shadow:0 18px 42px rgba(15,23,42,.14);
  flex:0 0 auto;
}

.growth-poster.poster-share-poster .poster-student-photo-wrap img{
  border-radius:29px;
}

.poster-share-hero{
  margin-top:8px !important;
  min-height:auto !important;
  text-align:left;
}

.poster-share-hero .poster-badge{
  padding:7px 15px;
  font-size:12px;
  color:#0071e3;
  background:rgba(219,234,254,.86);
}

.poster-share-hero .poster-title-copy{
  max-width:100%;
  margin:0;
}

.poster-share-hero h2{
  margin:13px 0 7px !important;
  font-size:48px !important;
  line-height:1.05;
  letter-spacing:-1.6px;
  color:#111827;
}

.poster-share-hero p{
  font-size:22px !important;
  color:#64748b !important;
}

.growth-poster.poster-share-poster .poster-card{
  margin-top:16px;
  padding:20px;
  border-radius:28px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(255,255,255,.94);
  box-shadow:0 14px 42px rgba(15,23,42,.075);
}

.growth-poster.poster-share-poster .poster-card h3{
  margin:0 0 10px;
  color:#1d4ed8;
  font-size:23px;
  line-height:1.25;
}

.poster-section-kicker{
  display:inline-flex;
  margin-bottom:10px;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(0,113,227,.08);
  color:#0071e3;
  font-size:16px;
  font-weight:900;
}

.poster-highlight-summary{
  color:#1d1d1f !important;
  font-size:21px !important;
  line-height:1.55 !important;
  font-weight:800 !important;
  white-space:normal !important;
}

.poster-keyword-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
  white-space:normal !important;
}

.poster-keyword-row span{
  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(37,99,235,.09);
  color:#1d4ed8;
  font-size:16px;
  font-weight:850;
  line-height:1.2;
}

.poster-highlight-moment{
  margin-top:12px;
  padding:12px 14px;
  border-radius:20px;
  background:rgba(248,250,252,.92);
  color:#475569 !important;
  font-size:18px !important;
  line-height:1.55 !important;
  font-weight:700 !important;
  white-space:normal !important;
}

.growth-poster.poster-share-poster .poster-chart-grid{
  grid-template-columns:280px minmax(0,1fr);
  gap:14px;
  margin-top:16px;
}

.growth-poster.poster-share-poster .poster-chart-card{
  padding:16px !important;
  border-radius:26px !important;
}

.growth-poster.poster-share-poster .poster-chart-card h3{
  font-size:21px;
  margin-bottom:8px;
}

.growth-poster.poster-share-poster .poster-chart-canvas.compact{
  height:270px;
}

.growth-poster.poster-share-poster .poster-chart-canvas.slim{
  height:145px;
}

.growth-poster.poster-share-poster .poster-chart-canvas.monthly{
  height:165px;
}

.growth-poster.poster-share-poster .poster-trend-card{
  padding-bottom:16px !important;
}

.poster-ability-card .poster-ability-list{
  gap:8px;
}

.poster-ability-item{
  padding:10px 12px;
  border-radius:17px;
  font-size:15px;
  line-height:1.45;
}

.poster-ability-item strong{
  font-size:16px;
}

.poster-monthly-growth-card.single-month .poster-chart-canvas,
.poster-monthly-growth-card.empty .poster-chart-canvas,
.poster-monthly-growth-card.single-month .poster-monthly-ability-tags{
  display:none;
}

.poster-monthly-growth-card.single-month .poster-chart-hint,
.poster-monthly-growth-card.empty .poster-chart-hint{
  margin:0;
  padding:16px 18px;
  border-radius:22px;
  background:rgba(239,246,255,.78);
  color:#334155 !important;
  font-size:18px !important;
  line-height:1.55 !important;
}

.poster-monthly-ability-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:-2px 0 8px;
}

.poster-monthly-ability-tags span{
  display:inline-flex;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(100,116,139,.08);
  color:#475569;
  font-size:11px;
  font-weight:800;
}

.poster-talent-card.poster-compact-info-card .ai-talent-section,
.poster-talent-card.poster-compact-info-card .ai-talent-main-card{
  display:block;
  box-shadow:none;
  border:0;
  padding:0;
  background:transparent;
}

.poster-talent-card.poster-compact-info-card .ai-talent-kicker{
  display:none;
}

.poster-talent-card.poster-compact-info-card .ai-talent-main-card h3{
  margin:0 0 8px;
  font-size:24px;
  color:#111827;
}

.poster-talent-card.poster-compact-info-card .ai-talent-main-card p{
  font-size:18px;
  line-height:1.55;
  color:#475569;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card{
  margin-top:12px;
  padding:12px 14px;
  border-radius:20px;
  background:rgba(239,246,255,.72);
  box-shadow:none;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card h4{
  font-size:16px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card p{
  font-size:17px;
  line-height:1.5;
}

.poster-focus-card #posterFutureText{
  display:block;
  margin-top:10px;
  color:#475569 !important;
  font-size:18px !important;
  line-height:1.55 !important;
  font-weight:700 !important;
  white-space:normal !important;
}

.growth-poster.poster-share-poster .poster-award-card{
  margin-top:16px;
}

.growth-poster.poster-share-poster .poster-footer{
  margin-top:18px;
  padding:18px;
  border-radius:26px;
}

.growth-poster.poster-share-poster .poster-footer-logo{
  width:118px !important;
  height:42px !important;
}

.growth-poster.poster-share-poster .poster-footer-title{
  font-size:19px;
}

.growth-poster.poster-share-poster .poster-qrcode{
  width:92px;
  height:92px;
  border-radius:18px;
}

@media(max-width:760px){
  .growth-poster.poster-share-poster{
    width:100%;
    padding:24px;
  }

  .growth-poster.poster-share-poster .poster-share-top{
    min-height:auto;
  }

  .poster-share-hero h2{
    font-size:36px !important;
  }

  .poster-share-hero p{
    font-size:18px !important;
  }

  .growth-poster.poster-share-poster .poster-chart-grid{
    grid-template-columns:1fr;
  }

  .growth-poster.poster-share-poster .poster-chart-canvas.compact,
  .growth-poster.poster-share-poster .poster-chart-canvas.slim,
  .growth-poster.poster-share-poster .poster-chart-canvas.monthly{
    height:210px;
  }
}

/* =====================
朋友圈海报再压缩：少图表、短内容
===================== */

.growth-poster.poster-share-poster{
  padding:28px 32px 26px;
}

.poster-growth-dashboard{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:270px minmax(0,1fr);
  gap:14px;
  margin-top:16px;
}

.poster-growth-dashboard .poster-card{
  margin-top:0 !important;
}

.poster-growth-side{
  display:grid;
  gap:12px;
  min-width:0;
}

.growth-poster.poster-share-poster .poster-growth-dashboard .poster-chart-card{
  padding:14px !important;
  border-radius:24px !important;
}

.growth-poster.poster-share-poster .poster-growth-dashboard .poster-chart-card h3{
  font-size:19px;
  margin-bottom:8px;
}

.growth-poster.poster-share-poster .poster-growth-dashboard .poster-radar-card{
  align-self:stretch;
}

.growth-poster.poster-share-poster .poster-growth-dashboard .poster-chart-canvas.compact{
  height:238px;
}

.growth-poster.poster-share-poster .poster-growth-dashboard .poster-chart-canvas.mini{
  height:118px;
}

.growth-poster.poster-share-poster .poster-growth-dashboard .poster-chart-canvas.mini.monthly{
  height:126px;
}

.poster-trend-summary{
  color:#475569 !important;
  font-size:15px !important;
  line-height:1.45 !important;
  font-weight:700 !important;
  margin:0 0 8px;
  white-space:normal !important;
}

.poster-growth-side .poster-ability-item{
  padding:8px 10px;
  border-radius:15px;
  font-size:13px;
  line-height:1.38;
}

.poster-growth-side .poster-ability-item strong{
  font-size:14px;
  margin-bottom:2px;
}

.poster-growth-side .poster-ability-card .poster-ability-list{
  gap:7px;
}

.poster-growth-side .poster-monthly-growth-card.single-month,
.poster-growth-side .poster-monthly-growth-card.empty{
  padding:15px 16px !important;
}

.poster-growth-side .poster-monthly-growth-card.single-month .poster-chart-hint,
.poster-growth-side .poster-monthly-growth-card.empty .poster-chart-hint{
  padding:0;
  background:transparent;
  border-radius:0;
  font-size:15px !important;
  line-height:1.45 !important;
}

.poster-growth-side .poster-monthly-growth-card.single-month .poster-monthly-ability-tags{
  display:flex;
  margin-top:10px;
}

.poster-growth-side .poster-monthly-growth-card.single-month .poster-monthly-ability-tags span{
  font-size:12px;
  padding:5px 9px;
  color:#0071e3;
  background:rgba(0,113,227,.08);
}

.poster-growth-side .poster-monthly-growth-card.has-trend .poster-chart-hint{
  font-size:13px !important;
  margin-bottom:7px;
}

.poster-growth-side .poster-monthly-growth-card.has-trend .poster-monthly-ability-tags span{
  font-size:10px;
  padding:3px 7px;
}

.growth-poster.poster-share-poster .poster-talent-card{
  padding:17px 18px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-main-card h3{
  font-size:22px;
  margin-bottom:6px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-main-card p{
  font-size:17px;
  line-height:1.5;
}

.poster-talent-card.poster-compact-info-card .ai-talent-keywords span{
  font-size:14px;
  padding:6px 10px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card{
  padding:10px 12px;
  margin-top:10px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card p{
  font-size:16px;
}

.growth-poster.poster-share-poster .poster-focus-card{
  padding:17px 18px;
}

.poster-focus-card #posterFutureText{
  font-size:16px !important;
  line-height:1.5 !important;
}

.poster-highlight-summary{
  font-size:20px !important;
}

.poster-highlight-moment{
  font-size:16px !important;
  padding:10px 12px;
}

@media(max-width:760px){
  .poster-growth-dashboard{
    grid-template-columns:1fr;
  }

  .growth-poster.poster-share-poster .poster-growth-dashboard .poster-chart-canvas.compact,
  .growth-poster.poster-share-poster .poster-growth-dashboard .poster-chart-canvas.mini,
  .growth-poster.poster-share-poster .poster-growth-dashboard .poster-chart-canvas.mini.monthly{
    height:190px;
  }
}

/* =====================
朋友圈成长海报关键修复：居中标题、紧凑能力区、可靠导出反馈
===================== */

.growth-poster.poster-share-poster{
  width:720px;
  padding:26px 30px 24px;
  overflow:hidden;
}

.growth-poster.poster-share-poster .poster-share-top{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:162px;
  margin-bottom:4px;
}

.growth-poster.poster-share-poster .poster-logo{
  position:absolute;
  left:0;
  top:6px;
  width:154px !important;
  max-width:154px !important;
  height:62px !important;
  object-fit:contain;
  object-position:left center;
  z-index:2;
}

.growth-poster.poster-share-poster .poster-student-photo-wrap{
  position:absolute;
  right:0;
  top:0;
  width:142px;
  height:142px;
  padding:6px;
  border-radius:34px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.96);
  box-shadow:0 18px 42px rgba(15,23,42,.16);
  z-index:2;
}

.growth-poster.poster-share-poster .poster-student-photo-wrap img{
  width:100%;
  height:100%;
  border-radius:28px;
  object-fit:cover;
}

.growth-poster.poster-share-poster .poster-share-hero{
  width:100%;
  max-width:100%;
  margin:0 !important;
  padding:10px 158px 0;
  text-align:center;
  min-height:auto !important;
  box-sizing:border-box;
}

.growth-poster.poster-share-poster .poster-share-hero .poster-badge{
  display:inline-flex;
  justify-content:center;
  margin:0 auto;
}

.growth-poster.poster-share-poster .poster-share-hero .poster-title-copy{
  margin:0 auto;
  max-width:390px;
}

.growth-poster.poster-share-poster .poster-share-hero h2{
  font-size:42px !important;
  line-height:1.06;
  letter-spacing:-1.1px;
  text-align:center;
}

.growth-poster.poster-share-poster .poster-share-hero p{
  font-size:20px !important;
  line-height:1.35;
  text-align:center;
}

.growth-poster.poster-share-poster .poster-highlight-card{
  margin-top:10px;
}

.poster-growth-dashboard{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:14px;
}

.poster-ability-row{
  display:grid;
  grid-template-columns:.88fr 1.12fr;
  gap:14px;
  align-items:stretch;
}

.poster-trend-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  align-items:stretch;
}

.growth-poster.poster-share-poster .poster-ability-row .poster-card,
.growth-poster.poster-share-poster .poster-trend-row .poster-card{
  margin-top:0 !important;
}

.growth-poster.poster-share-poster .poster-growth-dashboard .poster-chart-card{
  padding:16px !important;
  border-radius:25px !important;
}

.growth-poster.poster-share-poster .poster-growth-dashboard .poster-chart-card h3{
  margin:0 0 8px;
  font-size:18px;
  line-height:1.24;
}

.growth-poster.poster-share-poster .poster-radar-card{
  display:flex;
  flex-direction:column;
}

.growth-poster.poster-share-poster .poster-radar-card .poster-chart-canvas.compact{
  height:248px !important;
  max-height:248px !important;
  flex:0 0 auto;
}

.growth-poster.poster-share-poster .poster-chart-canvas.mini{
  height:112px !important;
  max-height:112px !important;
}

.growth-poster.poster-share-poster .poster-chart-canvas.mini.monthly{
  height:116px !important;
  max-height:116px !important;
}

.growth-poster.poster-share-poster .poster-trend-card,
.growth-poster.poster-share-poster .poster-monthly-growth-card{
  min-height:auto;
}

.poster-trend-summary{
  min-height:0;
  font-size:14px !important;
  line-height:1.42 !important;
  font-weight:700 !important;
  margin:0 0 7px;
}

.poster-growth-dashboard .poster-ability-card .poster-ability-list{
  gap:7px;
}

.poster-growth-dashboard .poster-ability-item{
  padding:8px 10px;
  border-radius:15px;
  font-size:13px;
  line-height:1.38;
}

.poster-growth-dashboard .poster-ability-item strong{
  font-size:14px;
}

.poster-monthly-growth-card.single-month .poster-chart-hint,
.poster-monthly-growth-card.empty .poster-chart-hint{
  padding:0 !important;
  background:transparent !important;
  font-size:14px !important;
  line-height:1.45 !important;
}

.poster-monthly-growth-card.single-month .poster-monthly-ability-tags{
  display:flex !important;
  margin-top:8px;
}

.poster-monthly-growth-card.single-month .poster-monthly-ability-tags span{
  font-size:12px;
  padding:5px 8px;
  color:#0071e3;
  background:rgba(0,113,227,.08);
}

.poster-monthly-growth-card.has-trend .poster-chart-hint{
  font-size:12px !important;
  line-height:1.35 !important;
  margin-bottom:6px;
}

.growth-poster.poster-share-poster .poster-talent-card,
.growth-poster.poster-share-poster .poster-focus-card{
  padding:15px 16px !important;
  border-radius:24px !important;
}

.poster-talent-card.poster-compact-info-card .ai-talent-main-card h3{
  font-size:20px;
  margin-bottom:5px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-main-card p{
  font-size:15px;
  line-height:1.48;
}

.poster-talent-card.poster-compact-info-card .ai-talent-keywords span{
  font-size:12px;
  padding:5px 8px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card{
  padding:9px 10px;
  margin-top:8px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card p,
.poster-focus-card #posterFutureText{
  font-size:14px !important;
  line-height:1.45 !important;
}

.poster-download-toast{
  position:fixed;
  left:50%;
  bottom:34px;
  transform:translate(-50%,16px);
  z-index:9999;
  padding:10px 14px;
  border-radius:999px;
  color:#fff;
  background:rgba(17,24,39,.92);
  box-shadow:0 14px 36px rgba(15,23,42,.18);
  font-size:14px;
  font-weight:800;
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease,transform .2s ease;
}

.poster-download-toast.show{
  opacity:1;
  transform:translate(-50%,0);
}

#downloadGrowthPosterBtn[disabled]{
  opacity:.72;
  cursor:not-allowed;
}

@media(max-width:760px){
  .growth-poster.poster-share-poster{
    width:100%;
    padding:24px 20px;
  }

  .growth-poster.poster-share-poster .poster-share-top{
    min-height:250px;
    align-items:flex-start;
    padding-top:88px;
  }

  .growth-poster.poster-share-poster .poster-logo{
    width:136px !important;
    height:54px !important;
  }

  .growth-poster.poster-share-poster .poster-student-photo-wrap{
    width:112px;
    height:112px;
    border-radius:30px;
  }

  .growth-poster.poster-share-poster .poster-share-hero{
    padding:0 4px;
  }

  .growth-poster.poster-share-poster .poster-share-hero h2{
    font-size:34px !important;
  }

  .growth-poster.poster-share-poster .poster-share-hero p{
    font-size:17px !important;
  }

  .poster-ability-row,
  .poster-trend-row{
    grid-template-columns:1fr;
  }

  .growth-poster.poster-share-poster .poster-radar-card .poster-chart-canvas.compact,
  .growth-poster.poster-share-poster .poster-chart-canvas.mini,
  .growth-poster.poster-share-poster .poster-chart-canvas.mini.monthly{
    height:180px !important;
    max-height:180px !important;
  }
}

/* =====================
朋友圈海报图表区精修：避免等高空白，突出分享重点
===================== */

.growth-poster.poster-share-poster .poster-growth-dashboard{
  gap:11px;
}

.growth-poster.poster-share-poster .poster-ability-row{
  grid-template-columns:300px minmax(0,1fr);
  gap:12px;
  align-items:start;
}

.growth-poster.poster-share-poster .poster-trend-row{
  grid-template-columns:1.08fr .92fr;
  gap:12px;
  align-items:start;
}

.growth-poster.poster-share-poster .poster-radar-card,
.growth-poster.poster-share-poster .poster-ability-card,
.growth-poster.poster-share-poster .poster-trend-card,
.growth-poster.poster-share-poster .poster-monthly-growth-card{
  align-self:start;
  min-height:0 !important;
  padding:14px !important;
  border-radius:24px !important;
}

.growth-poster.poster-share-poster .poster-growth-dashboard .poster-chart-card h3{
  font-size:20px;
  margin-bottom:6px;
  color:#111827;
}

.growth-poster.poster-share-poster .poster-radar-card .poster-chart-canvas.compact{
  height:216px !important;
  max-height:216px !important;
  margin-top:-2px;
  overflow:hidden;
}

.growth-poster.poster-share-poster .poster-radar-card canvas{
  max-height:216px !important;
}

.growth-poster.poster-share-poster .poster-trend-card .poster-chart-canvas.mini{
  height:72px !important;
  max-height:72px !important;
  margin-top:2px;
  overflow:hidden;
}

.growth-poster.poster-share-poster .poster-monthly-growth-card .poster-chart-canvas.mini.monthly{
  height:86px !important;
  max-height:86px !important;
  margin-top:4px;
  overflow:hidden;
}

.growth-poster.poster-share-poster .poster-trend-summary{
  font-size:13px !important;
  line-height:1.38 !important;
  margin-bottom:4px;
}

.growth-poster.poster-share-poster .poster-ability-card .poster-ability-list{
  gap:8px;
}

.growth-poster.poster-share-poster .poster-ability-item{
  padding:8px 10px;
  border-radius:14px;
  font-size:12px;
  line-height:1.34;
  background:rgba(239,246,255,.72);
}

.growth-poster.poster-share-poster .poster-ability-item strong{
  display:block;
  font-size:14px;
  line-height:1.2;
  margin-bottom:3px;
}

.growth-poster.poster-share-poster .poster-monthly-growth-card.single-month,
.growth-poster.poster-share-poster .poster-monthly-growth-card.empty{
  display:block;
}

.growth-poster.poster-share-poster .poster-monthly-growth-card.single-month .poster-chart-hint,
.growth-poster.poster-share-poster .poster-monthly-growth-card.empty .poster-chart-hint{
  font-size:13px !important;
  line-height:1.42 !important;
  color:#475569 !important;
}

.growth-poster.poster-share-poster .poster-monthly-growth-card.single-month .poster-monthly-ability-tags{
  margin-top:7px;
  gap:5px;
}

.growth-poster.poster-share-poster .poster-monthly-growth-card.single-month .poster-monthly-ability-tags span{
  font-size:11px;
  padding:4px 7px;
}

.growth-poster.poster-share-poster .poster-talent-card{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:12px;
  align-items:start;
  margin-top:12px !important;
  padding:14px !important;
}

.growth-poster.poster-share-poster .poster-talent-card > h3{
  margin:0 !important;
  color:#111827;
  font-size:21px !important;
  line-height:1.18;
}

.growth-poster.poster-share-poster .poster-talent-card #posterTalentText{
  min-width:0;
}

.poster-talent-card.poster-compact-info-card .ai-talent-section{
  display:block !important;
}

.poster-talent-card.poster-compact-info-card .ai-talent-main-card h3{
  font-size:19px;
  line-height:1.25;
  margin:0 0 5px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-main-card p{
  font-size:13px;
  line-height:1.45;
  margin:0;
}

.poster-talent-card.poster-compact-info-card .ai-talent-keywords{
  margin-top:7px;
  gap:5px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-keywords span{
  font-size:11px;
  padding:4px 7px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card{
  margin-top:7px;
  padding:8px 10px;
  border-radius:15px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card h4{
  font-size:12px;
  margin-bottom:3px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card p{
  font-size:12px !important;
  line-height:1.38 !important;
}

@media(max-width:760px){
  .growth-poster.poster-share-poster .poster-ability-row,
  .growth-poster.poster-share-poster .poster-trend-row,
  .growth-poster.poster-share-poster .poster-talent-card{
    grid-template-columns:1fr;
  }

  .growth-poster.poster-share-poster .poster-radar-card .poster-chart-canvas.compact,
  .growth-poster.poster-share-poster .poster-trend-card .poster-chart-canvas.mini,
  .growth-poster.poster-share-poster .poster-monthly-growth-card .poster-chart-canvas.mini.monthly{
    height:170px !important;
    max-height:170px !important;
  }
}

/* =====================
朋友圈海报最终分享版：少图表、少长文、主视觉更像朋友圈
===================== */

.growth-poster.poster-share-poster .poster-growth-dashboard{
  margin-top:12px;
  gap:10px;
}

.growth-poster.poster-share-poster .poster-ability-row{
  grid-template-columns:250px minmax(0,1fr);
  gap:10px;
}

.growth-poster.poster-share-poster .poster-radar-card{
  position:relative;
  min-height:254px !important;
  padding:16px !important;
  background:
    radial-gradient(circle at 50% 58%, rgba(0,113,227,.12), transparent 44%),
    rgba(255,255,255,.88) !important;
}

.growth-poster.poster-share-poster .poster-radar-card::after{
  content:"能力地图";
  position:absolute;
  right:16px;
  top:16px;
  padding:5px 9px;
  border-radius:999px;
  color:#0071e3;
  background:rgba(0,113,227,.08);
  font-size:11px;
  font-weight:900;
}

.growth-poster.poster-share-poster .poster-radar-card h3{
  font-size:20px !important;
  margin-bottom:4px !important;
}

.growth-poster.poster-share-poster .poster-radar-card .poster-chart-canvas.compact{
  height:188px !important;
  max-height:188px !important;
  margin-top:8px;
}

.growth-poster.poster-share-poster .poster-radar-card canvas{
  max-height:188px !important;
}

.growth-poster.poster-share-poster .poster-ability-card{
  padding:16px !important;
  min-height:254px !important;
}

.growth-poster.poster-share-poster .poster-ability-card h3{
  font-size:20px !important;
  margin-bottom:10px !important;
}

.growth-poster.poster-share-poster .poster-ability-card .poster-ability-list{
  display:grid;
  gap:9px;
}

.growth-poster.poster-share-poster .poster-ability-item{
  border:1px solid rgba(0,113,227,.12);
  background:linear-gradient(180deg,rgba(239,246,255,.82),rgba(255,255,255,.86));
  padding:9px 11px;
}

.growth-poster.poster-share-poster .poster-ability-item strong{
  color:#0f5fd7;
}

.growth-poster.poster-share-poster .poster-trend-row{
  grid-template-columns:1fr;
  gap:10px;
}

.growth-poster.poster-share-poster .poster-trend-card,
.growth-poster.poster-share-poster .poster-monthly-growth-card{
  display:grid;
  grid-template-columns:160px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:13px 15px !important;
}

.growth-poster.poster-share-poster .poster-trend-card h3,
.growth-poster.poster-share-poster .poster-monthly-growth-card h3{
  margin:0 !important;
  font-size:18px !important;
}

.growth-poster.poster-share-poster .poster-trend-summary,
.growth-poster.poster-share-poster .poster-monthly-growth-card .poster-chart-hint{
  margin:0 !important;
  font-size:13px !important;
  line-height:1.42 !important;
}

.growth-poster.poster-share-poster .poster-trend-card .poster-chart-canvas.mini{
  grid-column:1 / -1;
  height:52px !important;
  max-height:52px !important;
  margin-top:0;
}

.growth-poster.poster-share-poster .poster-monthly-growth-card.single-month{
  grid-template-columns:160px minmax(0,1fr);
}

.growth-poster.poster-share-poster .poster-monthly-growth-card.single-month .poster-monthly-ability-tags{
  grid-column:2;
  margin:6px 0 0;
}

.growth-poster.poster-share-poster .poster-monthly-growth-card.has-trend .poster-monthly-ability-tags{
  grid-column:2;
  margin:4px 0;
}

.growth-poster.poster-share-poster .poster-monthly-growth-card.has-trend .poster-chart-canvas.mini.monthly{
  grid-column:1 / -1;
  height:70px !important;
  max-height:70px !important;
}

.growth-poster.poster-share-poster .poster-talent-card{
  grid-template-columns:132px minmax(0,1fr);
  gap:10px;
  margin-top:10px !important;
  padding:14px 15px !important;
  border-radius:23px !important;
}

.growth-poster.poster-share-poster .poster-talent-card > h3{
  font-size:19px !important;
}

.poster-talent-card.poster-compact-info-card .ai-talent-main-card h3{
  font-size:18px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-main-card p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card{
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  align-items:start;
  gap:8px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card h4{
  margin:0;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card p{
  margin:0;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

@media(max-width:760px){
  .growth-poster.poster-share-poster .poster-ability-row,
  .growth-poster.poster-share-poster .poster-trend-card,
  .growth-poster.poster-share-poster .poster-monthly-growth-card,
  .growth-poster.poster-share-poster .poster-talent-card{
    grid-template-columns:1fr;
  }

  .growth-poster.poster-share-poster .poster-radar-card,
  .growth-poster.poster-share-poster .poster-ability-card{
    min-height:0 !important;
  }

  .growth-poster.poster-share-poster .poster-radar-card .poster-chart-canvas.compact{
    height:160px !important;
    max-height:160px !important;
  }

  .growth-poster.poster-share-poster .poster-monthly-growth-card.single-month .poster-monthly-ability-tags,
  .growth-poster.poster-share-poster .poster-monthly-growth-card.has-trend .poster-monthly-ability-tags{
    grid-column:auto;
  }
}

/* =====================
朋友圈海报分享卡重构：隐藏报告图表，只保留家长能看懂的成长看点
===================== */

.growth-poster.poster-share-poster .poster-share-summary-board{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:12px;
}

.growth-poster.poster-share-poster .poster-growth-primary{
  position:relative;
  overflow:hidden;
  padding:18px !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 92% 12%, rgba(0,113,227,.10), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(248,251,255,.90)) !important;
}

.growth-poster.poster-share-poster .poster-growth-primary::after{
  content:"";
  position:absolute;
  right:-38px;
  top:-48px;
  width:150px;
  height:150px;
  border-radius:50%;
  background:rgba(0,113,227,.08);
  pointer-events:none;
}

.growth-poster.poster-share-poster .poster-growth-primary .poster-section-kicker{
  margin-bottom:8px;
  font-size:13px;
  padding:5px 10px;
}

.growth-poster.poster-share-poster .poster-growth-primary h3{
  margin:0 0 10px !important;
  font-size:28px !important;
  line-height:1.15;
  color:#111827 !important;
}

.growth-poster.poster-share-poster .poster-growth-primary .poster-ability-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin:0;
}

.growth-poster.poster-share-poster .poster-growth-primary .poster-ability-item{
  min-height:auto;
  padding:12px 12px;
  border:1px solid rgba(0,113,227,.12);
  border-radius:20px;
  background:rgba(255,255,255,.76);
}

.growth-poster.poster-share-poster .poster-growth-primary .poster-ability-item strong{
  display:block;
  margin:0 0 4px;
  color:#0066cc;
  font-size:17px;
  line-height:1.22;
}

.growth-poster.poster-share-poster .poster-growth-primary .poster-ability-item span{
  display:block;
  color:#475569;
  font-size:12px;
  line-height:1.38;
  font-weight:700;
}

.growth-poster.poster-share-poster .poster-growth-primary .poster-trend-summary{
  margin-top:11px !important;
  padding:10px 12px;
  border-radius:18px;
  color:#334155 !important;
  background:rgba(239,246,255,.78);
  font-size:14px !important;
  line-height:1.45 !important;
}

.growth-poster.poster-share-poster .poster-share-summary-board .poster-monthly-growth-card{
  display:block;
  margin-top:0 !important;
  padding:14px 16px !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.88) !important;
}

.growth-poster.poster-share-poster .poster-share-summary-board .poster-monthly-growth-card h3{
  display:inline-flex;
  margin:0 10px 0 0 !important;
  font-size:18px !important;
  color:#111827 !important;
  vertical-align:top;
}

.growth-poster.poster-share-poster .poster-share-summary-board .poster-monthly-growth-card .poster-chart-hint{
  display:inline;
  color:#475569 !important;
  font-size:13px !important;
  line-height:1.45 !important;
  font-weight:750;
}

.growth-poster.poster-share-poster .poster-share-summary-board .poster-monthly-ability-tags{
  display:flex !important;
  gap:6px;
  margin-top:9px !important;
}

.growth-poster.poster-share-poster .poster-share-summary-board .poster-monthly-ability-tags span{
  font-size:12px !important;
  padding:5px 9px !important;
}

.poster-hidden-charts{
  position:absolute;
  left:-9999px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
}

.poster-hidden-charts canvas{
  width:1px !important;
  height:1px !important;
}

.growth-poster.poster-share-poster .poster-talent-card{
  display:block !important;
  margin-top:10px !important;
  padding:16px 18px !important;
  border-radius:26px !important;
}

.growth-poster.poster-share-poster .poster-talent-card > h3{
  margin:0 0 8px !important;
  font-size:22px !important;
  line-height:1.2;
}

.poster-talent-card.poster-compact-info-card .ai-talent-main-card h3{
  font-size:20px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-main-card p{
  -webkit-line-clamp:2;
  font-size:14px;
  line-height:1.45;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card{
  display:block;
  margin-top:8px;
  padding:9px 11px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card h4{
  display:inline;
  margin:0 8px 0 0;
  font-size:13px;
}

.poster-talent-card.poster-compact-info-card .ai-talent-advice-card p{
  display:inline;
  font-size:13px !important;
  line-height:1.45 !important;
}

@media(max-width:760px){
  .growth-poster.poster-share-poster .poster-growth-primary .poster-ability-list{
    grid-template-columns:1fr;
  }
}

/* =====================
朋友圈海报修复版：恢复轻量图表 + 动态阶段文案
===================== */

.growth-poster.poster-share-poster .poster-with-charts{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:10px;
  margin-top:12px;
}

.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary{
  grid-column:1 / -1;
  padding:15px 16px !important;
  border-radius:24px !important;
}

.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary h3{
  margin:0 0 9px !important;
  font-size:24px !important;
  line-height:1.15;
}

.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-list{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
}

.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item{
  padding:9px 10px;
  border-radius:17px;
}

.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item strong{
  font-size:15px;
}

.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item span{
  font-size:11px;
}

.growth-poster.poster-share-poster .poster-radar-mini-card,
.growth-poster.poster-share-poster .poster-trend-mini-card,
.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card{
  margin:0 !important;
  padding:13px 14px !important;
  border-radius:22px !important;
  min-height:0 !important;
  background:rgba(255,255,255,.9) !important;
  box-shadow:0 12px 28px rgba(15,23,42,.055) !important;
}

.growth-poster.poster-share-poster .poster-radar-mini-card h3,
.growth-poster.poster-share-poster .poster-trend-mini-card h3,
.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card h3{
  display:block;
  margin:0 0 7px !important;
  font-size:17px !important;
  line-height:1.2;
  color:#111827 !important;
}

.growth-poster.poster-share-poster .poster-radar-mini-card .poster-chart-canvas.compact{
  height:168px !important;
  max-height:168px !important;
  overflow:hidden;
}

.growth-poster.poster-share-poster .poster-radar-mini-card canvas{
  width:100% !important;
  height:100% !important;
  max-height:168px !important;
}

.growth-poster.poster-share-poster .poster-trend-mini-card .poster-chart-canvas.mini{
  height:72px !important;
  max-height:72px !important;
  overflow:hidden;
  margin-top:3px;
}

.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card{
  display:block !important;
}

.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-chart-hint{
  display:block;
  color:#475569 !important;
  font-size:12.5px !important;
  line-height:1.42 !important;
  font-weight:750;
}

.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-chart-canvas.mini.monthly{
  height:68px !important;
  max-height:68px !important;
  margin-top:6px;
  overflow:hidden;
}

.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card.single-month .poster-chart-canvas,
.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card.empty .poster-chart-canvas{
  display:none !important;
}

.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-monthly-ability-tags{
  display:flex !important;
  flex-wrap:wrap;
  gap:5px;
  margin-top:7px !important;
}

.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-monthly-ability-tags span{
  padding:4px 7px !important;
  border-radius:999px;
  font-size:11px !important;
}

.growth-poster.poster-share-poster .poster-highlight-card .poster-section-kicker{
  width:max-content;
}

@media(max-width:760px){
  .growth-poster.poster-share-poster .poster-with-charts{
    grid-template-columns:1fr;
  }

  .growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-list{
    grid-template-columns:1fr;
  }

  .growth-poster.poster-share-poster .poster-radar-mini-card .poster-chart-canvas.compact{
    height:150px !important;
    max-height:150px !important;
  }
}

/* =====================
   朋友圈成长海报最终视觉版：苹果科技分享海报
   仅覆盖 #growthPoster，不影响完整成长报告和其他页面
===================== */
#growthPoster.growth-poster.poster-share-poster{
  width:min(900px,100%) !important;
  min-height:0 !important;
  padding:34px !important;
  border-radius:42px !important;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  color:#101827 !important;
  background:
    radial-gradient(circle at 88% 7%, rgba(52,116,255,.20), transparent 26%),
    radial-gradient(circle at 17% 22%, rgba(0,113,227,.12), transparent 32%),
    linear-gradient(180deg,#eaf4ff 0%,#f8fbff 46%,#ffffff 100%) !important;
  box-shadow:0 34px 80px rgba(29,78,216,.14), inset 0 1px 0 rgba(255,255,255,.78) !important;
}

#growthPoster.growth-poster.poster-share-poster::before{
  content:"";
  position:absolute;
  right:-18px;
  top:28px;
  width:250px;
  height:250px;
  border-radius:46px;
  transform:rotate(-16deg);
  background:
    linear-gradient(135deg,rgba(255,255,255,.56),rgba(255,255,255,.08)),
    linear-gradient(135deg,rgba(0,113,227,.10),rgba(120,160,255,.04));
  border:1px solid rgba(255,255,255,.58);
  box-shadow:0 28px 70px rgba(37,99,235,.13);
  z-index:-1;
}

#growthPoster.growth-poster.poster-share-poster::after{
  content:"";
  position:absolute;
  right:42px;
  top:104px;
  width:190px;
  height:96px;
  border-radius:999px;
  border-top:2px solid rgba(0,113,227,.16);
  transform:rotate(-10deg);
  z-index:-1;
}

#growthPoster.growth-poster.poster-share-poster .poster-bg-orb{
  opacity:.45 !important;
  filter:blur(18px);
}

#growthPoster.growth-poster.poster-share-poster .poster-orb-a{
  left:-70px !important;
  top:180px !important;
  width:230px !important;
  height:230px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-orb-b{
  right:-90px !important;
  bottom:220px !important;
  width:260px !important;
  height:260px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-top{
  display:grid !important;
  grid-template-columns:128px minmax(0,1fr) 142px !important;
  align-items:start !important;
  gap:24px !important;
  margin:0 0 22px !important;
  min-height:136px;
}

#growthPoster.growth-poster.poster-share-poster .poster-logo{
  width:116px !important;
  height:116px !important;
  max-width:none !important;
  max-height:none !important;
  padding:16px !important;
  object-fit:contain !important;
  border-radius:26px !important;
  background:rgba(255,255,255,.78) !important;
  border:1px solid rgba(255,255,255,.84) !important;
  box-shadow:0 18px 42px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.95) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-hero{
  align-self:center !important;
  text-align:left !important;
  margin:0 !important;
  padding:8px 0 0 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-hero .poster-badge{
  width:max-content;
  margin:0 0 10px !important;
  padding:0 !important;
  border:none !important;
  background:transparent !important;
  color:#0071e3 !important;
  font-size:12px !important;
  line-height:1;
  font-weight:900 !important;
  letter-spacing:.24em !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-hero h2{
  margin:0 !important;
  max-width:520px;
  font-size:38px !important;
  line-height:1.08 !important;
  letter-spacing:-.04em !important;
  color:#0f172a !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-hero p{
  margin:10px 0 0 !important;
  font-size:17px !important;
  line-height:1.35 !important;
  color:#475569 !important;
  font-weight:650 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-student-photo-wrap{
  justify-self:end;
  width:132px !important;
  height:146px !important;
  max-width:none !important;
  max-height:none !important;
  border-radius:30px !important;
  overflow:hidden;
  background:rgba(255,255,255,.72) !important;
  border:6px solid rgba(255,255,255,.92) !important;
  box-shadow:0 22px 52px rgba(15,23,42,.16) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-student-photo-wrap img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-card{
  background:rgba(255,255,255,.84) !important;
  border:1px solid rgba(255,255,255,.78) !important;
  border-radius:28px !important;
  box-shadow:0 16px 38px rgba(15,23,42,.075), inset 0 1px 0 rgba(255,255,255,.92) !important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

#growthPoster.growth-poster.poster-share-poster .poster-highlight-card{
  margin:0 0 18px !important;
  padding:24px 26px !important;
  max-width:620px;
}

#growthPoster.growth-poster.poster-share-poster .poster-section-kicker,
#growthPoster.growth-poster.poster-share-poster .poster-highlight-card .poster-section-kicker{
  display:block !important;
  width:auto !important;
  margin:0 0 12px !important;
  padding:0 !important;
  background:transparent !important;
  color:#111827 !important;
  font-size:20px !important;
  line-height:1.22 !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-highlight-summary{
  font-size:16px !important;
  line-height:1.72 !important;
  color:#334155 !important;
  font-weight:650 !important;
  display:-webkit-box;
  -webkit-line-clamp:5;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

#growthPoster.growth-poster.poster-share-poster .poster-highlight-moment{
  margin-top:14px !important;
  padding:12px 14px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.56) !important;
  color:#334155 !important;
  font-size:14px !important;
  line-height:1.55 !important;
  font-weight:750 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-keyword-row{
  display:flex !important;
  flex-wrap:wrap;
  gap:8px !important;
  margin-top:14px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-keyword-row span,
#growthPoster.growth-poster.poster-share-poster .poster-monthly-ability-tags span{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  padding:6px 11px !important;
  border-radius:999px !important;
  background:rgba(0,113,227,.08) !important;
  color:#0071e3 !important;
  font-size:13px !important;
  line-height:1.1 !important;
  font-weight:850 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:18px !important;
  margin-top:18px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary{
  grid-column:1 / -1 !important;
  padding:24px !important;
  border-radius:30px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary h3{
  margin:0 0 16px !important;
  font-size:24px !important;
  line-height:1.18 !important;
  color:#111827 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-list{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item{
  min-height:132px;
  padding:18px !important;
  border-radius:22px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(239,246,255,.66)) !important;
  border:1px solid rgba(191,219,254,.56) !important;
  box-shadow:0 10px 24px rgba(37,99,235,.055) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item::before{
  content:"";
  display:block;
  width:34px;
  height:34px;
  margin-bottom:12px;
  border-radius:13px;
  background:
    linear-gradient(135deg,#60a5fa,#2563eb);
  box-shadow:0 10px 20px rgba(37,99,235,.18);
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item strong{
  display:block;
  font-size:15px !important;
  line-height:1.35 !important;
  color:#0f5fd8 !important;
  font-weight:900 !important;
  margin-bottom:7px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item span{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:12.5px !important;
  line-height:1.55 !important;
  color:#475569 !important;
  font-weight:680 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-radar-mini-card,
#growthPoster.growth-poster.poster-share-poster .poster-trend-mini-card{
  padding:20px !important;
  min-height:318px !important;
  border-radius:30px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-radar-mini-card h3,
#growthPoster.growth-poster.poster-share-poster .poster-trend-mini-card h3,
#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card h3{
  margin:0 0 12px !important;
  font-size:19px !important;
  line-height:1.25 !important;
  color:#111827 !important;
  font-weight:900 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-radar-mini-card .poster-chart-canvas.compact{
  height:236px !important;
  max-height:236px !important;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

#growthPoster.growth-poster.poster-share-poster .poster-radar-mini-card canvas{
  width:100% !important;
  height:100% !important;
  max-height:236px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-trend-mini-card .poster-chart-canvas.mini{
  height:138px !important;
  max-height:138px !important;
  margin-top:12px !important;
  overflow:hidden !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-trend-summary{
  margin:0 !important;
  color:#475569 !important;
  font-size:14px !important;
  line-height:1.62 !important;
  font-weight:750 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card{
  grid-column:1 / -1 !important;
  min-height:0 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:18px !important;
  padding:19px 22px !important;
  border-radius:26px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card h3{
  margin:0 0 6px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-chart-hint{
  font-size:14px !important;
  line-height:1.55 !important;
  color:#475569 !important;
  font-weight:720 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-monthly-ability-tags{
  margin:0 !important;
  justify-content:flex-end;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-chart-canvas.mini.monthly{
  grid-column:1 / -1;
  height:128px !important;
  max-height:128px !important;
  margin-top:8px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card.single-month .poster-chart-canvas,
#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card.empty .poster-chart-canvas{
  display:none !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card,
#growthPoster.growth-poster.poster-share-poster .poster-focus-card{
  margin-top:18px !important;
  padding:24px 26px !important;
  border-radius:30px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card > h3,
#growthPoster.growth-poster.poster-share-poster .poster-focus-card > h3{
  margin:0 0 14px !important;
  font-size:22px !important;
  line-height:1.22 !important;
  color:#111827 !important;
  font-weight:900 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card #posterTalentText{
  max-width:none !important;
  display:grid;
  grid-template-columns:1fr minmax(200px,.72fr);
  gap:16px;
  align-items:stretch;
  font-size:14px !important;
  line-height:1.62 !important;
  color:#475569 !important;
  font-weight:700 !important;
}

#growthPoster.growth-poster.poster-share-poster .ai-talent-main-card,
#growthPoster.growth-poster.poster-share-poster .ai-talent-advice-card,
#growthPoster.growth-poster.poster-share-poster .ai-talent-route-card{
  padding:16px 18px !important;
  border-radius:22px !important;
  background:rgba(248,251,255,.78) !important;
  border:1px solid rgba(191,219,254,.5) !important;
  box-shadow:none !important;
}

#growthPoster.growth-poster.poster-share-poster .ai-talent-main-card{
  grid-row:span 2;
}

#growthPoster.growth-poster.poster-share-poster .ai-talent-main-card h3{
  font-size:20px !important;
  line-height:1.25 !important;
  margin:0 0 8px !important;
}

#growthPoster.growth-poster.poster-share-poster .ai-talent-main-card p,
#growthPoster.growth-poster.poster-share-poster .ai-talent-advice-card p,
#growthPoster.growth-poster.poster-share-poster .ai-talent-route-card p{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:13.5px !important;
  line-height:1.6 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-focus-card #posterFutureText{
  margin-top:12px !important;
  font-size:14.5px !important;
  line-height:1.65 !important;
  color:#334155 !important;
  font-weight:720 !important;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer{
  margin-top:22px !important;
  padding:18px 22px !important;
  min-height:100px;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(190px,.85fr) 88px !important;
  gap:20px !important;
  align-items:center !important;
  border-radius:28px !important;
  background:linear-gradient(135deg,#4f9bff 0%,#1d63e9 55%,#70a8ff 100%) !important;
  box-shadow:0 20px 48px rgba(37,99,235,.24) !important;
  color:#fff !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-left{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-logo{
  width:68px !important;
  height:68px !important;
  padding:8px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.92) !important;
  object-fit:contain !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-slogan{
  color:#fff !important;
  font-size:15px !important;
  line-height:1.45 !important;
  font-weight:850 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-center{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  column-gap:12px;
  align-items:center;
}

#growthPoster.growth-poster.poster-share-poster .poster-scan-icon{
  width:42px !important;
  height:42px !important;
  border-radius:50% !important;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.16) !important;
  border:1px solid rgba(255,255,255,.28) !important;
  color:#fff !important;
  font-size:22px !important;
  font-weight:900 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-title{
  color:#fff !important;
  font-size:19px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-sub{
  grid-column:2;
  color:rgba(255,255,255,.86) !important;
  font-size:12px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-qrcode{
  width:82px !important;
  height:82px !important;
  padding:7px !important;
  border-radius:18px !important;
  background:#fff !important;
  object-fit:contain !important;
}

#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-card,
#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-logo,
#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-student-photo-wrap{
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-bg-orb{
  filter:none !important;
}

@media(max-width:760px){
  #growthPoster.growth-poster.poster-share-poster{
    padding:22px !important;
    border-radius:32px !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-share-top{
    grid-template-columns:88px 1fr !important;
    gap:14px !important;
    min-height:0;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-logo{
    width:82px !important;
    height:82px !important;
    border-radius:22px !important;
    padding:10px !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-student-photo-wrap{
    grid-column:2;
    grid-row:1;
    width:86px !important;
    height:96px !important;
    border-radius:22px !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-share-hero{
    grid-column:1 / -1;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-share-hero h2{
    font-size:30px !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-highlight-card{
    max-width:none;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-with-charts,
  #growthPoster.growth-poster.poster-share-poster .poster-talent-card #posterTalentText{
    grid-template-columns:1fr !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-list{
    grid-template-columns:1fr !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card,
  #growthPoster.growth-poster.poster-share-poster .poster-footer{
    grid-template-columns:1fr !important;
  }
}

/* =====================
   朋友圈成长海报二次整理：更短、更稳的分享版
   解决顶部压字、模块过长、图表占位过大的问题
===================== */
#growthPoster.growth-poster.poster-share-poster{
  width:900px !important;
  padding:30px 32px 32px !important;
  border-radius:38px !important;
  background:
    radial-gradient(circle at 82% 5%, rgba(60,130,255,.18), transparent 24%),
    radial-gradient(circle at 7% 30%, rgba(0,113,227,.11), transparent 31%),
    linear-gradient(180deg,#edf6ff 0%,#f9fcff 47%,#ffffff 100%) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-top{
  position:relative !important;
  display:block !important;
  height:142px !important;
  min-height:142px !important;
  margin:0 0 18px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-logo{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:104px !important;
  height:104px !important;
  padding:13px !important;
  border-radius:24px !important;
  z-index:2;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-hero{
  position:absolute !important;
  left:132px !important;
  right:154px !important;
  top:16px !important;
  padding:0 !important;
  margin:0 !important;
  text-align:left !important;
  z-index:1;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-hero .poster-badge{
  margin-bottom:9px !important;
  font-size:11px !important;
  letter-spacing:.22em !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-hero h2{
  font-size:36px !important;
  line-height:1.05 !important;
  max-width:100% !important;
  word-break:keep-all;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-hero p{
  margin-top:8px !important;
  font-size:16px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-student-photo-wrap{
  position:absolute !important;
  right:0 !important;
  top:0 !important;
  width:128px !important;
  height:128px !important;
  border-radius:28px !important;
  z-index:2;
}

#growthPoster.growth-poster.poster-share-poster .poster-highlight-card{
  max-width:none !important;
  margin:0 0 14px !important;
  padding:22px 24px !important;
  border-radius:28px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-highlight-summary{
  font-size:15.5px !important;
  line-height:1.68 !important;
  -webkit-line-clamp:4 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-highlight-moment{
  margin-top:12px !important;
  padding:10px 12px !important;
  font-size:13px !important;
  line-height:1.5 !important;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts{
  gap:14px !important;
  margin-top:14px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary{
  padding:20px !important;
  border-radius:28px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-section-kicker{
  font-size:18px !important;
  margin-bottom:5px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary h3{
  margin-bottom:13px !important;
  font-size:22px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-list{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item{
  min-height:104px !important;
  padding:14px !important;
  border-radius:20px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item::before{
  width:28px !important;
  height:28px !important;
  border-radius:10px !important;
  margin-bottom:9px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item strong{
  font-size:14px !important;
  margin-bottom:5px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item span{
  font-size:12px !important;
  line-height:1.45 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-trend-summary{
  margin-top:11px !important;
  padding:9px 12px !important;
  border-radius:16px !important;
  background:rgba(239,246,255,.72) !important;
  font-size:13px !important;
  line-height:1.45 !important;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

#growthPoster.growth-poster.poster-share-poster .poster-radar-mini-card,
#growthPoster.growth-poster.poster-share-poster .poster-trend-mini-card{
  min-height:248px !important;
  padding:18px !important;
  border-radius:26px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-radar-mini-card .poster-chart-canvas.compact{
  height:178px !important;
  max-height:178px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-radar-mini-card canvas{
  max-height:178px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-trend-mini-card .poster-chart-canvas.mini{
  height:90px !important;
  max-height:90px !important;
  margin-top:10px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card{
  padding:16px 18px !important;
  border-radius:24px !important;
  gap:12px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card h3{
  font-size:18px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-chart-hint{
  font-size:13px !important;
  line-height:1.48 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card,
#growthPoster.growth-poster.poster-share-poster .poster-focus-card{
  margin-top:14px !important;
  padding:20px 22px !important;
  border-radius:28px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card > h3,
#growthPoster.growth-poster.poster-share-poster .poster-focus-card > h3{
  font-size:20px !important;
  margin-bottom:10px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card #posterTalentText{
  grid-template-columns:1.08fr .92fr !important;
  gap:12px !important;
}

#growthPoster.growth-poster.poster-share-poster .ai-talent-main-card,
#growthPoster.growth-poster.poster-share-poster .ai-talent-advice-card,
#growthPoster.growth-poster.poster-share-poster .ai-talent-route-card{
  padding:13px 15px !important;
  border-radius:19px !important;
}

#growthPoster.growth-poster.poster-share-poster .ai-talent-main-card h3{
  font-size:18px !important;
}

#growthPoster.growth-poster.poster-share-poster .ai-talent-main-card p,
#growthPoster.growth-poster.poster-share-poster .ai-talent-advice-card p,
#growthPoster.growth-poster.poster-share-poster .ai-talent-route-card p{
  font-size:12.5px !important;
  line-height:1.5 !important;
  -webkit-line-clamp:2 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-focus-card #posterFutureText{
  font-size:13.5px !important;
  line-height:1.52 !important;
  -webkit-line-clamp:2 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer{
  margin-top:16px !important;
  min-height:86px !important;
  padding:15px 18px !important;
  border-radius:24px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-logo{
  width:58px !important;
  height:58px !important;
  border-radius:16px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-title{
  font-size:17px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-qrcode{
  width:74px !important;
  height:74px !important;
  border-radius:16px !important;
}

@media(max-width:760px){
  #growthPoster.growth-poster.poster-share-poster{
    width:100% !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-share-top{
    height:auto !important;
    display:grid !important;
    grid-template-columns:82px minmax(0,1fr) 86px !important;
    gap:12px !important;
    align-items:start !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-logo,
  #growthPoster.growth-poster.poster-share-poster .poster-share-hero,
  #growthPoster.growth-poster.poster-share-poster .poster-student-photo-wrap{
    position:static !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-logo{
    width:76px !important;
    height:76px !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-student-photo-wrap{
    width:76px !important;
    height:82px !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-share-hero h2{
    font-size:24px !important;
  }
}

/* 朋友圈成长海报底部模块精修：压缩空白、统一底部层级 */
#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card{
  display:grid !important;
  grid-template-columns:170px minmax(0,1fr) auto !important;
  align-items:center !important;
  column-gap:14px !important;
  row-gap:8px !important;
  min-height:0 !important;
  margin-top:10px !important;
  padding:13px 16px !important;
  border-radius:22px !important;
  box-shadow:0 10px 26px rgba(15,23,42,.045) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card h3{
  margin:0 !important;
  font-size:17px !important;
  line-height:1.2 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-chart-hint{
  margin:0 !important;
  max-width:520px !important;
  font-size:12.8px !important;
  line-height:1.42 !important;
  color:#334155 !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-monthly-ability-tags{
  justify-content:flex-end !important;
  gap:6px !important;
  margin:0 !important;
  white-space:nowrap !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-monthly-ability-tags span{
  font-size:11.5px !important;
  line-height:1 !important;
  padding:5px 8px !important;
}

/* 朋友圈海报：把“月度成长积累”改成可读的课程内容摘要，不再只显示空泛趋势提示 */
#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card{
  grid-template-columns:190px minmax(0,1fr) !important;
  align-items:start !important;
  padding:18px 20px !important;
  row-gap:10px !important;
  border-radius:24px !important;
  background:linear-gradient(135deg, rgba(255,255,255,.96), rgba(239,247,255,.86)) !important;
  border:1px solid rgba(0,113,227,.12) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card h3{
  font-size:21px !important;
  line-height:1.22 !important;
  letter-spacing:-.02em !important;
  color:#1d1d1f !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-chart-hint{
  display:block !important;
  max-width:none !important;
  -webkit-line-clamp:unset !important;
  -webkit-box-orient:initial !important;
  overflow:visible !important;
  white-space:normal !important;
  font-size:15.5px !important;
  line-height:1.62 !important;
  color:#334155 !important;
  font-weight:760 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-monthly-ability-tags{
  grid-column:2 !important;
  justify-content:flex-start !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin-top:2px !important;
  white-space:normal !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-monthly-ability-tags span{
  font-size:13px !important;
  line-height:1.1 !important;
  padding:7px 10px !important;
  border-radius:999px !important;
  background:rgba(0,113,227,.09) !important;
  color:#0071e3 !important;
  font-weight:800 !important;
}

@media (max-width: 760px){
  #growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card{
    grid-template-columns:1fr !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-monthly-ability-tags{
    grid-column:1 !important;
  }
}

/* 顶部合并品牌区：放大主 Logo，减少 Logo 与“灵感乱炖Lab”之间的空白 */
.merged-header-shell{
  grid-template-columns:minmax(390px,450px) minmax(0,1fr) auto !important;
  gap:14px !important;
}

.merged-header-shell .top-left{
  gap:10px !important;
  min-width:0 !important;
}

.merged-header-shell .top-logo{
  width:182px !important;
  height:78px !important;
  padding:4px 6px !important;
  border-radius:18px !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:rgba(255,255,255,.72) !important;
  box-shadow:0 10px 24px rgba(15,23,42,.07) !important;
  flex:0 0 auto !important;
}

.merged-header-shell .top-divider{
  height:42px !important;
  margin:0 12px 0 4px !important;
  flex:0 0 auto !important;
  background:rgba(148,163,184,.26) !important;
}

.merged-header-shell .top-name{
  font-size:23px !important;
  line-height:1.1 !important;
  letter-spacing:-.03em !important;
  white-space:nowrap !important;
}

@media (max-width: 820px){
  .merged-header-shell{
    grid-template-columns:1fr !important;
  }
}

/* 朋友圈海报底部 CTA：左侧品牌更突出，右侧扫码入口与二维码成组对齐 */
#growthPoster.growth-poster.poster-share-poster .poster-footer{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto 100px !important;
  align-items:center !important;
  gap:20px !important;
  min-height:112px !important;
  padding:18px 20px 18px 20px !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 18% 22%, rgba(255,255,255,.28), transparent 28%),
    linear-gradient(135deg,#4b9dff 0%,#0875f5 46%,#0068df 100%) !important;
  box-shadow:0 22px 46px rgba(0,113,227,.22), inset 0 1px 0 rgba(255,255,255,.28) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-left{
  display:flex !important;
  align-items:center !important;
  min-width:0 !important;
  gap:16px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-logo{
  width:82px !important;
  height:82px !important;
  padding:8px !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.96) !important;
  box-shadow:0 12px 28px rgba(15,23,42,.14), inset 0 1px 0 rgba(255,255,255,.9) !important;
  object-fit:contain !important;
  flex:0 0 auto !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-slogan{
  font-size:19px !important;
  line-height:1.25 !important;
  letter-spacing:-.02em !important;
  color:#fff !important;
  font-weight:900 !important;
  text-shadow:0 1px 10px rgba(15,23,42,.16) !important;
  white-space:nowrap !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-center{
  justify-self:end !important;
  display:grid !important;
  grid-template-columns:42px max-content !important;
  align-items:center !important;
  column-gap:12px !important;
  padding:10px 14px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.14) !important;
  border:1px solid rgba(255,255,255,.26) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-scan-icon{
  width:42px !important;
  height:42px !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:rgba(255,255,255,.22) !important;
  border:1px solid rgba(255,255,255,.30) !important;
  color:#fff !important;
  font-size:23px !important;
  line-height:1 !important;
  font-weight:900 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-title{
  color:#fff !important;
  font-size:20px !important;
  line-height:1.18 !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
  white-space:nowrap !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-sub{
  grid-column:2 !important;
  margin-top:2px !important;
  color:rgba(255,255,255,.82) !important;
  font-size:12px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-qrcode{
  width:92px !important;
  height:92px !important;
  padding:8px !important;
  border-radius:22px !important;
  background:#fff !important;
  object-fit:contain !important;
  justify-self:end !important;
  box-shadow:0 12px 30px rgba(15,23,42,.18), inset 0 1px 0 rgba(255,255,255,.95) !important;
}

@media (max-width: 760px){
  #growthPoster.growth-poster.poster-share-poster .poster-footer{
    grid-template-columns:1fr auto !important;
    gap:14px !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-footer-center{
    grid-column:1 / -1 !important;
    justify-self:stretch !important;
    width:max-content !important;
    max-width:100% !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-footer-slogan{
    white-space:normal !important;
    font-size:16px !important;
  }
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card.has-trend .poster-chart-canvas.mini.monthly{
  grid-column:1 / -1 !important;
  height:96px !important;
  max-height:96px !important;
  margin-top:4px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card.single-month .poster-chart-canvas,
#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card.empty .poster-chart-canvas{
  display:none !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card{
  margin-top:12px !important;
  padding:20px 22px !important;
  border-radius:28px !important;
  min-height:0 !important;
  display:grid !important;
  grid-template-columns:132px minmax(0,1fr) !important;
  gap:14px !important;
  align-items:start !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card > h3{
  margin:3px 0 0 !important;
  font-size:22px !important;
  line-height:1.12 !important;
  letter-spacing:-.02em !important;
  color:#1d1d1f !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card #posterTalentText{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card #posterTalentText > *,
#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-section,
#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-main-card{
  width:100% !important;
  max-width:none !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-section{
  display:block !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-main-card{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 320px !important;
  grid-template-areas:
    "kicker tags"
    "title tags"
    "desc advice" !important;
  gap:10px 16px !important;
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-kicker{
  grid-area:kicker !important;
  margin:0 !important;
  font-size:12px !important;
  line-height:1 !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  color:#0071e3 !important;
  font-weight:900 !important;
  letter-spacing:.08em !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-kicker-icon,
#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-direction-icon,
#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-advice-icon{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  line-height:1 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-kicker-icon{
  width:22px !important;
  height:22px !important;
  border-radius:8px !important;
  background:rgba(0,113,227,.09) !important;
  font-size:13px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-main-card h3{
  grid-area:title !important;
  margin:0 !important;
  font-size:23px !important;
  line-height:1.18 !important;
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
  color:#1d1d1f !important;
  font-weight:900 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-direction-icon{
  width:34px !important;
  height:34px !important;
  border-radius:12px !important;
  background:linear-gradient(180deg, rgba(0,113,227,.15), rgba(0,122,255,.06)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82), 0 8px 18px rgba(0,113,227,.10) !important;
  font-size:18px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-main-card p{
  grid-area:desc !important;
  margin:0 !important;
  font-size:15.5px !important;
  line-height:1.62 !important;
  color:#334155 !important;
  display:block !important;
  overflow:visible !important;
  font-weight:700 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-keywords{
  grid-area:tags !important;
  align-content:start !important;
  justify-content:flex-start !important;
  gap:7px !important;
  margin:2px 0 0 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-keywords span{
  font-size:13.5px !important;
  padding:8px 11px !important;
  line-height:1 !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:4px !important;
  color:#0071e3 !important;
  background:rgba(0,113,227,.09) !important;
  font-weight:850 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-keywords span i{
  font-style:normal !important;
  font-size:11px !important;
  line-height:1 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-advice-card{
  grid-area:advice !important;
  margin:0 !important;
  padding:14px 16px !important;
  border-radius:20px !important;
  background:linear-gradient(180deg, rgba(239,246,255,.98), rgba(255,255,255,.90)) !important;
  border:1px solid rgba(0,113,227,.18) !important;
  box-shadow:0 10px 24px rgba(0,113,227,.06) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-advice-card h4{
  display:block !important;
  margin:0 0 7px !important;
  font-size:14px !important;
  line-height:1.2 !important;
  color:#0057b8 !important;
  font-weight:900 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-advice-card h4{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-advice-icon{
  width:22px !important;
  height:22px !important;
  border-radius:8px !important;
  background:rgba(34,197,94,.10) !important;
  font-size:13px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-advice-card p{
  display:block !important;
  margin:0 !important;
  font-size:14.5px !important;
  line-height:1.6 !important;
  color:#1f2937 !important;
  font-weight:750 !important;
  overflow:visible !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-focus-card{
  margin-top:12px !important;
  padding:18px 20px !important;
  border-radius:26px !important;
  min-height:0 !important;
  display:grid !important;
  grid-template-columns:250px minmax(0,1fr) !important;
  gap:8px 18px !important;
  align-items:center !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-focus-card > h3{
  grid-row:1 / span 2 !important;
  margin:0 !important;
  font-size:20px !important;
  line-height:1.2 !important;
  letter-spacing:-.02em !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-focus-card .poster-keyword-row{
  grid-column:2 !important;
  justify-content:flex-start !important;
  gap:8px !important;
  margin:0 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-focus-card .poster-keyword-row span{
  font-size:12.5px !important;
  padding:7px 11px !important;
  line-height:1 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-focus-card #posterFutureText{
  grid-column:2 !important;
  margin:0 !important;
  max-width:760px !important;
  font-size:13.5px !important;
  line-height:1.48 !important;
  color:#334155 !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer{
  margin-top:14px !important;
  min-height:78px !important;
  padding:13px 16px !important;
  border-radius:22px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-logo{
  width:54px !important;
  height:54px !important;
  border-radius:15px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-slogan{
  font-size:14px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-scan-icon{
  width:44px !important;
  height:44px !important;
  font-size:19px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-title{
  font-size:16px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-qrcode{
  width:68px !important;
  height:68px !important;
  border-radius:15px !important;
}

/* 朋友圈海报顶部品牌区：Logo 放大，同时避免遮挡 STUDENT GROWTH */
#growthPoster.growth-poster.poster-share-poster .poster-share-top{
  height:156px !important;
  min-height:156px !important;
  margin:0 0 18px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-logo{
  width:128px !important;
  height:128px !important;
  padding:14px !important;
  border-radius:28px !important;
  z-index:3 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-hero{
  left:170px !important;
  top:14px !important;
  right:160px !important;
  z-index:2 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-hero .poster-badge{
  display:block !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  max-width:100% !important;
  margin-left:0 !important;
  padding-left:0 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-hero h2{
  margin-top:6px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-student-photo-wrap{
  width:132px !important;
  height:132px !important;
}

/* 朋友圈海报能力亮点：更清晰的能力图标与 Apple 蓝白信息卡 */
#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-list{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:13px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item{
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  align-items:start !important;
  gap:12px !important;
  min-height:126px !important;
  padding:17px 18px !important;
  border-radius:23px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(239,246,255,.82)) !important;
  border:1px solid rgba(0,113,227,.18) !important;
  box-shadow:0 14px 30px rgba(0,113,227,.07) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item::before{
  content:none !important;
  display:none !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-icon{
  width:42px !important;
  height:42px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:14px !important;
  background:linear-gradient(180deg, rgba(0,113,227,.14), rgba(0,122,255,.07)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78), 0 8px 20px rgba(0,113,227,.10) !important;
  font-size:23px !important;
  line-height:1 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-copy{
  min-width:0 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item strong{
  display:block !important;
  margin:0 0 7px !important;
  color:#0066cc !important;
  font-size:17px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
  letter-spacing:-.01em !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item span{
  display:block !important;
  color:#334155 !important;
  font-size:14.5px !important;
  line-height:1.52 !important;
  font-weight:650 !important;
}

@media (max-width:760px){
  #growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-list{
    grid-template-columns:1fr !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-growth-primary .poster-ability-item{
    min-height:auto !important;
  }
}

/* 朋友圈海报雷达图：恢复 9 项能力标签并放大图表 */
#growthPoster.growth-poster.poster-share-poster .poster-radar-mini-card{
  min-height:360px !important;
  padding:22px 24px 24px !important;
  border-radius:30px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-radar-mini-card h3{
  margin-bottom:10px !important;
  font-size:22px !important;
  color:#1d1d1f !important;
  font-weight:900 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-radar-mini-card .poster-chart-canvas.compact{
  height:292px !important;
  max-height:292px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:visible !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-radar-mini-card canvas{
  width:100% !important;
  height:100% !important;
  max-height:292px !important;
}

@media (max-width:760px){
  #growthPoster.growth-poster.poster-share-poster .poster-radar-mini-card{
    min-height:330px !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-radar-mini-card .poster-chart-canvas.compact{
    height:260px !important;
    max-height:260px !important;
  }
}

/* 朋友圈海报成长曲线：补充 9 项能力点，避免只显示一条线 */
#growthPoster.growth-poster.poster-share-poster .poster-trend-mini-card{
  min-height:360px !important;
  padding:22px 24px !important;
  border-radius:30px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-trend-mini-card h3{
  margin-bottom:10px !important;
  font-size:22px !important;
  color:#1d1d1f !important;
  font-weight:900 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-trend-mini-card .poster-chart-canvas.mini{
  height:100px !important;
  max-height:100px !important;
  margin:8px 0 14px !important;
  overflow:hidden !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-trend-ability-points{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:9px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-trend-ability-point{
  min-width:0 !important;
  padding:9px 8px !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.76) !important;
  border:1px solid rgba(0,113,227,.14) !important;
  box-shadow:0 8px 18px rgba(15,23,42,.045) !important;
  display:flex !important;
  flex-direction:column !important;
  gap:3px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-trend-ability-point b{
  color:#1d1d1f !important;
  font-size:12.5px !important;
  line-height:1.15 !important;
  font-weight:850 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-trend-ability-point em{
  color:var(--ability-color,#0071e3) !important;
  font-size:14.5px !important;
  line-height:1.1 !important;
  font-style:normal !important;
  font-weight:900 !important;
  letter-spacing:-.01em !important;
}

@media (max-width:760px){
  #growthPoster.growth-poster.poster-share-poster .poster-trend-ability-points{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-talent-card{
    grid-template-columns:1fr !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-main-card{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "kicker"
      "title"
      "desc"
      "tags"
      "advice" !important;
  }
}

/* 导出兜底：html2canvas 对部分 radial/repeating 渐变兼容差，导出时降级为稳定背景 */
#growthPoster.growth-poster.poster-share-poster.poster-export-mode,
#growthPoster.growth-poster.poster-share-poster.poster-export-mode *{
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  background-image:none !important;
}

#growthPoster.growth-poster.poster-share-poster.poster-export-mode{
  background:#f2f8ff !important;
  box-shadow:none !important;
}

#growthPoster.growth-poster.poster-share-poster.poster-export-mode::before,
#growthPoster.growth-poster.poster-share-poster.poster-export-mode::after,
#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-bg-orb,
#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-radar-card::after,
#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-growth-primary::after,
#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-ability-item::before{
  content:none !important;
  display:none !important;
  background:none !important;
}

#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-card,
#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-logo,
#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-student-photo-wrap{
  background:#ffffff !important;
  box-shadow:0 8px 18px rgba(15,23,42,.05) !important;
}

#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-footer{
  background:#2f7bf4 !important;
}

#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-scan-icon{
  background:#4d91ff !important;
}

#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-award-card{
  background:#dc2626 !important;
}

#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-award-card::before,
#growthPoster.growth-poster.poster-share-poster.poster-export-mode .poster-award-card::after,
#growthPoster.growth-poster.poster-share-poster.poster-export-mode .award-shine{
  content:none !important;
  display:none !important;
  background:none !important;
}

@media(max-width:760px){
  #growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card,
  #growthPoster.growth-poster.poster-share-poster .poster-talent-card,
  #growthPoster.growth-poster.poster-share-poster .poster-focus-card{
    grid-template-columns:1fr !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-with-charts .poster-monthly-growth-card .poster-monthly-ability-tags,
  #growthPoster.growth-poster.poster-share-poster .poster-focus-card .poster-keyword-row{
    grid-column:1 !important;
    justify-content:flex-start !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-main-card{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "kicker"
      "title"
      "desc"
      "tags"
      "advice" !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-focus-card > h3{
    grid-row:auto !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-focus-card #posterFutureText{
    grid-column:1 !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-share-top{
    height:auto !important;
    min-height:0 !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-share-hero{
    left:auto !important;
    right:auto !important;
    top:auto !important;
  }
}

/* 朋友圈海报：AI 人才方向分析改为紧凑信息卡，避免标题下方大面积空白 */
#growthPoster.growth-poster.poster-share-poster .poster-talent-card{
  display:block !important;
  min-height:0 !important;
  padding:24px 26px !important;
  margin-top:14px !important;
  border-radius:30px !important;
  overflow:visible !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card > h3{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 0 16px !important;
  font-size:25px !important;
  line-height:1.15 !important;
  color:#1d1d1f !important;
  font-weight:900 !important;
  letter-spacing:-.025em !important;
  white-space:nowrap !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card > h3::before{
  content:"🤖";
  width:34px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:13px;
  background:linear-gradient(180deg, rgba(0,113,227,.14), rgba(255,255,255,.92));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88), 0 9px 18px rgba(0,113,227,.08);
  font-size:18px;
  flex:0 0 auto;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card #posterTalentText,
#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-section{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-main-card{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 340px !important;
  grid-template-areas:
    "kicker tags"
    "title tags"
    "desc advice" !important;
  align-items:start !important;
  gap:10px 18px !important;
  width:100% !important;
  max-width:none !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-kicker{
  grid-area:kicker !important;
  margin:0 !important;
  font-size:13px !important;
  line-height:1 !important;
  color:#0071e3 !important;
  letter-spacing:.08em !important;
  font-weight:900 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-main-card h3{
  grid-area:title !important;
  margin:0 !important;
  font-size:25px !important;
  line-height:1.18 !important;
  color:#1d1d1f !important;
  font-weight:900 !important;
  letter-spacing:-.025em !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-main-card p{
  grid-area:desc !important;
  margin:0 !important;
  font-size:16.5px !important;
  line-height:1.58 !important;
  color:#334155 !important;
  font-weight:760 !important;
  display:block !important;
  overflow:visible !important;
  -webkit-line-clamp:unset !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-keywords{
  grid-area:tags !important;
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  align-content:flex-start !important;
  gap:8px !important;
  margin:0 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-keywords span{
  padding:9px 13px !important;
  border-radius:999px !important;
  font-size:14.5px !important;
  line-height:1 !important;
  color:#0071e3 !important;
  background:linear-gradient(180deg, rgba(0,113,227,.11), rgba(0,122,255,.06)) !important;
  border:1px solid rgba(0,113,227,.13) !important;
  font-weight:850 !important;
  box-shadow:0 8px 18px rgba(0,113,227,.06) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-advice-card{
  grid-area:advice !important;
  margin:0 !important;
  padding:15px 17px !important;
  border-radius:22px !important;
  background:linear-gradient(180deg, rgba(239,246,255,.98), rgba(255,255,255,.92)) !important;
  border:1px solid rgba(0,113,227,.16) !important;
  box-shadow:0 10px 24px rgba(0,113,227,.06) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-advice-card h4{
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  margin:0 0 8px !important;
  font-size:15.5px !important;
  line-height:1.2 !important;
  color:#0057b8 !important;
  font-weight:900 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-advice-card p{
  display:block !important;
  margin:0 !important;
  font-size:15.5px !important;
  line-height:1.58 !important;
  color:#1d1d1f !important;
  font-weight:760 !important;
  overflow:visible !important;
  -webkit-line-clamp:unset !important;
}

@media (max-width:760px){
  #growthPoster.growth-poster.poster-share-poster .poster-talent-card > h3{
    white-space:normal !important;
    font-size:22px !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-main-card{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "kicker"
      "title"
      "desc"
      "tags"
      "advice" !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-talent-card .ai-talent-keywords{
    justify-content:flex-start !important;
  }
}

/* Apple 风可折叠顶部栏：默认精简，展开后恢复完整资料卡 */
.merged-header-shell{
  position:sticky !important;
  top:14px !important;
  z-index:80 !important;
  max-width:1200px !important;
  min-height:72px !important;
  margin:0 auto 18px !important;
  padding:8px 12px !important;
  border-radius:26px !important;
  display:grid !important;
  grid-template-columns:minmax(280px,360px) minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:14px !important;
  background:rgba(255,255,255,.82) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  box-shadow:0 18px 42px rgba(15,23,42,.08) !important;
  backdrop-filter:blur(24px) saturate(170%) !important;
  -webkit-backdrop-filter:blur(24px) saturate(170%) !important;
  transition:min-height .22s ease, padding .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

.merged-header-shell.header-scrolled{
  box-shadow:0 12px 34px rgba(15,23,42,.10) !important;
  border-color:rgba(0,113,227,.16) !important;
}

.merged-header-shell > .top-bar{
  grid-column:1 !important;
  grid-row:1 !important;
  min-height:0 !important;
  height:auto !important;
  padding:0 !important;
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.merged-header-shell .top-left{
  width:100% !important;
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
}

.merged-header-shell .top-logo{
  width:118px !important;
  height:52px !important;
  padding:3px 5px !important;
  border-radius:16px !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:rgba(255,255,255,.72) !important;
  box-shadow:0 8px 20px rgba(15,23,42,.06) !important;
  flex:0 0 auto !important;
}

.merged-header-shell .top-divider{
  height:34px !important;
  margin:0 4px !important;
  flex:0 0 auto !important;
  background:rgba(148,163,184,.22) !important;
}

.merged-header-shell .top-name{
  font-size:21px !important;
  line-height:1.1 !important;
  font-weight:900 !important;
  letter-spacing:-.035em !important;
  color:#1d1d1f !important;
  white-space:nowrap !important;
}

.merged-header-shell .top-bar .suggest-btn{
  display:none !important;
}

.merged-header-shell > .auth-bar{
  grid-column:2 / 4 !important;
  grid-row:1 !important;
  width:100% !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto auto !important;
  align-items:center !important;
  gap:12px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.merged-header-shell .auth-user-info{
  display:none !important;
}

.merged-header-shell .header-compact-summary{
  min-width:0 !important;
}

.merged-header-shell .header-compact-greeting{
  font-size:18px !important;
  line-height:1.2 !important;
  font-weight:850 !important;
  letter-spacing:-.025em !important;
  color:#1d1d1f !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

.merged-header-shell .header-compact-meta{
  margin-top:3px !important;
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:650 !important;
  color:#6e6e73 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

.merged-header-shell .header-compact-status{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  flex-wrap:wrap !important;
}

.merged-header-shell .header-mini-status{
  min-height:28px !important;
  padding:6px 10px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  color:#0066cc !important;
  background:rgba(0,113,227,.08) !important;
  border:1px solid rgba(0,113,227,.10) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:800 !important;
  white-space:nowrap !important;
}

.merged-header-shell .header-mini-status.wechat-bound{
  color:#047857 !important;
  background:#ecfdf5 !important;
  border-color:#bbf7d0 !important;
}

.merged-header-shell .header-mini-status.wechat-unbound{
  color:#c2410c !important;
  background:#fff7ed !important;
  border-color:#fed7aa !important;
}

.merged-header-shell .header-menu-wrap{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
}

.merged-header-shell .header-icon-btn{
  min-width:0 !important;
  min-height:34px !important;
  padding:8px 12px !important;
  border:1px solid rgba(148,163,184,.20) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.78) !important;
  color:#1d1d1f !important;
  box-shadow:0 8px 22px rgba(15,23,42,.06) !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:800 !important;
  cursor:pointer !important;
  transition:transform .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease !important;
}

.merged-header-shell .header-icon-btn:hover{
  transform:translateY(-1px) !important;
  color:#0071e3 !important;
  background:rgba(255,255,255,.94) !important;
  box-shadow:0 12px 28px rgba(0,113,227,.10) !important;
}

.merged-header-shell .header-expand-btn{
  color:#0071e3 !important;
}

.merged-header-shell .header-suggest-compact{
  color:#0071e3 !important;
  background:rgba(0,113,227,.08) !important;
  border-color:rgba(0,113,227,.12) !important;
}

.merged-header-shell .header-more-menu{
  position:absolute !important;
  top:calc(100% + 10px) !important;
  right:0 !important;
  width:190px !important;
  padding:8px !important;
  display:none !important;
  gap:4px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(148,163,184,.20) !important;
  box-shadow:0 22px 50px rgba(15,23,42,.16) !important;
  backdrop-filter:blur(20px) saturate(170%) !important;
  -webkit-backdrop-filter:blur(20px) saturate(170%) !important;
}

.merged-header-shell.header-menu-open .header-more-menu{
  display:grid !important;
}

.merged-header-shell .header-more-menu button{
  width:100% !important;
  padding:10px 12px !important;
  border:0 !important;
  border-radius:12px !important;
  background:transparent !important;
  color:#1d1d1f !important;
  text-align:left !important;
  font-size:14px !important;
  font-weight:750 !important;
  cursor:pointer !important;
}

.merged-header-shell .header-more-menu button:hover{
  background:rgba(0,113,227,.08) !important;
  color:#0071e3 !important;
}

.merged-header-shell .header-more-menu button.danger{
  color:#d92d20 !important;
}

.merged-header-shell .auth-actions{
  display:none !important;
}

.merged-header-shell.header-expanded{
  min-height:108px !important;
  padding:14px 16px !important;
  grid-template-columns:minmax(280px,360px) minmax(0,1fr) !important;
}

.merged-header-shell.header-expanded > .auth-bar{
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
}

.merged-header-shell.header-expanded .auth-user-info{
  display:flex !important;
  min-width:0 !important;
  gap:10px !important;
  align-items:center !important;
}

.merged-header-shell.header-expanded .header-compact-summary,
.merged-header-shell.header-expanded .header-compact-status{
  display:none !important;
}

.merged-header-shell.header-expanded .auth-user-avatar{
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  border-radius:14px !important;
  background:#f5f5f7 !important;
}

.merged-header-shell.header-expanded .auth-user-meta{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:3px !important;
}

.merged-header-shell.header-expanded #currentTeacherNameText,
.merged-header-shell.header-expanded #currentTeacherEmailText{
  max-width:520px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

.merged-header-shell.header-expanded .status-row{
  display:flex !important;
  gap:6px !important;
  flex-wrap:wrap !important;
  margin-top:5px !important;
}

.merged-header-shell.header-expanded .sync-status,
.merged-header-shell.header-expanded .bank-status{
  min-height:24px !important;
  padding:4px 10px !important;
  border-radius:999px !important;
  font-size:12px !important;
}

.merged-header-shell.header-expanded .header-menu-wrap{
  align-self:start !important;
}

.merged-header-shell.header-expanded .auth-actions{
  grid-column:1 / 3 !important;
  display:flex !important;
  justify-content:flex-end !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin-top:10px !important;
}

.merged-header-shell.header-expanded .auth-small-btn{
  min-height:34px !important;
  padding:8px 12px !important;
  border-radius:999px !important;
  font-size:13px !important;
}

@media (max-width:900px){
  .merged-header-shell{
    grid-template-columns:minmax(220px,300px) minmax(0,1fr) !important;
    gap:10px !important;
  }

  .merged-header-shell > .auth-bar{
    grid-template-columns:minmax(0,1fr) auto auto !important;
  }
}

@media (max-width:640px){
  .merged-header-shell{
    top:8px !important;
    min-height:64px !important;
    padding:8px 10px !important;
    border-radius:22px !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:8px !important;
  }

  .merged-header-shell > .top-bar{
    grid-column:1 !important;
  }

  .merged-header-shell > .auth-bar{
    grid-column:2 !important;
    grid-template-columns:auto !important;
    justify-content:end !important;
  }

  .merged-header-shell .top-logo{
    width:86px !important;
    height:40px !important;
    padding:2px 4px !important;
    border-radius:13px !important;
  }

  .merged-header-shell .top-divider{
    height:28px !important;
    margin:0 2px !important;
  }

  .merged-header-shell .top-name{
    font-size:18px !important;
  }

  .merged-header-shell .header-compact-summary,
  .merged-header-shell .header-compact-status,
  .merged-header-shell.header-expanded .auth-user-info,
  .merged-header-shell.header-expanded .auth-actions{
    display:none !important;
  }

  .merged-header-shell .header-suggest-compact{
    display:none !important;
  }

  .merged-header-shell .header-expand-btn{
    display:none !important;
  }

  .merged-header-shell .header-more-menu{
    width:min(320px, calc(100vw - 28px)) !important;
    right:0 !important;
  }
}

/* 朋友圈海报底部品牌条：改成左品牌、右扫码的一体化 CTA，避免中间元素漂浮 */
#growthPoster.growth-poster.poster-share-poster .poster-footer{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto 86px !important;
  align-items:center !important;
  gap:10px !important;
  min-height:102px !important;
  margin-top:18px !important;
  padding:14px 16px !important;
  border-radius:30px !important;
  background:
    radial-gradient(circle at 12% 18%, rgba(255,255,255,.28), transparent 30%),
    radial-gradient(circle at 86% 24%, rgba(255,255,255,.16), transparent 24%),
    linear-gradient(135deg,#4ca3ff 0%,#0a7df4 48%,#0068df 100%) !important;
  border:1px solid rgba(255,255,255,.24) !important;
  box-shadow:0 24px 50px rgba(0,113,227,.22), inset 0 1px 0 rgba(255,255,255,.30) !important;
  overflow:hidden !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-left{
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-logo{
  width:76px !important;
  height:76px !important;
  padding:8px !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.96) !important;
  object-fit:contain !important;
  box-shadow:0 12px 28px rgba(15,23,42,.16), inset 0 1px 0 rgba(255,255,255,.92) !important;
  flex:0 0 auto !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-slogan{
  max-width:340px !important;
  color:#fff !important;
  font-size:18px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
  text-shadow:0 1px 12px rgba(15,23,42,.18) !important;
  white-space:normal !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-center{
  justify-self:end !important;
  min-height:58px !important;
  display:grid !important;
  grid-template-columns:34px max-content !important;
  align-items:center !important;
  column-gap:10px !important;
  padding:10px 14px 10px 10px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.16) !important;
  border:1px solid rgba(255,255,255,.28) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.20), 0 12px 26px rgba(0,60,130,.12) !important;
  backdrop-filter:blur(14px) saturate(150%) !important;
  -webkit-backdrop-filter:blur(14px) saturate(150%) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-scan-icon{
  width:34px !important;
  height:34px !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:rgba(255,255,255,.24) !important;
  border:1px solid rgba(255,255,255,.34) !important;
  color:#fff !important;
  font-size:20px !important;
  line-height:1 !important;
  font-weight:900 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-title{
  color:#fff !important;
  font-size:18px !important;
  line-height:1.15 !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
  white-space:nowrap !important;
  text-shadow:0 1px 10px rgba(15,23,42,.14) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-sub{
  grid-column:2 !important;
  margin-top:2px !important;
  max-width:170px !important;
  color:rgba(255,255,255,.82) !important;
  font-size:12px !important;
  line-height:1.3 !important;
  font-weight:750 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-qrcode{
  width:82px !important;
  height:82px !important;
  padding:7px !important;
  border-radius:22px !important;
  background:#fff !important;
  object-fit:contain !important;
  justify-self:end !important;
  box-shadow:0 14px 30px rgba(15,23,42,.18), inset 0 1px 0 rgba(255,255,255,.95) !important;
}

@media (max-width:760px){
  #growthPoster.growth-poster.poster-share-poster .poster-footer{
    grid-template-columns:1fr 74px !important;
    gap:12px !important;
    padding:14px !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-footer-center{
    grid-column:1 !important;
    grid-row:2 !important;
    justify-self:start !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-qrcode{
    width:74px !important;
    height:74px !important;
  }
}

/* 朋友圈海报底部品牌条：高级深蓝渐变，收紧中间 CTA，放大二维码 */
#growthPoster.growth-poster.poster-share-poster .poster-footer{
  position:relative !important;
  isolation:isolate !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto 118px !important;
  align-items:center !important;
  gap:14px !important;
  min-height:118px !important;
  padding:16px 18px !important;
  border-radius:32px !important;
  background:
    radial-gradient(circle at 16% 18%, rgba(125,211,252,.28), transparent 28%),
    radial-gradient(circle at 78% 22%, rgba(255,255,255,.20), transparent 24%),
    linear-gradient(135deg,#08152f 0%,#0b3f91 42%,#0071e3 74%,#34c7ff 100%) !important;
  border:1px solid rgba(255,255,255,.26) !important;
  box-shadow:0 28px 58px rgba(8,42,100,.26), inset 0 1px 0 rgba(255,255,255,.32) !important;
  overflow:hidden !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer::before{
  content:"" !important;
  position:absolute !important;
  inset:1px !important;
  border-radius:31px !important;
  background:linear-gradient(90deg, rgba(255,255,255,.10), rgba(255,255,255,0) 38%, rgba(255,255,255,.12)) !important;
  pointer-events:none !important;
  z-index:-1 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-left{
  gap:16px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-logo{
  width:86px !important;
  height:86px !important;
  padding:8px !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.96) !important;
  box-shadow:0 16px 34px rgba(2,8,23,.26), inset 0 1px 0 rgba(255,255,255,.96) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-slogan{
  font-size:20px !important;
  line-height:1.22 !important;
  font-weight:950 !important;
  color:#ffffff !important;
  letter-spacing:-.025em !important;
  text-shadow:0 2px 14px rgba(2,8,23,.30) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-center{
  justify-self:end !important;
  min-height:52px !important;
  grid-template-columns:30px max-content !important;
  column-gap:9px !important;
  padding:8px 12px 8px 9px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.15) !important;
  border:1px solid rgba(255,255,255,.26) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22), 0 12px 26px rgba(2,8,23,.12) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-scan-icon{
  width:30px !important;
  height:30px !important;
  font-size:18px !important;
  background:rgba(255,255,255,.22) !important;
  border-color:rgba(255,255,255,.32) !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-title{
  font-size:17px !important;
  line-height:1.1 !important;
  font-weight:900 !important;
  color:#ffffff !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-footer-sub{
  font-size:11.5px !important;
  max-width:150px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-qrcode{
  width:110px !important;
  height:110px !important;
  padding:8px !important;
  border-radius:26px !important;
  background:rgba(255,255,255,.98) !important;
  box-shadow:0 18px 36px rgba(2,8,23,.28), inset 0 1px 0 rgba(255,255,255,.96) !important;
}

@media (max-width:760px){
  #growthPoster.growth-poster.poster-share-poster .poster-footer{
    grid-template-columns:1fr 96px !important;
    gap:12px !important;
    min-height:112px !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-footer-center{
    grid-column:1 !important;
    grid-row:2 !important;
    justify-self:start !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-qrcode{
    width:96px !important;
    height:96px !important;
  }
}

/* 顶部栏固定在窗口顶部，并给正文自动预留空间 */
:root{
  --merged-header-space:116px;
}

body{
  scroll-padding-top:var(--merged-header-space) !important;
}

.merged-header-shell{
  position:fixed !important;
  top:0 !important;
  left:50% !important;
  width:min(1200px, calc(100vw - 48px)) !important;
  margin:0 !important;
  transform:translateX(-50%) !important;
  z-index:1000 !important;
  will-change:transform !important;
  contain:layout paint !important;
}

.merged-header-shell + .container{
  margin-top:var(--merged-header-space) !important;
}

body:has(.merged-header-shell){
  padding-top:0 !important;
}

@media (max-width:640px){
  .merged-header-shell{
    top:0 !important;
    width:calc(100vw - 20px) !important;
  }

  .merged-header-shell + .container{
    margin-top:var(--merged-header-space) !important;
  }
}

/* 朋友圈海报顶部标题：绝对居中，避免被左侧 Logo / 右侧照片挤偏 */
#growthPoster.growth-poster.poster-share-poster .poster-share-top{
  position:relative !important;
  display:block !important;
  height:168px !important;
  min-height:168px !important;
  margin:0 0 18px !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-top .poster-logo{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:132px !important;
  height:132px !important;
  padding:14px !important;
  z-index:3 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-top .poster-student-photo-wrap{
  position:absolute !important;
  right:0 !important;
  top:0 !important;
  width:136px !important;
  height:136px !important;
  z-index:3 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-top .poster-title-area.poster-share-hero{
  position:absolute !important;
  left:50% !important;
  top:22px !important;
  right:auto !important;
  width:min(560px, calc(100% - 330px)) !important;
  transform:translateX(-50%) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
  z-index:2 !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-top .poster-title-copy{
  width:100% !important;
  min-width:0 !important;
  text-align:center !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-top .poster-badge{
  margin:0 auto 8px !important;
  text-align:center !important;
  letter-spacing:.24em !important;
  max-width:100% !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-top h2{
  margin:0 !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

#growthPoster.growth-poster.poster-share-poster .poster-share-top p{
  margin:8px 0 0 !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

@media (max-width:760px){
  #growthPoster.growth-poster.poster-share-poster .poster-share-top{
    height:auto !important;
    min-height:0 !important;
    display:grid !important;
    grid-template-columns:92px minmax(0,1fr) 92px !important;
    gap:12px !important;
    align-items:center !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-share-top .poster-logo,
  #growthPoster.growth-poster.poster-share-poster .poster-share-top .poster-student-photo-wrap,
  #growthPoster.growth-poster.poster-share-poster .poster-share-top .poster-title-area.poster-share-hero{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    transform:none !important;
    width:auto !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-share-top .poster-logo,
  #growthPoster.growth-poster.poster-share-poster .poster-share-top .poster-student-photo-wrap{
    width:92px !important;
    height:92px !important;
  }

  #growthPoster.growth-poster.poster-share-poster .poster-share-top h2{
    white-space:normal !important;
  }
}

/* 最终兜底：顶部栏始终固定在浏览器窗口顶部，不随页面滚动 */
html body .merged-header-shell{
  position:fixed !important;
  top:0 !important;
  left:50% !important;
  right:auto !important;
  bottom:auto !important;
  transform:translateX(-50%) !important;
  margin:0 !important;
  z-index:1000 !important;
}

/* Aceternity / AI SaaS 风格顶部悬浮导航栏：仅覆盖顶部栏，不改业务模块 */
:root{
  --merged-header-space:118px;
  --saas-header-top:16px;
  --saas-header-side-gap:118px;
}

html body{
  scroll-padding-top:var(--merged-header-space) !important;
}

html body > .merged-header-shell,
html body .merged-header-shell.site-fixed-top-header{
  position:fixed !important;
  top:var(--saas-header-top) !important;
  left:calc(var(--saas-header-side-gap) + (100vw - var(--saas-header-side-gap)) / 2) !important;
  right:auto !important;
  width:min(1120px, calc(100vw - 150px)) !important;
  max-width:1120px !important;
  height:76px !important;
  min-height:76px !important;
  max-height:76px !important;
  margin:0 !important;
  padding:0 20px !important;
  transform:translateX(-50%) !important;
  display:grid !important;
  grid-template-columns:minmax(210px, 270px) minmax(220px, 1fr) minmax(270px, auto) !important;
  align-items:center !important;
  gap:16px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.78) !important;
  border:1px solid rgba(0,113,227,.16) !important;
  box-shadow:0 18px 60px rgba(15,23,42,.08) !important;
  backdrop-filter:blur(18px) saturate(175%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(175%) !important;
  overflow:visible !important;
  z-index:1000 !important;
  isolation:isolate !important;
  transition:
    width .28s ease,
    height .28s ease,
    min-height .28s ease,
    max-height .28s ease,
    padding .28s ease,
    background .28s ease,
    border-color .28s ease,
    box-shadow .28s ease !important;
}

html body > .merged-header-shell.header-scrolled,
html body .merged-header-shell.site-fixed-top-header.header-scrolled{
  width:min(900px, calc(100vw - 150px)) !important;
  height:58px !important;
  min-height:58px !important;
  max-height:58px !important;
  padding:0 14px !important;
  background:rgba(255,255,255,.88) !important;
  border-color:rgba(0,113,227,.20) !important;
  box-shadow:0 18px 50px rgba(15,23,42,.12) !important;
}

html body > .merged-header-shell + .container{
  margin-top:var(--merged-header-space) !important;
}

body:has(.merged-header-shell){
  padding-top:0 !important;
}

.merged-header-shell > .top-bar{
  grid-column:1 !important;
  grid-row:1 !important;
  min-height:0 !important;
  height:auto !important;
  padding:0 !important;
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.merged-header-shell .top-left{
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
}

.merged-header-shell .top-logo{
  width:42px !important;
  height:42px !important;
  padding:4px !important;
  border-radius:14px !important;
  object-fit:contain !important;
  background:rgba(255,255,255,.86) !important;
  box-shadow:0 8px 22px rgba(15,23,42,.08) !important;
  flex:0 0 auto !important;
  transition:width .28s ease, height .28s ease, border-radius .28s ease !important;
}

.merged-header-shell.header-scrolled .top-logo{
  width:34px !important;
  height:34px !important;
  border-radius:12px !important;
}

.merged-header-shell .top-divider{
  display:none !important;
}

.merged-header-shell .top-brand-copy{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:2px !important;
}

.merged-header-shell .top-name{
  font-size:16px !important;
  line-height:1.12 !important;
  font-weight:650 !important;
  letter-spacing:-.02em !important;
  color:#0f172a !important;
  white-space:nowrap !important;
  transition:font-size .28s ease !important;
}

.merged-header-shell.header-scrolled .top-name{
  font-size:15px !important;
}

.merged-header-shell .top-subtitle{
  font-size:12px !important;
  line-height:1.15 !important;
  font-weight:550 !important;
  color:#64748b !important;
  white-space:nowrap !important;
  opacity:1 !important;
  max-height:18px !important;
  transition:opacity .22s ease, max-height .22s ease, transform .22s ease !important;
}

.merged-header-shell.header-scrolled .top-subtitle{
  opacity:0 !important;
  max-height:0 !important;
  transform:translateY(-3px) !important;
  overflow:hidden !important;
}

.merged-header-shell .top-bar .suggest-btn{
  display:none !important;
}

.merged-header-shell .header-center-nav{
  grid-column:2 !important;
  grid-row:1 !important;
  min-width:0 !important;
  height:40px !important;
  padding:4px !important;
  display:none !important;
  align-items:center !important;
  justify-content:center !important;
  gap:2px !important;
  border-radius:999px !important;
  background:rgba(248,250,252,.58) !important;
  border:1px solid rgba(148,163,184,.14) !important;
}

.merged-header-shell.header-scrolled .header-center-nav{
  height:36px !important;
  background:transparent !important;
  border-color:transparent !important;
}

.merged-header-shell .header-nav-btn{
  min-height:30px !important;
  padding:0 12px !important;
  border:0 !important;
  border-radius:999px !important;
  background:transparent !important;
  color:#475569 !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:650 !important;
  white-space:nowrap !important;
  cursor:pointer !important;
  transition:background .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

.merged-header-shell .header-nav-btn:hover{
  color:#0f172a !important;
  background:rgba(255,255,255,.76) !important;
  transform:translateY(-1px) !important;
}

.merged-header-shell .header-nav-btn.active{
  color:#0066cc !important;
  background:rgba(0,113,227,.10) !important;
  box-shadow:0 8px 22px rgba(0,113,227,.10) !important;
}

.merged-header-shell .header-compact-summary{
  display:flex !important;
}

.merged-header-shell > .auth-bar{
  grid-column:2 / 4 !important;
  grid-row:1 !important;
  width:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  display:grid !important;
  grid-template-columns:minmax(180px, 1fr) auto auto !important;
  align-items:center !important;
  justify-content:stretch !important;
  gap:8px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.merged-header-shell .auth-user-info,
.merged-header-shell .auth-actions{
  display:none !important;
}

.merged-header-shell .header-compact-summary{
  min-width:0 !important;
  max-width:420px !important;
  display:flex !important;
  align-items:center !important;
  justify-self:center !important;
  gap:8px !important;
  padding:0 12px !important;
  text-align:center !important;
}

.merged-header-shell .header-compact-avatar{
  display:none !important;
}

.merged-header-shell .header-compact-copy{
  min-width:0 !important;
  width:100% !important;
}

.merged-header-shell .header-compact-greeting{
  font-size:15px !important;
  line-height:1.12 !important;
  font-weight:750 !important;
  color:#0f172a !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

.merged-header-shell .header-compact-meta{
  margin-top:2px !important;
  font-size:12.5px !important;
  line-height:1.12 !important;
  font-weight:560 !important;
  color:#64748b !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

.merged-header-shell.header-scrolled .header-compact-meta{
  display:none !important;
}

.merged-header-shell .header-compact-status{
  justify-self:end !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:6px !important;
  flex-wrap:nowrap !important;
}

.merged-header-shell .header-mini-status{
  min-height:28px !important;
  padding:0 10px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  color:#0066cc !important;
  background:rgba(0,113,227,.08) !important;
  border:1px solid rgba(0,113,227,.10) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:720 !important;
  white-space:nowrap !important;
}

.merged-header-shell.header-scrolled .header-mini-status{
  min-height:26px !important;
  padding:0 9px !important;
}

.merged-header-shell .header-menu-wrap{
  position:relative !important;
  justify-self:end !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:6px !important;
}

.merged-header-shell .header-icon-btn{
  min-width:0 !important;
  min-height:32px !important;
  padding:0 11px !important;
  border:1px solid rgba(148,163,184,.18) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.64) !important;
  color:#0f172a !important;
  box-shadow:none !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:700 !important;
  cursor:pointer !important;
  transition:transform .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease !important;
}

.merged-header-shell .header-icon-btn:hover{
  transform:translateY(-1px) !important;
  color:#0071e3 !important;
  background:rgba(255,255,255,.92) !important;
  box-shadow:0 12px 28px rgba(0,113,227,.10) !important;
}

.merged-header-shell .header-suggest-compact,
.merged-header-shell .header-expand-btn{
  color:#0071e3 !important;
  background:rgba(0,113,227,.07) !important;
  border-color:rgba(0,113,227,.10) !important;
}

.merged-header-shell .header-more-menu{
  position:fixed !important;
  top:88px !important;
  right:24px !important;
  width:214px !important;
  padding:9px !important;
  display:none !important;
  gap:4px !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.88) !important;
  border:1px solid rgba(15,23,42,.08) !important;
  box-shadow:0 22px 60px rgba(15,23,42,.16) !important;
  backdrop-filter:blur(20px) saturate(175%) !important;
  -webkit-backdrop-filter:blur(20px) saturate(175%) !important;
  z-index:100000 !important;
  pointer-events:auto !important;
  opacity:0 !important;
  transform:translateY(-6px) scale(.98) !important;
  transform-origin:top right !important;
  transition:opacity .18s ease, transform .18s ease !important;
}

.merged-header-shell.header-menu-open .header-more-menu{
  display:grid !important;
  opacity:1 !important;
  transform:translateY(0) scale(1) !important;
}

.merged-header-shell .header-more-menu button,
.merged-header-shell .header-menu-user-card{
  width:100% !important;
  padding:10px 12px !important;
  border:0 !important;
  border-radius:14px !important;
  background:transparent !important;
  color:#0f172a !important;
  text-align:left !important;
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
}

.merged-header-shell .header-menu-user-card{
  background:rgba(248,250,252,.74) !important;
  color:#475569 !important;
  font-size:12px !important;
}

.merged-header-shell .header-more-menu button:hover{
  background:rgba(0,113,227,.08) !important;
  color:#0071e3 !important;
}

.merged-header-shell .header-more-menu button.danger{
  color:#d92d20 !important;
}

.merged-header-shell.header-expanded:not(.header-scrolled){
  height:76px !important;
  min-height:76px !important;
  max-height:76px !important;
  padding:0 20px !important;
}

.merged-header-shell.header-expanded > .auth-bar{
  grid-column:2 / 4 !important;
  grid-row:1 !important;
  display:grid !important;
  grid-template-columns:minmax(180px, 1fr) auto auto !important;
}

.merged-header-shell.header-expanded .auth-user-info,
.merged-header-shell.header-expanded .auth-actions{
  display:none !important;
}

.merged-header-shell.header-expanded .header-compact-summary{
  display:flex !important;
}

.merged-header-shell.header-expanded .header-compact-status{
  display:flex !important;
}

@media (max-width:1180px){
  html body > .merged-header-shell,
  html body .merged-header-shell.site-fixed-top-header{
    grid-template-columns:minmax(190px, 240px) minmax(260px, 1fr) minmax(220px, auto) !important;
    gap:10px !important;
  }

  .merged-header-shell .header-nav-btn{
    padding:0 9px !important;
  }

  .merged-header-shell .header-compact-status{
    display:none !important;
  }
}

@media (max-width:899px){
  :root{
    --merged-header-space:92px;
    --saas-header-top:12px;
    --saas-header-side-gap:0px;
  }

  html body > .merged-header-shell,
  html body .merged-header-shell.site-fixed-top-header,
  html body > .merged-header-shell.header-scrolled,
  html body .merged-header-shell.site-fixed-top-header.header-scrolled{
    left:50% !important;
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
    height:64px !important;
    min-height:64px !important;
    max-height:64px !important;
    padding:0 12px !important;
    grid-template-columns:minmax(0, 1fr) auto !important;
    gap:10px !important;
  }

  .merged-header-shell .header-center-nav,
  .merged-header-shell .header-compact-summary,
  .merged-header-shell .header-compact-status,
  .merged-header-shell .header-suggest-compact,
  .merged-header-shell .header-expand-btn{
    display:none !important;
  }

  .merged-header-shell .top-logo{
    width:38px !important;
    height:38px !important;
  }

  .merged-header-shell .top-name{
    font-size:15px !important;
  }

  .merged-header-shell .top-subtitle{
    display:none !important;
  }

  .merged-header-shell > .auth-bar{
    grid-column:2 !important;
  }

  .merged-header-shell .header-more-menu{
    width:min(320px, calc(100vw - 28px)) !important;
    right:0 !important;
  }
}

@media (prefers-reduced-motion: reduce){
  .merged-header-shell,
  .merged-header-shell *{
    transition:none !important;
  }
}

.recommendation-page{
  background:
    radial-gradient(circle at 10% 0%, rgba(0,113,227,.07), transparent 26%),
    radial-gradient(circle at 92% 6%, rgba(90,140,255,.06), transparent 24%),
    linear-gradient(180deg,#f5f5f7 0%,#fafafa 54%,#fff 100%);
  border-radius:30px;
  padding:28px;
  overflow:hidden;
}

.recommendation-hero{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,320px);
  gap:18px;
  align-items:center;
  margin-bottom:22px;
  min-height:auto;
  padding:22px 24px;
  border-radius:28px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(0,0,0,.055);
  box-shadow:0 12px 34px rgba(15,23,42,.055);
  backdrop-filter:blur(20px) saturate(160%);
  -webkit-backdrop-filter:blur(20px) saturate(160%);
  transition:box-shadow .22s ease, transform .22s ease, border-color .22s ease;
}

.recommendation-hero::before{
  content:"";
  position:absolute;
  right:28px;
  top:-44px;
  width:128px;
  height:128px;
  border-radius:36px;
  background:linear-gradient(135deg,rgba(0,113,227,.06),rgba(255,255,255,.12));
  transform:rotate(18deg);
  pointer-events:none;
}

.recommendation-hero::after{
  display:none;
}

.recommendation-hero-copy{
  position:relative;
  z-index:1;
  max-width:720px;
}

.recommendation-kicker{
  display:inline-flex;
  align-items:center;
  margin-bottom:9px;
  padding:5px 10px;
  border-radius:999px;
  background:rgba(0,113,227,.08);
  color:#0071e3;
  font-size:10.5px;
  font-weight:900;
  letter-spacing:.14em;
}

.recommendation-hero h2{
  font-size:clamp(28px,3.35vw,38px);
  line-height:1.06;
  letter-spacing:-.035em;
  margin:0 0 9px;
  color:#1d1d1f;
  font-weight:820;
}

.recommendation-hero p{
  max-width:680px;
  margin:0;
  color:#6e6e73;
  font-size:15px;
  line-height:1.56;
  font-weight:580;
}

.recommendation-hero-pills{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}

.recommendation-hero-pills span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(245,245,247,.82);
  border:1px solid rgba(0,0,0,.055);
  color:#334155;
  font-size:11.5px;
  font-weight:760;
  box-shadow:0 6px 16px rgba(15,23,42,.035);
}

.recommendation-hero-card,
.recommendation-card{
  background:rgba(255,255,255,.86);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 18px 45px rgba(15,23,42,.07);
  border-radius:26px;
  backdrop-filter:blur(18px) saturate(150%);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
}

.recommendation-hero-card{
  position:relative;
  z-index:1;
  min-width:0;
  padding:18px 20px;
  background:rgba(255,255,255,.88);
  border-color:rgba(0,0,0,.06);
  border-radius:24px;
  box-shadow:0 14px 34px rgba(15,23,42,.065);
}

.recommendation-hero-card span{
  display:block;
  color:#6e6e73;
  font-size:12px;
  font-weight:720;
}

.recommendation-hero-card strong{
  display:block;
  margin-top:7px;
  font-size:28px;
  line-height:1.08;
  color:#0071e3;
  letter-spacing:-.03em;
  font-weight:820;
}

.recommendation-hero-card .recommendation-muted{
  display:block;
  margin-top:6px;
  color:#6e6e73;
  font-size:11.5px;
  line-height:1.35;
  word-break:break-word;
}

.recommendation-data-source-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0 0 18px;
  padding:14px 16px;
  border-radius:24px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(0,113,227,.12);
  box-shadow:0 14px 34px rgba(15,23,42,.055);
  backdrop-filter:blur(18px) saturate(160%);
  -webkit-backdrop-filter:blur(18px) saturate(160%);
}

.recommendation-data-source-copy{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 10px;
  min-width:0;
}

.recommendation-source-title{
  color:#1d1d1f;
  font-size:14px;
  font-weight:850;
  letter-spacing:-.01em;
}

.recommendation-source-muted{
  color:#6e6e73;
  font-size:12px;
  font-weight:650;
}

.recommendation-source-badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:850;
  white-space:nowrap;
}

.recommendation-source-badge.mock{
  color:#0071e3;
  background:rgba(0,113,227,.09);
}

.recommendation-source-badge.test{
  color:#0f766e;
  background:rgba(20,184,166,.12);
}

.recommendation-source-badge.warn{
  color:#b45309;
  background:rgba(245,158,11,.12);
}

.recommendation-source-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
  flex:0 0 auto;
}

.recommendation-source-actions button{
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(0,113,227,.16);
  background:rgba(255,255,255,.9);
  color:#0071e3;
  font-size:12px;
  font-weight:850;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.recommendation-source-actions button:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(0,113,227,.12);
}

.recommendation-source-actions button.active{
  background:#0071e3;
  color:#fff;
  box-shadow:0 10px 22px rgba(0,113,227,.18);
}

.recommendation-source-actions button:disabled{
  opacity:.5;
  cursor:not-allowed;
  transform:none;
  box-shadow:none;
}

.recommendation-test-auth-panel{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);
  gap:12px;
  align-items:stretch;
  width:100%;
  padding-top:12px;
  border-top:1px solid rgba(148,163,184,.18);
}

.recommendation-test-auth-status,
.recommendation-test-auth-login{
  border-radius:18px;
  border:1px solid rgba(148,163,184,.18);
  background:rgba(248,250,252,.78);
  padding:12px;
}

.recommendation-test-auth-status strong,
.recommendation-test-auth-login strong{
  display:block;
  color:#1d1d1f;
  font-size:13px;
  font-weight:900;
  margin-bottom:8px;
}

.recommendation-test-auth-warning{
  margin-top:8px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(245,158,11,.12);
  color:#92400e;
  font-size:12px;
  font-weight:800;
  line-height:1.45;
}

.recommendation-test-auth-login .recommendation-test-auth-fields{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:8px;
}

.recommendation-test-auth-login input{
  min-height:34px;
  border-radius:12px;
  border:1px solid rgba(148,163,184,.22);
  padding:0 10px;
  background:#fff;
  color:#1d1d1f;
  font-size:12px;
  outline:none;
}

.recommendation-test-auth-login input:focus{
  border-color:rgba(0,113,227,.45);
  box-shadow:0 0 0 3px rgba(0,113,227,.10);
}

.recommendation-test-auth-login .recommendation-test-auth-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:8px;
}

.recommendation-test-auth-login .recommendation-test-auth-note{
  display:block;
  margin-top:8px;
  color:#6e6e73;
  font-size:11.5px;
  font-weight:650;
  line-height:1.45;
}

.recommendation-test-auth-login button{
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(0,113,227,.16);
  background:rgba(255,255,255,.9);
  color:#0071e3;
  font-size:12px;
  font-weight:850;
  cursor:pointer;
}

.recommendation-test-auth-login button.primary{
  background:#0071e3;
  color:#fff;
}

@media (max-width:900px){
  .recommendation-data-source-card,
  .recommendation-test-auth-panel{
    grid-template-columns:1fr;
  }

  .recommendation-source-actions{
    justify-content:flex-start;
  }
}

.recommendation-tabs{
  position:relative;
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding:6px;
  margin:0 auto 24px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(255,255,255,.75);
  border-radius:999px;
  scrollbar-width:none;
  box-shadow:0 18px 45px rgba(15,23,42,.06);
  backdrop-filter:blur(18px) saturate(160%);
  -webkit-backdrop-filter:blur(18px) saturate(160%);
}

.recommendation-tab-indicator{
  position:absolute;
  top:6px;
  left:6px;
  height:42px;
  width:120px;
  border-radius:999px;
  background:linear-gradient(135deg,#0071e3,#0a84ff);
  box-shadow:
    0 12px 28px rgba(0,113,227,.22),
    inset 0 1px 0 rgba(255,255,255,.34);
  opacity:0;
  transform:translateX(0);
  transition:
    transform .34s cubic-bezier(.2,.9,.2,1),
    width .34s cubic-bezier(.2,.9,.2,1),
    opacity .18s ease;
  pointer-events:none;
  z-index:0;
  display:none !important;
}

.recommendation-tabs::-webkit-scrollbar{display:none;}

.recommendation-tab{
  position:relative;
  z-index:1;
  flex:0 0 auto;
  min-height:42px;
  padding:0 20px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#334155 !important;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
  transition:.2s ease;
}

.recommendation-tab.active{
  background:linear-gradient(135deg,#0071e3,#0a84ff);
  color:#fff !important;
  box-shadow:0 10px 24px rgba(0,113,227,.20);
}

.recommendation-tab:hover:not(.active){
  background:rgba(0,113,227,.07);
  color:#0071e3 !important;
}

.recommendation-panel{display:none;}
.recommendation-panel.active{display:block;}

.recommendation-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:20px;
}

.recommendation-template-layout{
  grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr);
  align-items:start;
}

.recommendation-card{
  padding:24px;
  border-radius:28px;
}

.recommendation-card h3{
  margin:0 0 14px;
  color:#1d1d1f;
  font-size:22px;
  letter-spacing:-.02em;
}

.recommendation-card p,
.recommendation-muted{
  color:#64748b;
  font-size:14px;
  line-height:1.6;
}

.recommendation-cover-field{
  display:grid;
  grid-template-columns:minmax(180px, 260px) minmax(0,1fr);
  gap:16px;
  align-items:center;
  padding:14px;
  border-radius:22px;
  background:rgba(248,250,252,.86);
  border:1px solid rgba(148,163,184,.16);
}

.recommendation-cover-preview,
.recommendation-cover,
.recommendation-cover-thumb{
  position:relative;
  overflow:hidden;
  border-radius:22px;
  background:
    radial-gradient(circle at 22% 12%, rgba(0,113,227,.18), transparent 34%),
    linear-gradient(135deg, #eef6ff, #f8fafc 58%, #eaf4ff);
}

.recommendation-cover-preview{
  aspect-ratio:16 / 9;
  min-height:132px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
}

.recommendation-cover-preview img,
.recommendation-cover img,
.recommendation-cover-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.recommendation-cover-placeholder{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#0071e3;
  font-size:13px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.recommendation-cover-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}

.recommendation-cover-actions .recommendation-muted{
  flex-basis:100%;
  margin:0;
}

.recommendation-cover-thumb{
  width:116px;
  min-width:116px;
  aspect-ratio:4 / 3;
  border-radius:18px;
  border:1px solid rgba(148,163,184,.16);
}

.recommendation-template-card{
  display:grid;
  gap:14px;
  padding:16px;
  border:1px solid rgba(148,163,184,.16);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.90));
  box-shadow:0 14px 32px rgba(15,23,42,.055);
  overflow:hidden;
}

.recommendation-template-main{
  display:grid;
  grid-template-columns:132px minmax(0,1fr);
  gap:14px;
  align-items:start;
}

.recommendation-template-card .recommendation-cover-thumb{
  width:132px;
  min-width:0;
  height:92px;
  aspect-ratio:auto;
  border-radius:18px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.86);
}

.recommendation-template-content{
  min-width:0;
}

.recommendation-template-content .recommendation-list-title{
  font-size:17px;
  line-height:1.25;
  letter-spacing:-.01em;
}

.recommendation-template-content .recommendation-list-meta{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  word-break:break-word;
}

.recommendation-template-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  padding-top:2px;
}

.recommendation-template-actions .recommendation-secondary,
.recommendation-template-actions .recommendation-danger{
  min-height:34px;
  padding:8px 13px;
  font-size:13px;
}

.recommendation-template-list-item{
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:stretch;
}

.recommendation-template-copy{
  min-width:0;
}

.recommendation-deadline-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 11px;
  border-radius:999px;
  background:rgba(0,113,227,.10);
  color:#0071e3;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}

.recommendation-deadline-badge.urgent,
.recommendation-deadline-badge.today{
  background:rgba(255,149,0,.14);
  color:#b45309;
}

.recommendation-deadline-badge.expired{
  background:rgba(148,163,184,.18);
  color:#64748b;
}

.recommendation-deadline-badge.unset{
  background:rgba(148,163,184,.12);
  color:#64748b;
}

.recommendation-countdown-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(255,59,48,.10);
  border:1px solid rgba(255,59,48,.18);
  color:#d70015;
  font-size:12px;
  font-weight:900;
  letter-spacing:.01em;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(255,59,48,.08);
}

.recommendation-countdown-pill.active{
  background:rgba(255,59,48,.08);
  border-color:rgba(255,59,48,.16);
  color:#c2410c;
}

.recommendation-countdown-pill.urgent{
  background:rgba(255,149,0,.16);
  border-color:rgba(255,149,0,.24);
  color:#b45309;
  box-shadow:0 8px 18px rgba(255,149,0,.10);
}

.recommendation-countdown-pill.today{
  background:rgba(255,59,48,.14);
  border-color:rgba(255,59,48,.28);
  color:#d70015;
  box-shadow:0 10px 22px rgba(255,59,48,.13);
}

.recommendation-countdown-pill.expired{
  background:rgba(107,114,128,.12);
  border-color:rgba(107,114,128,.18);
  color:#6b7280;
  box-shadow:none;
}

.recommendation-countdown-pill.unset{
  background:rgba(148,163,184,.12);
  border-color:rgba(148,163,184,.18);
  color:#64748b;
  box-shadow:none;
}

.recommendation-time-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:14px 0;
}

.recommendation-time-card{
  position:relative;
  overflow:hidden;
  padding:12px 13px;
  border-radius:18px;
  background:#f5f8ff;
  border:1px solid rgba(0,113,227,.10);
  transition:transform .22s cubic-bezier(.2,.8,.2,1), box-shadow .22s ease, border-color .22s ease;
}

.recommendation-time-card:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(15,23,42,.07);
}

.recommendation-time-card span{
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:800;
}

.recommendation-time-card strong{
  display:block;
  margin-top:5px;
  color:#1d1d1f;
  font-size:14px;
  line-height:1.35;
}

.recommendation-time-card em{
  display:inline-flex;
  margin-top:8px;
  font-style:normal;
}

.recommendation-time-card.activity{
  background:linear-gradient(180deg,rgba(255,59,48,.11),rgba(255,255,255,.95));
  border-color:rgba(255,59,48,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82), 0 8px 22px rgba(255,59,48,.06);
}

.recommendation-time-card.activity span{
  color:#d70015;
}

.recommendation-time-card.activity strong{
  color:#9f1239;
}

.recommendation-time-card.schedule{
  background:linear-gradient(180deg,rgba(88,86,214,.10),rgba(255,255,255,.94));
  border-color:rgba(88,86,214,.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82), 0 8px 22px rgba(88,86,214,.06);
}

.recommendation-time-card.schedule span{
  color:#5856d6;
}

.recommendation-time-card.schedule strong{
  color:#312e81;
}

.recommendation-time-card.deadline{
  background:linear-gradient(180deg,rgba(255,149,0,.16),rgba(255,255,255,.95));
  border-color:rgba(255,59,48,.26);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82), 0 8px 22px rgba(255,59,48,.08);
}

.recommendation-time-card.deadline span{
  color:#ea580c;
}

.recommendation-time-card.deadline strong{
  color:#d70015;
}

.recommendation-deadline-row{
  display:flex !important;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.recommendation-deadline-row b{
  font:inherit;
  color:inherit;
}

.recommendation-deadline-row .recommendation-countdown-pill{
  min-height:24px;
  padding:0 10px;
  font-size:11px;
}

.recommendation-time-card.deadline.active,
.recommendation-time-card.deadline.urgent,
.recommendation-time-card.deadline.today{
  background:linear-gradient(180deg,rgba(255,59,48,.16),rgba(255,244,229,.96));
  border-color:rgba(255,59,48,.34);
}

.recommendation-time-card.deadline.expired,
.recommendation-time-card.deadline.unset{
  background:linear-gradient(180deg,rgba(148,163,184,.10),rgba(255,255,255,.94));
  border-color:rgba(148,163,184,.18);
  box-shadow:none;
}

.recommendation-time-card.deadline.expired span,
.recommendation-time-card.deadline.unset span,
.recommendation-time-card.deadline.expired strong,
.recommendation-time-card.deadline.unset strong{
  color:#64748b;
}

.recommendation-time-card.countdown{
  background:linear-gradient(180deg,rgba(255,149,0,.10),rgba(255,255,255,.94));
  border-color:rgba(255,149,0,.22);
}

.recommendation-time-card.countdown span{
  color:#b45309;
}

.recommendation-time-card.countdown strong{
  color:#c2410c;
}

.recommendation-time-card.countdown.today,
.recommendation-time-card.countdown.urgent{
  background:linear-gradient(180deg,rgba(255,59,48,.10),rgba(255,255,255,.94));
  border-color:rgba(255,59,48,.24);
}

.recommendation-time-card.countdown.today span,
.recommendation-time-card.countdown.urgent span{
  color:#d70015;
}

.recommendation-time-card.countdown.expired{
  background:linear-gradient(180deg,rgba(107,114,128,.10),rgba(255,255,255,.94));
  border-color:rgba(107,114,128,.18);
}

.recommendation-time-card.countdown.unset{
  background:linear-gradient(180deg,rgba(148,163,184,.10),rgba(255,255,255,.94));
  border-color:rgba(148,163,184,.18);
}

.recommendation-time-card.highlight{
  background:linear-gradient(180deg,rgba(0,113,227,.10),rgba(255,255,255,.92));
  border-color:rgba(0,113,227,.22);
}

.recommendation-time-card.highlight strong{
  color:#0071e3;
}

.recommendation-tag{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 11px;
  border-radius:999px;
  background:rgba(0,113,227,.08);
  color:#0071e3;
  font-size:12px;
  font-weight:900;
}

.recommendation-tag-blue{
  background:rgba(0,113,227,.09);
  color:#0071e3;
  border:1px solid rgba(0,113,227,.12);
}

.recommendation-tag-purple{
  background:rgba(88,86,214,.10);
  color:#5856d6;
  border:1px solid rgba(88,86,214,.14);
}

.recommendation-tag-cyan{
  background:rgba(0,199,190,.10);
  color:#0f766e;
  border:1px solid rgba(0,199,190,.16);
}

.recommendation-tag-orange{
  background:rgba(255,149,0,.12);
  color:#c2410c;
  border:1px solid rgba(255,149,0,.18);
}

.recommendation-tag-green{
  background:rgba(52,199,89,.12);
  color:#15803d;
  border:1px solid rgba(52,199,89,.18);
}

.recommendation-score-tag.score-hot{
  background:rgba(255,59,48,.10);
  color:#d70015;
  border:1px solid rgba(255,59,48,.16);
}

.recommendation-score-tag.score-good{
  background:rgba(52,199,89,.12);
  color:#15803d;
  border:1px solid rgba(52,199,89,.18);
}

.recommendation-score-tag.score-medium{
  background:rgba(255,149,0,.12);
  color:#b45309;
  border:1px solid rgba(255,149,0,.18);
}

.recommendation-score-tag.score-low{
  background:rgba(148,163,184,.14);
  color:#64748b;
  border:1px solid rgba(148,163,184,.18);
}

.recommendation-action-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

.recommendation-action-row button,
.recommendation-parent-preview button,
.recommendation-public-share-mode button{
  -webkit-tap-highlight-color:transparent;
}

.recommendation-action-row button:focus,
.recommendation-parent-preview button:focus,
.recommendation-public-share-mode button:focus{
  outline:none;
}

.recommendation-action-row button:disabled{
  opacity:.48;
  cursor:not-allowed;
  transform:none !important;
}

.recommendation-scroll-row{
  display:flex;
  gap:14px;
  overflow-x:auto;
  padding:2px 2px 10px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}

.recommendation-scroll-row::-webkit-scrollbar{
  display:none;
}

.recommendation-form-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:14px;
}

.recommendation-form-grid label{
  display:block;
  margin:0 0 7px;
  color:#334155;
  font-weight:800;
  font-size:13px;
}

.recommendation-form-grid input,
.recommendation-form-grid select,
.recommendation-form-grid textarea{
  width:100%;
  border:1px solid rgba(148,163,184,.30);
  border-radius:18px;
  padding:13px 14px;
  background:rgba(255,255,255,.82);
  color:#111827;
  font-size:14px;
  box-sizing:border-box;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.90);
}

.recommendation-form-grid input:focus,
.recommendation-form-grid select:focus,
.recommendation-form-grid textarea:focus{
  outline:none;
  border-color:rgba(0,113,227,.42);
  box-shadow:0 0 0 4px rgba(0,113,227,.10);
}

.recommendation-form-grid textarea{
  min-height:92px;
  resize:vertical;
}

.recommendation-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}

.recommendation-primary,
.recommendation-secondary,
.recommendation-danger{
  border:0;
  border-radius:999px;
  padding:11px 16px;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
}

.recommendation-primary{
  background:#0071e3;
  color:#fff;
  box-shadow:0 12px 26px rgba(0,113,227,.18);
}

.recommendation-secondary{
  background:#eef6ff;
  color:#0071e3;
}

.recommendation-danger{
  background:#fff1f2;
  color:#e11d48;
}

.recommendation-list{
  display:grid;
  gap:12px;
  margin-top:14px;
}

.recommendation-list-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:18px;
  border:1px solid rgba(148,163,184,.14);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.90),rgba(255,255,255,.76));
}

.recommendation-list-title{
  color:#111827;
  font-weight:900;
  font-size:16px;
}

.recommendation-list-meta{
  margin-top:5px;
  color:#64748b;
  font-size:13px;
  line-height:1.5;
}

.recommendation-explain-card{
  margin-top:14px;
  margin-bottom:18px;
  padding:12px 14px;
  border-radius:18px;
  background:
    linear-gradient(135deg,rgba(0,113,227,.075),rgba(52,199,89,.055)),
    rgba(255,255,255,.76);
  border:1px solid rgba(0,113,227,.12);
  box-shadow:0 14px 30px rgba(15,23,42,.045);
  color:#475569;
  font-size:12.5px;
  line-height:1.55;
}

.recommendation-explain-card strong{
  display:block;
  margin-bottom:3px;
  color:#0071e3;
  font-size:13px;
}

.recommendation-import-card{
  margin-top:18px;
}

.recommendation-import-summary-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:12px;
  margin:14px 0;
}

.recommendation-import-summary-card{
  padding:16px;
  border-radius:24px;
  background:
    radial-gradient(circle at 18% 0%,rgba(0,113,227,.12),transparent 36%),
    rgba(255,255,255,.92);
  border:1px solid rgba(0,113,227,.12);
  box-shadow:0 14px 32px rgba(15,23,42,.055);
}

.recommendation-import-summary-card strong{
  display:block;
  color:#111827;
  font-size:16px;
  font-weight:900;
}

.recommendation-import-summary-card p{
  margin:8px 0 0;
  color:#475569;
  font-size:12.8px;
  line-height:1.55;
}

.recommendation-import-summary-meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:10px;
}

.recommendation-import-steps{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:12px;
  margin:16px 0;
}

.recommendation-import-step{
  padding:16px;
  border-radius:22px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 12px 28px rgba(15,23,42,.045);
}

.recommendation-import-step span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  margin-bottom:9px;
  border-radius:999px;
  background:rgba(0,113,227,.1);
  color:#0071e3;
  font-size:13px;
  font-weight:900;
}

.recommendation-import-step strong{
  display:block;
  color:#111827;
  font-size:15px;
  font-weight:900;
}

.recommendation-import-step p{
  margin:6px 0 0;
  color:#64748b;
  font-size:12.5px;
  line-height:1.55;
}

.recommendation-upload-card{
  margin-top:14px;
  padding:18px;
  border-radius:24px;
  background:
    linear-gradient(135deg,rgba(0,113,227,.06),rgba(255,255,255,.92)),
    #fff;
  border:1px dashed rgba(0,113,227,.24);
}

.recommendation-import-table-wrap{
  margin-top:14px;
  overflow-x:auto;
  border-radius:22px;
  border:1px solid rgba(148,163,184,.16);
  background:rgba(255,255,255,.92);
}

.recommendation-import-table{
  width:100%;
  min-width:920px;
  border-collapse:separate;
  border-spacing:0;
  font-size:13px;
  color:#334155;
}

.recommendation-import-table th,
.recommendation-import-table td{
  padding:12px 14px;
  text-align:left;
  border-bottom:1px solid rgba(148,163,184,.12);
  vertical-align:top;
}

.recommendation-import-table th{
  position:sticky;
  top:0;
  background:#f8fbff;
  color:#64748b;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}

.recommendation-import-table tr:last-child td{
  border-bottom:0;
}

.recommendation-import-link{
  max-width:260px;
  color:#0071e3;
  word-break:break-all;
  font-weight:700;
}

.recommendation-import-badge{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}

.recommendation-import-badge.ok{
  background:rgba(52,199,89,.12);
  color:#15803d;
}

.recommendation-import-badge.warn{
  background:rgba(255,149,0,.13);
  color:#b45309;
}

.recommendation-import-badge.error{
  background:rgba(255,45,85,.12);
  color:#e11d48;
}

.recommendation-future-btn{
  opacity:.58;
  cursor:not-allowed !important;
  background:#f1f5f9 !important;
  color:#94a3b8 !important;
  box-shadow:none !important;
}

.recommendation-share-link-text{
  margin-top:6px;
  color:#0071e3;
  font-size:12.5px;
  font-weight:700;
  word-break:break-all;
}

.recommendation-share-channel-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:8px;
}

.recommendation-editing-note{
  display:none;
  margin:0 0 14px;
  padding:10px 12px;
  border-radius:16px;
  background:rgba(0,113,227,.08);
  border:1px solid rgba(0,113,227,.18);
  color:#005bb5;
  font-size:13px;
  font-weight:800;
}

.recommendation-editing-note.show{
  display:block;
}

.recommendation-list-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}

.recommendation-inline-editor{
  margin-top:14px;
  padding:16px;
  border-radius:22px;
  background:rgba(248,250,252,.92);
  border:1px solid rgba(0,113,227,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.86);
}

.recommendation-list-item > .recommendation-inline-editor,
.recommendation-sub-item > .recommendation-inline-editor{
  grid-column:1 / -1;
}

.recommendation-inline-editor-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.recommendation-inline-editor-head strong{
  display:block;
  color:#111827;
  font-size:16px;
  font-weight:900;
}

.recommendation-inline-editor-head span{
  display:block;
  margin-top:4px;
  color:#64748b;
  font-size:12.5px;
  line-height:1.45;
}

.recommendation-inline-editor .recommendation-form-grid{
  gap:12px;
}

.recommendation-inline-editor .recommendation-form-grid input,
.recommendation-inline-editor .recommendation-form-grid select,
.recommendation-inline-editor .recommendation-form-grid textarea{
  padding:11px 12px;
  border-radius:16px;
  background:#fff;
}

.recommendation-inline-editor .recommendation-form-grid textarea{
  min-height:76px;
}

.recommendation-sub-list{
  display:grid;
  gap:10px;
  margin-top:12px;
}

.recommendation-sub-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:12px;
  border-radius:16px;
  background:rgba(248,250,252,.88);
  border:1px solid rgba(148,163,184,.14);
}

.recommendation-chip-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}

.recommendation-chip{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:7px 11px;
  background:rgba(0,113,227,.075);
  color:#0071e3;
  font-size:12px;
  font-weight:800;
}

.recommendation-chip.tone-blue,
.recommendation-share-status-chip.tone-blue{
  background:rgba(0,113,227,.09);
  color:#0071e3;
  border-color:rgba(0,113,227,.18);
}

.recommendation-chip.tone-cyan,
.recommendation-share-status-chip.tone-cyan{
  background:rgba(0,199,190,.10);
  color:#007c89;
  border-color:rgba(0,199,190,.20);
}

.recommendation-chip.tone-purple,
.recommendation-share-status-chip.tone-purple{
  background:rgba(88,86,214,.10);
  color:#5856d6;
  border-color:rgba(88,86,214,.20);
}

.recommendation-chip.tone-orange,
.recommendation-share-status-chip.tone-orange{
  background:rgba(255,149,0,.13);
  color:#b45309;
  border-color:rgba(255,149,0,.24);
}

.recommendation-chip.tone-red,
.recommendation-share-status-chip.tone-red{
  background:rgba(255,59,48,.11);
  color:#d70015;
  border-color:rgba(255,59,48,.24);
}

.recommendation-chip.tone-green,
.recommendation-share-status-chip.tone-green{
  background:rgba(52,199,89,.12);
  color:#15803d;
  border-color:rgba(52,199,89,.22);
}

.recommendation-chip.tone-gray,
.recommendation-share-status-chip.tone-gray{
  background:rgba(142,142,147,.12);
  color:#6b7280;
  border-color:rgba(142,142,147,.20);
}

.recommendation-share-status-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(0,113,227,.16);
  font-size:12px;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78);
  transition:transform .18s cubic-bezier(.2,.8,.2,1), box-shadow .18s ease;
}

.recommendation-share-status-chip:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(15,23,42,.07), inset 0 1px 0 rgba(255,255,255,.78);
}

.recommendation-share-status-chip .dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:currentColor;
  box-shadow:0 0 0 4px rgba(255,255,255,.72);
}

.recommendation-share-status-chip .status{
  opacity:.92;
}

.recommendation-option-card{
  cursor:pointer;
  transition:.2s ease;
}

.recommendation-option-card.active{
  border-color:rgba(0,113,227,.44);
  background:linear-gradient(180deg,rgba(0,113,227,.09),rgba(255,255,255,.92));
}

.recommendation-student-picker-tools{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}

.recommendation-student-picker-tools input{
  flex:1 1 220px;
}

.recommendation-student-multi-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  max-height:260px;
  overflow:auto;
  padding:10px;
  border:1px solid rgba(148,163,184,.22);
  border-radius:18px;
  background:rgba(248,250,252,.7);
}

.recommendation-student-multi-item{
  display:flex;
  gap:9px;
  align-items:flex-start;
  padding:10px 12px;
  border:1px solid rgba(226,232,240,.9);
  border-radius:15px;
  background:#fff;
  cursor:pointer;
  transition:.18s ease;
}

.recommendation-student-multi-item:hover{
  border-color:rgba(0,113,227,.35);
  box-shadow:0 10px 22px rgba(15,23,42,.06);
}

.recommendation-student-multi-item input{
  margin-top:3px;
  width:auto;
}

.recommendation-student-multi-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}

.recommendation-student-multi-copy strong{
  color:#0f172a;
  font-size:14px;
}

.recommendation-student-multi-copy span{
  color:#64748b;
  font-size:12px;
}

@media (max-width: 720px){
  .recommendation-student-multi-list{
    grid-template-columns:1fr;
  }
}

.recommendation-option-card{
  grid-template-columns:auto minmax(0,1fr) auto;
}

.recommendation-empty{
  padding:22px;
  border-radius:20px;
  background:rgba(248,250,252,.92);
  color:#64748b;
  font-size:14px;
}

.recommendation-parent-preview{
  position:fixed;
  inset:0;
  z-index:100000;
  display:none;
  align-items:flex-start;
  justify-content:center;
  overflow:auto;
  padding:36px 18px;
  background:rgba(15,23,42,.38);
  backdrop-filter:blur(10px);
}

.recommendation-parent-preview.show{display:flex;}

.recommendation-public-share-mode{
  min-height:100vh;
  background:#f5f5f7;
}

.recommendation-public-share-mode .auth-overlay,
.recommendation-public-share-mode .merged-header-shell,
.recommendation-public-share-mode .bottom-nav,
.recommendation-public-share-mode .container{
  display:none !important;
}

.recommendation-public-share-mode .recommendation-parent-preview{
  position:static;
  inset:auto;
  display:flex !important;
  min-height:100vh;
  padding:28px 16px;
  background:#f5f5f7;
  backdrop-filter:none;
  overflow-x:hidden;
}

.recommendation-public-share-mode .recommendation-parent-shell{
  box-shadow:none;
  width:100%;
  max-width:none;
  border-radius:0;
}

.recommendation-parent-shell{
  width:min(920px,100%);
  border-radius:32px;
  background:linear-gradient(180deg,#eff6ff,#fff 38%);
  box-shadow:0 30px 90px rgba(15,23,42,.24);
  padding:28px;
}

.recommendation-parent-shell.recommendation-apple-shell{
  width:min(1040px,100%);
  padding:28px;
  background:#f5f5f7;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","PingFang SC",sans-serif;
}

.recommendation-parent-hero{
  position:relative;
  overflow:hidden;
  padding:34px 36px;
  border-radius:34px;
  background:
    radial-gradient(circle at 88% 10%, rgba(0,113,227,.16), transparent 28%),
    linear-gradient(135deg,#fff 0%,#eef6ff 100%);
  border:1px solid rgba(255,255,255,.76);
  box-shadow:0 22px 60px rgba(15,23,42,.08);
  margin-bottom:18px;
}

.recommendation-parent-hero.has-photo{
  padding-right:230px;
}

.recommendation-parent-hero::after{
  content:"";
  position:absolute;
  right:30px;
  bottom:-52px;
  width:180px;
  height:180px;
  border-radius:48px;
  background:linear-gradient(135deg,rgba(0,113,227,.12),rgba(255,255,255,.40));
  transform:rotate(18deg);
}

.recommendation-parent-hero > *{
  position:relative;
  z-index:1;
}

.recommendation-parent-student-photo{
  position:absolute;
  right:34px;
  top:34px;
  z-index:2;
  width:156px;
  height:156px;
  overflow:hidden;
  border-radius:34px;
  background:rgba(255,255,255,.72);
  border:7px solid rgba(255,255,255,.86);
  box-shadow:0 22px 54px rgba(15,23,42,.14);
  transform:rotate(2deg);
}

.recommendation-parent-student-photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.recommendation-parent-kicker{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(0,113,227,.10);
  color:#0071e3;
  font-size:12px;
  font-weight:900;
  letter-spacing:.10em;
}

.recommendation-parent-hero h2{
  margin:14px 0 10px;
  color:#1d1d1f;
  font-size:clamp(30px,4.4vw,48px);
  line-height:1.08;
  letter-spacing:-.045em;
}

.recommendation-parent-hero p{
  max-width:720px;
  margin:0;
  color:#64748b;
  font-size:16px;
  line-height:1.65;
  font-weight:650;
}

.recommendation-parent-toolbar{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  margin-top:18px;
}

.recommendation-parent-projects{
  display:grid;
  gap:16px;
}

.recommendation-project-card{
  display:grid;
  grid-template-columns:minmax(240px, 36%) minmax(0, 1fr);
  gap:18px;
  padding:18px;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 18px 44px rgba(15,23,42,.07);
}

.recommendation-project-card.compact{
  grid-template-columns:1fr;
  min-width:300px;
}

.recommendation-project-card .recommendation-cover{
  aspect-ratio:16 / 10;
  border-radius:24px;
  min-height:190px;
}

.recommendation-project-card.compact .recommendation-cover{
  min-height:150px;
}

.recommendation-project-body{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.recommendation-project-body h3{
  margin:6px 0 8px;
  font-size:24px;
  line-height:1.18;
  letter-spacing:-.025em;
  color:#1d1d1f;
}

.recommendation-project-subtitle{
  color:#64748b;
  font-size:13px;
  font-weight:760;
  line-height:1.5;
}

.recommendation-project-reason{
  margin:12px 0 0;
  color:#334155;
  font-size:14px;
  line-height:1.7;
  font-weight:650;
}

.recommendation-project-child-note{
  margin:12px 0 0;
  padding:12px 14px;
  border-radius:18px;
  background:linear-gradient(135deg,rgba(0,113,227,.075),rgba(255,255,255,.94));
  border:1px solid rgba(0,113,227,.12);
  color:#334155;
  font-size:13px;
  line-height:1.62;
}

.recommendation-project-child-note strong{
  display:block;
  margin-bottom:4px;
  color:#0071e3;
  font-size:12px;
  font-weight:900;
}

.recommendation-parent-note{
  margin-top:18px;
  padding:16px 18px;
  border-radius:22px;
  background:#fff;
  color:#64748b;
  font-size:13px;
  line-height:1.65;
  border:1px solid rgba(148,163,184,.14);
}

.recommendation-share-item{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:stretch;
}

.recommendation-share-main{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:14px;
  align-items:center;
  min-width:0;
}

.recommendation-share-copy{
  min-width:0;
}

.recommendation-share-photo{
  width:92px;
  height:92px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:24px;
  background:
    radial-gradient(circle at 28% 16%, rgba(0,113,227,.18), transparent 36%),
    linear-gradient(135deg,#eef6ff,#fff 58%,#eaf4ff);
  border:1px solid rgba(0,113,227,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.86), 0 14px 30px rgba(15,23,42,.055);
  color:#0071e3;
  font-size:22px;
  font-weight:900;
  letter-spacing:-.04em;
}

.recommendation-share-photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.recommendation-share-photo-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}

.recommendation-share-photo-actions .recommendation-secondary,
.recommendation-share-photo-actions .recommendation-danger{
  min-height:32px;
  padding:7px 12px;
  font-size:12px;
}

.recommendation-share-list-modern{
  gap:16px;
}

.recommendation-share-search-tools{
  display:flex;
  align-items:center;
  gap:10px;
  margin:16px 0 18px;
  padding:10px;
  border:1px solid rgba(148,163,184,.16);
  border-radius:22px;
  background:rgba(248,250,252,.88);
}

.recommendation-share-search-tools input{
  flex:1;
  min-width:220px;
  height:46px;
  border:1px solid rgba(203,213,225,.72);
  border-radius:16px;
  background:#fff;
  color:#1d1d1f;
  font-size:14px;
  font-weight:700;
}

.recommendation-share-search-tools input:focus{
  border-color:rgba(0,113,227,.55);
  box-shadow:0 0 0 4px rgba(0,113,227,.10);
  outline:none;
}

.recommendation-share-search-tools .recommendation-muted{
  flex:0 0 auto;
  font-size:12px;
  font-weight:800;
}

#recommendationPanel_shares .recommendation-card{
  background:
    radial-gradient(circle at 92% 8%,rgba(0,113,227,.055),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.96),rgba(250,252,255,.90));
}

#recommendationPanel_shares .recommendation-explain-card{
  margin-bottom:16px;
  padding:12px 16px;
  border-radius:18px;
  background:rgba(245,249,255,.82);
  border-color:rgba(0,113,227,.10);
  box-shadow:none;
}

.recommendation-share-list-modern .recommendation-share-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:18px;
  align-items:stretch;
  padding:18px;
  border-radius:28px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(248,251,255,.88)),
    #fff;
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 18px 44px rgba(15,23,42,.06);
}

.recommendation-share-select-row{
  grid-column:1 / -1;
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  padding:0 0 10px;
  color:#0071e3;
  font-size:13px;
  font-weight:850;
}

.recommendation-share-select-row input{
  flex:0 0 auto;
  width:18px;
  height:18px;
  accent-color:#0071e3;
}

.recommendation-share-list-modern .recommendation-share-main{
  grid-template-columns:116px minmax(0,1fr);
  gap:18px;
  align-items:stretch;
}

.recommendation-share-photo-stack{
  display:flex;
  flex-direction:column;
  gap:9px;
  min-width:0;
}

.recommendation-share-list-modern .recommendation-share-photo{
  width:116px;
  height:116px;
  border-radius:28px;
  font-size:28px;
}

.recommendation-share-photo-row{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.recommendation-share-photo-btn,
.recommendation-share-photo-remove{
  min-height:30px;
  border:0;
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  font-weight:850;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.recommendation-share-photo-btn{
  background:rgba(0,113,227,.08);
  color:#0071e3;
}

.recommendation-share-photo-remove{
  background:rgba(255,45,85,.08);
  color:#e11d48;
}

.recommendation-share-photo-btn:hover,
.recommendation-share-photo-remove:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(15,23,42,.08);
}

.recommendation-share-kicker{
  color:#0071e3;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.recommendation-share-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-top:5px;
}

.recommendation-share-title{
  min-width:0;
  color:#111827;
  font-size:18px;
  line-height:1.28;
  font-weight:900;
  letter-spacing:-.02em;
}

.recommendation-share-child-note{
  margin-top:9px;
  padding:10px 12px;
  border-radius:16px;
  background:rgba(0,113,227,.055);
  border:1px solid rgba(0,113,227,.10);
  color:#475569;
  font-size:13px;
  line-height:1.55;
  font-weight:700;
}

.recommendation-share-child-note span{
  color:#0071e3;
  font-weight:900;
}

.recommendation-share-intro-editor{
  grid-column:1 / -1;
  margin-top:2px;
  background:
    radial-gradient(circle at 8% 0%,rgba(0,113,227,.08),transparent 34%),
    rgba(248,251,255,.94);
}

.recommendation-share-intro-editor textarea{
  width:100%;
  min-height:118px;
  resize:vertical;
  line-height:1.65;
}

.recommendation-share-intro-editor .recommendation-editor-hint{
  color:#64748b;
  font-size:12px;
  line-height:1.55;
}

.recommendation-share-item-note-editor{
  grid-column:1 / -1;
  background:
    radial-gradient(circle at 8% 0%,rgba(52,199,89,.08),transparent 34%),
    rgba(248,251,255,.94);
}

.recommendation-share-item-note-editor .recommendation-form-grid{
  grid-template-columns:1fr;
}

.recommendation-share-item-note-row{
  padding:12px;
  border-radius:18px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(148,163,184,.14);
}

.recommendation-share-item-note-row strong{
  display:block;
  color:#111827;
  font-size:14px;
  font-weight:900;
}

.recommendation-share-item-note-row em{
  display:block;
  margin:3px 0 9px;
  color:#64748b;
  font-size:12px;
  font-style:normal;
  line-height:1.45;
}

.recommendation-share-item-note-row textarea{
  width:100%;
  min-height:92px;
  resize:vertical;
  line-height:1.62;
}

.recommendation-share-status{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(0,113,227,.08);
  color:#0071e3;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}

.recommendation-share-meta-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-top:12px;
}

.recommendation-share-metric{
  min-width:0;
  padding:10px 11px;
  border-radius:16px;
  background:rgba(245,247,251,.92);
  border:1px solid rgba(148,163,184,.12);
}

.recommendation-share-metric span{
  display:block;
  color:#64748b;
  font-size:11px;
  font-weight:800;
}

.recommendation-share-metric strong{
  display:block;
  margin-top:2px;
  color:#1d1d1f;
  font-size:15px;
  line-height:1.2;
  font-weight:900;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.recommendation-share-link-pill{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:9px;
  align-items:center;
  margin-top:12px;
  padding:10px 12px;
  border-radius:18px;
  background:linear-gradient(135deg,rgba(0,113,227,.075),rgba(255,255,255,.92));
  border:1px solid rgba(0,113,227,.12);
}

.recommendation-share-link-pill span{
  color:#0071e3;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}

.recommendation-share-link-pill strong{
  min-width:0;
  color:#334155;
  font-size:12.5px;
  font-weight:750;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.recommendation-share-side{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:12px;
  padding:14px;
  border-radius:24px;
  background:
    radial-gradient(circle at 12% 10%,rgba(0,113,227,.10),transparent 36%),
    linear-gradient(180deg,rgba(248,251,255,.96),rgba(255,255,255,.88));
  border:1px solid rgba(148,163,184,.14);
}

.recommendation-share-side-title{
  color:#111827;
  font-size:14px;
  font-weight:900;
  letter-spacing:-.01em;
}

.recommendation-share-action-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.recommendation-share-action{
  min-height:74px;
  border:1px solid rgba(148,163,184,.16);
  border-radius:22px;
  padding:12px;
  background:rgba(255,255,255,.86);
  color:#0071e3;
  font-size:13px;
  line-height:1.25;
  font-weight:900;
  cursor:pointer;
  text-align:left;
  box-shadow:0 10px 24px rgba(15,23,42,.045);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.recommendation-share-action small{
  display:block;
  margin-top:5px;
  color:#64748b;
  font-size:11px;
  font-weight:750;
}

.recommendation-share-action.primary{
  background:linear-gradient(135deg,#0071e3,#2997ff);
  color:#fff;
  border-color:rgba(0,113,227,.22);
  box-shadow:0 16px 34px rgba(0,113,227,.20);
}

.recommendation-share-action.primary small{
  color:rgba(255,255,255,.82);
}

.recommendation-share-action.future{
  cursor:not-allowed;
  color:#94a3b8;
  background:rgba(248,250,252,.76);
  box-shadow:none;
}

.recommendation-share-action:not(:disabled):hover{
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(15,23,42,.08);
  border-color:rgba(0,113,227,.22);
}

.recommendation-share-action:not(:disabled):active{
  transform:translateY(1px) scale(.985);
}

.recommendation-parent-head{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  margin-bottom:18px;
}

.recommendation-parent-head h2{
  margin:0;
  color:#111827;
  font-size:30px;
  letter-spacing:-.03em;
}

.recommendation-parent-head p{
  margin:8px 0 0;
  color:#64748b;
  line-height:1.6;
}

.recommendation-parent-item{
  padding:20px;
  border-radius:24px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(148,163,184,.20);
  margin-top:14px;
}

.recommendation-parent-item h3{
  margin:0 0 8px;
  font-size:22px;
}

.recommendation-parent-reason{
  padding:14px 16px;
  margin:14px 0;
  border-radius:18px;
  background:#f8fafc;
  color:#334155;
  line-height:1.65;
}

.recommendation-stats-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:12px;
}

.recommendation-stat{
  padding:18px;
  border-radius:20px;
  background:rgba(255,255,255,.90);
  border:1px solid rgba(148,163,184,.18);
}

.recommendation-stat strong{
  display:block;
  font-size:26px;
  color:#0071e3;
}

.recommendation-aiops-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
  padding:22px;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(245,247,251,.88));
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 20px 54px rgba(15,23,42,.06);
}

.recommendation-aiops-kicker{
  display:inline-flex;
  margin-bottom:8px;
  color:#0071e3;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
}

.recommendation-aiops-header h3{
  margin:0;
  color:#111827;
  font-size:28px;
  letter-spacing:-.03em;
}

.recommendation-aiops-header p{
  margin:8px 0 0;
  max-width:760px;
  color:#64748b;
  font-size:15px;
  line-height:1.65;
}

.recommendation-aiops-status{
  margin:0 0 16px;
  padding:12px 14px;
  border-radius:18px;
  color:#475569;
  background:#f5f5f7;
  border:1px solid rgba(148,163,184,.18);
  font-size:14px;
}

.recommendation-aiops-status.error{
  color:#9f1239;
  background:#fff1f2;
  border-color:#fecdd3;
}

.recommendation-aiops-overview{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-bottom:18px;
}

.recommendation-aiops-metric{
  padding:18px;
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 18px 48px rgba(15,23,42,.06);
}

.recommendation-aiops-metric span{
  display:block;
  color:#64748b;
  font-size:13px;
  font-weight:700;
}

.recommendation-aiops-metric strong{
  display:block;
  margin-top:8px;
  color:#111827;
  font-size:30px;
  line-height:1;
  letter-spacing:-.04em;
}

.recommendation-aiops-metric em{
  display:block;
  margin-top:8px;
  color:#94a3b8;
  font-style:normal;
  font-size:12px;
}

.recommendation-aiops-grid{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);
  gap:18px;
}

.recommendation-aiops-card{
  min-width:0;
}

.recommendation-aiops-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.recommendation-aiops-card-head h3{
  margin:0;
  color:#111827;
  font-size:20px;
  letter-spacing:-.02em;
}

.recommendation-aiops-card-head span{
  color:#94a3b8;
  font-size:12px;
  font-weight:700;
}

.recommendation-aiops-list{
  display:grid;
  gap:10px;
}

.recommendation-aiops-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:14px;
  border-radius:18px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.14);
}

.recommendation-aiops-row-title{
  min-width:0;
}

.recommendation-aiops-row-title strong{
  display:block;
  color:#111827;
  font-size:15px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.recommendation-aiops-row-title span{
  display:block;
  margin-top:4px;
  color:#64748b;
  font-size:12px;
  line-height:1.45;
}

.recommendation-aiops-row-meta{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}

.recommendation-aiops-level{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
}

.recommendation-aiops-level.hot{
  color:#c2410c;
  background:#fff1f2;
}

.recommendation-aiops-level.high{
  color:#c66a00;
  background:#fff4e5;
}

.recommendation-aiops-level.medium{
  color:#0071e3;
  background:#eaf2ff;
}

.recommendation-aiops-level.low,
.recommendation-aiops-level.unknown{
  color:#64748b;
  background:#eef2f7;
}

.recommendation-aiops-score{
  color:#111827;
  font-size:13px;
  font-weight:800;
}

.recommendation-aiops-funnel{
  display:grid;
  gap:12px;
}

.recommendation-aiops-funnel-step{
  display:grid;
  gap:7px;
}

.recommendation-aiops-funnel-label{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:#475569;
  font-size:13px;
  font-weight:800;
}

.recommendation-aiops-funnel-track{
  height:10px;
  overflow:hidden;
  border-radius:999px;
  background:#edf2f7;
}

.recommendation-aiops-funnel-fill{
  height:100%;
  width:0;
  border-radius:inherit;
  background:linear-gradient(90deg,#0071e3,#34c759);
}

.recommendation-aiops-insights{
  display:grid;
  gap:12px;
}

.recommendation-aiops-insight{
  padding:14px;
  border-radius:18px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.14);
}

.recommendation-aiops-insight span{
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:800;
}

.recommendation-aiops-insight strong{
  display:block;
  margin-top:6px;
  color:#111827;
  font-size:15px;
}

.recommendation-aiops-insight p{
  margin:8px 0 0;
  color:#64748b;
  font-size:13px;
  line-height:1.6;
}

.recommendation-aiops-followup-card{
  margin-bottom:18px;
}

.recommendation-ai-followup-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}

.recommendation-ai-followup-bucket{
  padding:12px;
  border-radius:18px;
  border:1px solid rgba(148,163,184,.14);
  background:#f8fafc;
}

.recommendation-ai-followup-bucket span{
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:800;
}

.recommendation-ai-followup-bucket strong{
  display:block;
  margin-top:6px;
  color:#111827;
  font-size:24px;
  line-height:1;
}

.recommendation-ai-followup-bucket.must{
  background:#fff1f2;
  border-color:#fecdd3;
}

.recommendation-ai-followup-bucket.high{
  background:#fff7ed;
  border-color:#fed7aa;
}

.recommendation-ai-followup-bucket.medium{
  background:#eaf2ff;
  border-color:#bfdbfe;
}

.recommendation-ai-followup-bucket.low{
  background:#f5f5f7;
  border-color:#e5e7eb;
}

.recommendation-ai-followup-list{
  display:grid;
  gap:12px;
}

.recommendation-ai-followup-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);
  gap:14px;
  padding:16px;
  border-radius:20px;
  border:1px solid rgba(148,163,184,.16);
  background:#fff;
  box-shadow:0 14px 34px rgba(15,23,42,.05);
}

.recommendation-ai-followup-main{
  min-width:0;
}

.recommendation-ai-followup-title{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:8px;
}

.recommendation-ai-followup-title strong{
  color:#111827;
  font-size:16px;
}

.recommendation-ai-followup-action{
  margin:8px 0 0;
  color:#334155;
  font-size:14px;
  line-height:1.6;
}

.recommendation-ai-followup-script{
  padding:12px;
  border-radius:16px;
  color:#475569;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.14);
  font-size:13px;
  line-height:1.7;
}

.recommendation-ai-followup-script button{
  margin-top:10px;
}

.recommendation-conversion-script-pack{
  margin-top:12px;
  padding:12px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(148,163,184,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}

.recommendation-conversion-script-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}

.recommendation-conversion-script-head span{
  color:#64748b;
  font-size:12px;
  font-weight:800;
}

.recommendation-conversion-script-type{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:4px 10px;
  border-radius:999px;
  color:#0f172a;
  background:#f5f5f7;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}

.recommendation-conversion-script-type.understand{
  color:#0071e3;
  background:#eaf2ff;
}

.recommendation-conversion-script-type.value_explain{
  color:#2563eb;
  background:#eff6ff;
}

.recommendation-conversion-script-type.signup_push{
  color:#15803d;
  background:#e9f9ee;
}

.recommendation-conversion-script-type.hot_close{
  color:#be123c;
  background:#fff1f2;
}

.recommendation-conversion-script-type.loss_recovery{
  color:#92400e;
  background:#fff7ed;
}

.recommendation-conversion-script-text{
  margin:0;
  color:#334155;
  font-size:13px;
  line-height:1.72;
  white-space:pre-line;
}

.miniapp-share-hub{
  display:grid;
  gap:18px;
}

.miniapp-share-hub-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:22px;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(245,247,251,.90));
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 20px 54px rgba(15,23,42,.06);
}

.miniapp-share-hub-header h3{
  margin:0;
  color:#111827;
  font-size:28px;
  letter-spacing:-.03em;
}

.miniapp-share-hub-header p{
  margin:8px 0 0;
  max-width:780px;
  color:#64748b;
  font-size:15px;
  line-height:1.65;
}

.miniapp-share-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}

.miniapp-share-stat-card,
.miniapp-share-task-card,
.miniapp-share-detail,
.miniapp-share-record{
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 18px 48px rgba(15,23,42,.055);
}

.miniapp-share-stat-card{
  padding:18px;
}

.miniapp-share-stat-card span{
  display:block;
  color:#64748b;
  font-size:13px;
  font-weight:800;
}

.miniapp-share-stat-card strong{
  display:block;
  margin-top:8px;
  color:#111827;
  font-size:30px;
  line-height:1;
  letter-spacing:-.04em;
}

.miniapp-share-stat-card em{
  display:block;
  margin-top:8px;
  color:#94a3b8;
  font-style:normal;
  font-size:12px;
}

.miniapp-share-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding:8px;
  border-radius:20px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-share-tab{
  min-height:40px;
  border:0;
  border-radius:999px;
  padding:0 16px;
  background:transparent;
  color:#475569;
  font-size:14px;
  font-weight:850;
  cursor:pointer;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}

.miniapp-share-tab.active,
.miniapp-share-tab:hover{
  background:#0071e3;
  color:#fff;
}

.miniapp-share-tab:active{
  transform:scale(.97);
}

.miniapp-share-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.48fr);
  gap:18px;
  align-items:start;
}

.miniapp-share-task-list{
  display:grid;
  gap:12px;
}

.miniapp-share-task-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:16px;
}

.miniapp-share-task-card.active{
  border-color:rgba(0,113,227,.34);
  box-shadow:0 20px 54px rgba(0,113,227,.10);
}

.miniapp-share-task-title{
  min-width:0;
}

.miniapp-share-task-title strong{
  display:block;
  color:#111827;
  font-size:16px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.miniapp-share-task-title span{
  display:block;
  margin-top:5px;
  color:#64748b;
  font-size:12.5px;
  line-height:1.5;
}

.miniapp-share-task-meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:10px;
}

.miniapp-share-tag{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:4px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:850;
  background:#f5f5f7;
  color:#64748b;
}

.miniapp-share-tag.ready,
.miniapp-share-tag.feedback{
  background:#eaf2ff;
  color:#0071e3;
}

.miniapp-share-tag.sent,
.miniapp-share-tag.recommend{
  background:#e9f9ee;
  color:#1f9d55;
}

.miniapp-share-tag.draft{
  background:#f5f5f7;
  color:#64748b;
}

.miniapp-share-tag.poster{
  background:#f2eeff;
  color:#5856d6;
}

.miniapp-share-detail,
.miniapp-share-record{
  padding:18px;
}

.miniapp-share-detail h4,
.miniapp-share-record h4{
  margin:0 0 10px;
  color:#111827;
  font-size:18px;
  letter-spacing:-.02em;
}

.miniapp-share-detail-section{
  margin-top:14px;
  padding:14px;
  border-radius:18px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-share-detail-section span{
  display:block;
  margin-bottom:8px;
  color:#64748b;
  font-size:12px;
  font-weight:850;
}

.miniapp-share-detail-section pre,
.miniapp-share-html-preview{
  margin:0;
  white-space:pre-wrap;
  word-break:break-word;
  color:#334155;
  font-size:13px;
  line-height:1.65;
  font-family:inherit;
}

.miniapp-share-image-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.miniapp-share-image-grid img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:16px;
  background:#eef2f7;
  border:1px solid rgba(148,163,184,.16);
}

.miniapp-share-course-list{
  display:grid;
  gap:10px;
}

.miniapp-share-course-card{
  padding:12px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-share-course-card strong{
  display:block;
  color:#111827;
  font-size:14px;
}

.miniapp-share-course-card p{
  margin:6px 0 0;
  color:#64748b;
  font-size:12.5px;
  line-height:1.55;
}

.miniapp-share-record-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.miniapp-share-record-item{
  padding:12px;
  border-radius:16px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-share-record-item span{
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:800;
}

.miniapp-share-record-item strong{
  display:block;
  margin-top:4px;
  color:#111827;
  font-size:18px;
}

.miniapp-share-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-top:14px;
}

.miniapp-share-pagination span{
  color:#64748b;
  font-size:13px;
  font-weight:800;
}

.miniapp-share-reserved-note{
  margin-top:12px;
  padding:10px 12px;
  border-radius:16px;
  color:#64748b;
  background:#f5f5f7;
  font-size:12.5px;
  line-height:1.55;
}

.miniapp-growth-action-panel{
  display:grid;
  gap:14px;
  padding:22px;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(248,250,252,.92));
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 20px 54px rgba(15,23,42,.06);
}

.miniapp-growth-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.miniapp-growth-head h4{
  margin:0;
  color:#111827;
  font-size:22px;
  letter-spacing:-.03em;
}

.miniapp-growth-head p{
  margin:6px 0 0;
  color:#64748b;
  font-size:13px;
  line-height:1.6;
}

.miniapp-growth-source{
  flex:0 0 auto;
  padding:7px 11px;
  border-radius:999px;
  background:#eaf2ff;
  color:#0071e3;
  font-size:12px;
  font-weight:900;
}

.miniapp-growth-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}

.miniapp-growth-card{
  min-height:128px;
  padding:14px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(148,163,184,.14);
  box-shadow:0 14px 34px rgba(15,23,42,.045);
}

.miniapp-growth-card span{
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:900;
}

.miniapp-growth-card strong{
  display:block;
  margin-top:7px;
  color:#111827;
  font-size:22px;
  line-height:1.1;
}

.miniapp-growth-card p{
  margin:8px 0 0;
  color:#64748b;
  font-size:12.5px;
  line-height:1.55;
}

.miniapp-growth-card.hot{
  border-color:rgba(255,59,48,.20);
  background:#fff8f7;
}

.miniapp-growth-card.high{
  border-color:rgba(255,149,0,.22);
  background:#fffaf2;
}

.miniapp-growth-card.roi{
  border-color:rgba(52,199,89,.20);
  background:#f7fff9;
}

.miniapp-growth-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.miniapp-growth-action-item{
  padding:14px;
  border-radius:18px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-growth-action-item strong{
  display:block;
  color:#111827;
  font-size:14px;
}

.miniapp-growth-action-item span{
  display:inline-flex;
  margin-top:8px;
  padding:4px 9px;
  border-radius:999px;
  background:#eaf2ff;
  color:#0071e3;
  font-size:11px;
  font-weight:900;
}

.miniapp-growth-action-item p{
  margin:8px 0 0;
  color:#475569;
  font-size:12.5px;
  line-height:1.58;
}

.miniapp-execution-console{
  display:grid;
  gap:14px;
  padding:22px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(148,163,184,.16);
  box-shadow:0 20px 54px rgba(15,23,42,.06);
}

.miniapp-execution-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.miniapp-execution-head h4{
  margin:0;
  color:#111827;
  font-size:22px;
  letter-spacing:-.03em;
}

.miniapp-execution-head p{
  margin:6px 0 0;
  color:#64748b;
  font-size:13px;
  line-height:1.6;
}

.miniapp-execution-progress{
  flex:0 0 auto;
  padding:7px 11px;
  border-radius:999px;
  background:#e9f9ee;
  color:#1f9d55;
  font-size:12px;
  font-weight:900;
}

.miniapp-execution-sections{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.miniapp-execution-section{
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:18px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-execution-section-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#111827;
  font-size:14px;
  font-weight:900;
}

.miniapp-execution-section-title span{
  color:#64748b;
  font-size:12px;
}

.miniapp-execution-item{
  display:grid;
  gap:10px;
  padding:12px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-execution-item.done{
  background:#f7fff9;
  border-color:rgba(52,199,89,.22);
}

.miniapp-execution-item.skipped{
  background:#f5f5f7;
  opacity:.78;
}

.miniapp-execution-title{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}

.miniapp-execution-title strong{
  color:#111827;
  font-size:14px;
}

.miniapp-execution-tag{
  display:inline-flex;
  min-height:24px;
  align-items:center;
  padding:3px 8px;
  border-radius:999px;
  background:#eaf2ff;
  color:#0071e3;
  font-size:11px;
  font-weight:900;
}

.miniapp-execution-tag.P0{
  background:#fff1f0;
  color:#ff3b30;
}

.miniapp-execution-tag.P1{
  background:#fff4e5;
  color:#ff9500;
}

.miniapp-execution-tag.P2{
  background:#eaf2ff;
  color:#0071e3;
}

.miniapp-execution-script{
  margin:0;
  padding:10px;
  border-radius:14px;
  background:#f8fafc;
  color:#334155;
  font-size:12.5px;
  line-height:1.6;
  white-space:pre-line;
}

.miniapp-execution-checklist{
  margin:0;
  padding-left:18px;
  color:#64748b;
  font-size:12.5px;
  line-height:1.6;
}

.miniapp-execution-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.miniapp-revenue-panel{
  display:grid;
  gap:14px;
  padding:22px;
  border-radius:24px;
  background:linear-gradient(135deg,#fff,rgba(255,251,242,.92));
  border:1px solid rgba(255,149,0,.16);
  box-shadow:0 20px 54px rgba(15,23,42,.06);
}

.miniapp-revenue-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.miniapp-revenue-head h4{
  margin:0;
  color:#111827;
  font-size:22px;
  letter-spacing:-.03em;
}

.miniapp-revenue-head p{
  margin:6px 0 0;
  color:#64748b;
  font-size:13px;
  line-height:1.6;
}

.miniapp-revenue-source{
  flex:0 0 auto;
  padding:7px 11px;
  border-radius:999px;
  background:#fff4e5;
  color:#c26a00;
  font-size:12px;
  font-weight:900;
}

.miniapp-revenue-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}

.miniapp-revenue-card{
  min-height:126px;
  padding:14px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(148,163,184,.14);
  box-shadow:0 14px 34px rgba(15,23,42,.045);
}

.miniapp-revenue-card span{
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:900;
}

.miniapp-revenue-card strong{
  display:block;
  margin-top:7px;
  color:#111827;
  font-size:21px;
  line-height:1.15;
}

.miniapp-revenue-card p{
  margin:8px 0 0;
  color:#64748b;
  font-size:12.5px;
  line-height:1.55;
}

.miniapp-revenue-card.premium{
  border-color:rgba(255,59,48,.18);
  background:#fff8f7;
}

.miniapp-revenue-card.high{
  border-color:rgba(255,149,0,.22);
  background:#fffaf2;
}

.miniapp-revenue-card.ltv{
  border-color:rgba(88,86,214,.18);
  background:#f7f6ff;
}

.miniapp-revenue-sections{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.miniapp-revenue-section{
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:18px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-revenue-section-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#111827;
  font-size:14px;
  font-weight:900;
}

.miniapp-revenue-section-title span{
  color:#64748b;
  font-size:12px;
}

.miniapp-revenue-item{
  display:grid;
  gap:8px;
  padding:12px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-revenue-item strong{
  color:#111827;
  font-size:14px;
}

.miniapp-revenue-item p{
  margin:0;
  color:#64748b;
  font-size:12.5px;
  line-height:1.58;
}

.miniapp-revenue-tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.miniapp-revenue-tag{
  display:inline-flex;
  min-height:24px;
  align-items:center;
  padding:3px 8px;
  border-radius:999px;
  background:#eaf2ff;
  color:#0071e3;
  font-size:11px;
  font-weight:900;
}

.miniapp-revenue-tag.premium{
  background:#fff1f0;
  color:#ff3b30;
}

.miniapp-revenue-tag.high{
  background:#fff4e5;
  color:#ff9500;
}

.miniapp-revenue-tag.medium{
  background:#eaf2ff;
  color:#0071e3;
}

.miniapp-revenue-tag.low{
  background:#f5f5f7;
  color:#64748b;
}

.miniapp-agent-panel{
  display:grid;
  gap:14px;
  padding:22px;
  border-radius:24px;
  background:linear-gradient(135deg,#fff,rgba(242,238,255,.72));
  border:1px solid rgba(88,86,214,.14);
  box-shadow:0 20px 54px rgba(15,23,42,.06);
}

.miniapp-agent-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.miniapp-agent-head h4{
  margin:0;
  color:#111827;
  font-size:22px;
  letter-spacing:-.03em;
}

.miniapp-agent-head p{
  margin:6px 0 0;
  color:#64748b;
  font-size:13px;
  line-height:1.6;
}

.miniapp-agent-source{
  flex:0 0 auto;
  padding:7px 11px;
  border-radius:999px;
  background:#f2eeff;
  color:#5856d6;
  font-size:12px;
  font-weight:900;
}

.miniapp-agent-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.miniapp-agent-card{
  min-height:128px;
  padding:14px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(148,163,184,.14);
  box-shadow:0 14px 34px rgba(15,23,42,.045);
}

.miniapp-agent-card span{
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:900;
}

.miniapp-agent-card strong{
  display:block;
  margin-top:7px;
  color:#111827;
  font-size:21px;
  line-height:1.15;
}

.miniapp-agent-card p{
  margin:8px 0 0;
  color:#64748b;
  font-size:12.5px;
  line-height:1.55;
}

.miniapp-agent-card.lead{
  border-color:rgba(0,113,227,.18);
  background:#f7fbff;
}

.miniapp-agent-card.conversion{
  border-color:rgba(52,199,89,.18);
  background:#f7fff9;
}

.miniapp-agent-card.teacher{
  border-color:rgba(255,149,0,.20);
  background:#fffaf2;
}

.miniapp-agent-card.revenue{
  border-color:rgba(88,86,214,.18);
  background:#f7f6ff;
}

.miniapp-agent-sections{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.miniapp-agent-section{
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:18px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-agent-section-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#111827;
  font-size:14px;
  font-weight:900;
}

.miniapp-agent-section-title span{
  color:#64748b;
  font-size:12px;
}

.miniapp-agent-item{
  display:grid;
  gap:8px;
  padding:12px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-agent-item strong{
  color:#111827;
  font-size:14px;
}

.miniapp-agent-item p{
  margin:0;
  color:#64748b;
  font-size:12.5px;
  line-height:1.58;
}

.miniapp-agent-tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.miniapp-agent-tag{
  display:inline-flex;
  min-height:24px;
  align-items:center;
  padding:3px 8px;
  border-radius:999px;
  background:#f2eeff;
  color:#5856d6;
  font-size:11px;
  font-weight:900;
}

.miniapp-agent-tag.hot{
  background:#fff1f0;
  color:#ff3b30;
}

.miniapp-agent-tag.high,
.miniapp-agent-tag.P0,
.miniapp-agent-tag.P1{
  background:#fff4e5;
  color:#ff9500;
}

.miniapp-agent-tag.medium,
.miniapp-agent-tag.P2{
  background:#eaf2ff;
  color:#0071e3;
}

.miniapp-agent-tag.low,
.miniapp-agent-tag.P3{
  background:#f5f5f7;
  color:#64748b;
}

.miniapp-autonomous-panel{
  display:grid;
  gap:14px;
  padding:22px;
  border-radius:24px;
  background:linear-gradient(135deg,#fff,rgba(234,242,255,.72));
  border:1px solid rgba(0,113,227,.14);
  box-shadow:0 20px 54px rgba(15,23,42,.06);
}

.miniapp-autonomous-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.miniapp-autonomous-head h4{
  margin:0;
  color:#111827;
  font-size:22px;
  letter-spacing:-.03em;
}

.miniapp-autonomous-head p{
  margin:6px 0 0;
  color:#64748b;
  font-size:13px;
  line-height:1.6;
}

.miniapp-autonomous-source{
  flex:0 0 auto;
  padding:7px 11px;
  border-radius:999px;
  background:#eaf2ff;
  color:#0071e3;
  font-size:12px;
  font-weight:900;
}

.miniapp-autonomous-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}

.miniapp-autonomous-card{
  min-height:126px;
  padding:14px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(148,163,184,.14);
  box-shadow:0 14px 34px rgba(15,23,42,.045);
}

.miniapp-autonomous-card span{
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:900;
}

.miniapp-autonomous-card strong{
  display:block;
  margin-top:7px;
  color:#111827;
  font-size:21px;
  line-height:1.15;
}

.miniapp-autonomous-card p{
  margin:8px 0 0;
  color:#64748b;
  font-size:12.5px;
  line-height:1.55;
}

.miniapp-autonomous-card.lead{
  border-color:rgba(0,113,227,.18);
  background:#f7fbff;
}

.miniapp-autonomous-card.optimize{
  border-color:rgba(52,199,89,.18);
  background:#f7fff9;
}

.miniapp-autonomous-card.teacher{
  border-color:rgba(255,149,0,.20);
  background:#fffaf2;
}

.miniapp-autonomous-card.revenue{
  border-color:rgba(88,86,214,.18);
  background:#f7f6ff;
}

.miniapp-autonomous-card.learning{
  border-color:rgba(255,59,48,.14);
  background:#fff8f7;
}

.miniapp-autonomous-sections{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.miniapp-autonomous-section{
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:18px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-autonomous-section-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#111827;
  font-size:14px;
  font-weight:900;
}

.miniapp-autonomous-section-title span{
  color:#64748b;
  font-size:12px;
}

.miniapp-autonomous-item{
  display:grid;
  gap:8px;
  padding:12px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-autonomous-item strong{
  color:#111827;
  font-size:14px;
}

.miniapp-autonomous-item p{
  margin:0;
  color:#64748b;
  font-size:12.5px;
  line-height:1.58;
}

.miniapp-autonomous-tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.miniapp-autonomous-tag{
  display:inline-flex;
  min-height:24px;
  align-items:center;
  padding:3px 8px;
  border-radius:999px;
  background:#eaf2ff;
  color:#0071e3;
  font-size:11px;
  font-weight:900;
}

.miniapp-autonomous-tag.P0,
.miniapp-autonomous-tag.hot{
  background:#fff1f0;
  color:#ff3b30;
}

.miniapp-autonomous-tag.P1,
.miniapp-autonomous-tag.high{
  background:#fff4e5;
  color:#ff9500;
}

.miniapp-autonomous-tag.P2,
.miniapp-autonomous-tag.medium{
  background:#eaf2ff;
  color:#0071e3;
}

.miniapp-autonomous-tag.P3,
.miniapp-autonomous-tag.low{
  background:#f5f5f7;
  color:#64748b;
}

.miniapp-sharegrowth-panel{
  display:grid;
  gap:14px;
  padding:22px;
  border-radius:24px;
  background:linear-gradient(135deg,#fff,rgba(233,249,238,.78));
  border:1px solid rgba(52,199,89,.14);
  box-shadow:0 20px 54px rgba(15,23,42,.06);
}

.miniapp-sharegrowth-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.miniapp-sharegrowth-head h4{
  margin:0;
  color:#111827;
  font-size:22px;
  letter-spacing:-.03em;
}

.miniapp-sharegrowth-head p{
  margin:6px 0 0;
  color:#64748b;
  font-size:13px;
  line-height:1.6;
}

.miniapp-sharegrowth-source{
  flex:0 0 auto;
  padding:7px 11px;
  border-radius:999px;
  background:#e9f9ee;
  color:#1f9d55;
  font-size:12px;
  font-weight:900;
}

.miniapp-sharegrowth-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}

.miniapp-sharegrowth-card{
  min-height:126px;
  padding:14px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(148,163,184,.14);
  box-shadow:0 14px 34px rgba(15,23,42,.045);
}

.miniapp-sharegrowth-card span{
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:900;
}

.miniapp-sharegrowth-card strong{
  display:block;
  margin-top:7px;
  color:#111827;
  font-size:21px;
  line-height:1.15;
}

.miniapp-sharegrowth-card p{
  margin:8px 0 0;
  color:#64748b;
  font-size:12.5px;
  line-height:1.55;
}

.miniapp-sharegrowth-card.viral{
  border-color:rgba(52,199,89,.20);
  background:#f7fff9;
}

.miniapp-sharegrowth-card.path{
  border-color:rgba(0,113,227,.18);
  background:#f7fbff;
}

.miniapp-sharegrowth-card.trigger{
  border-color:rgba(255,149,0,.20);
  background:#fffaf2;
}

.miniapp-sharegrowth-card.loop{
  border-color:rgba(88,86,214,.18);
  background:#f7f6ff;
}

.miniapp-sharegrowth-sections{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.miniapp-sharegrowth-section{
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:18px;
  background:#f8fafc;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-sharegrowth-section-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#111827;
  font-size:14px;
  font-weight:900;
}

.miniapp-sharegrowth-section-title span{
  color:#64748b;
  font-size:12px;
}

.miniapp-sharegrowth-item{
  display:grid;
  gap:8px;
  padding:12px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(148,163,184,.14);
}

.miniapp-sharegrowth-item strong{
  color:#111827;
  font-size:14px;
}

.miniapp-sharegrowth-item p{
  margin:0;
  color:#64748b;
  font-size:12.5px;
  line-height:1.58;
}

.miniapp-sharegrowth-tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.miniapp-sharegrowth-tag{
  display:inline-flex;
  min-height:24px;
  align-items:center;
  padding:3px 8px;
  border-radius:999px;
  background:#e9f9ee;
  color:#1f9d55;
  font-size:11px;
  font-weight:900;
}

.miniapp-sharegrowth-tag.hot,
.miniapp-sharegrowth-tag.viral{
  background:#fff1f0;
  color:#ff3b30;
}

.miniapp-sharegrowth-tag.high{
  background:#fff4e5;
  color:#ff9500;
}

.miniapp-sharegrowth-tag.medium{
  background:#eaf2ff;
  color:#0071e3;
}

.miniapp-sharegrowth-tag.low{
  background:#f5f5f7;
  color:#64748b;
}

@media (max-width:900px){
  .miniapp-share-hub-header,
  .miniapp-share-task-card{
    grid-template-columns:1fr;
    flex-direction:column;
  }

  .miniapp-share-stats{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .miniapp-share-layout{
    grid-template-columns:1fr;
  }

  .miniapp-growth-grid,
  .miniapp-growth-actions,
  .miniapp-execution-sections,
  .miniapp-revenue-grid,
  .miniapp-revenue-sections,
  .miniapp-agent-grid,
  .miniapp-agent-sections,
  .miniapp-autonomous-grid,
  .miniapp-autonomous-sections,
  .miniapp-sharegrowth-grid,
  .miniapp-sharegrowth-sections{
    grid-template-columns:1fr;
  }
}

@media (max-width:560px){
  .miniapp-share-stats,
  .miniapp-share-record-grid,
  .miniapp-share-image-grid{
    grid-template-columns:1fr;
  }

  .miniapp-share-task-card{
    align-items:stretch;
  }
}

.recommendation-toast{
  position:fixed;
  left:50%;
  bottom:28px;
  transform:translateX(-50%) translateY(20px);
  opacity:0;
  pointer-events:none;
  z-index:100001;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(15,23,42,.88);
  color:#fff;
  font-size:14px;
  transition:.2s ease;
}

.recommendation-toast.show{
  opacity:1;
  transform:translateX(-50%) translateY(0);
}

/* Recommendation module Apple-like micro interactions */
.recommendation-hero-card,
.recommendation-card,
.recommendation-template-card,
.recommendation-list-item,
.recommendation-sub-item,
.recommendation-option-card,
.recommendation-parent-item,
.recommendation-project-card,
.recommendation-stat{
  cursor:pointer;
  transition:
    transform .22s cubic-bezier(.2,.8,.2,1),
    box-shadow .22s cubic-bezier(.2,.8,.2,1),
    border-color .22s ease,
    background .22s ease;
  transform-origin:center;
  will-change:transform;
}

.recommendation-hero-card:hover,
.recommendation-card:hover,
.recommendation-template-card:hover,
.recommendation-list-item:hover,
.recommendation-sub-item:hover,
.recommendation-option-card:hover,
.recommendation-parent-item:hover,
.recommendation-project-card:hover,
.recommendation-stat:hover{
  transform:translateY(-3px);
  border-color:rgba(0,113,227,.18);
  box-shadow:0 24px 56px rgba(15,23,42,.09);
}

.recommendation-hero-card:active,
.recommendation-card:active,
.recommendation-template-card:active,
.recommendation-list-item:active,
.recommendation-sub-item:active,
.recommendation-option-card:active,
.recommendation-parent-item:active,
.recommendation-project-card:active,
.recommendation-stat:active{
  transform:translateY(1px) scale(.986);
  box-shadow:0 14px 34px rgba(15,23,42,.07);
}

.recommendation-tab,
.recommendation-primary,
.recommendation-secondary,
.recommendation-danger,
.recommendation-chip,
.recommendation-option-card{
  transition:
    transform .18s cubic-bezier(.2,.8,.2,1),
    box-shadow .18s ease,
    border-color .18s ease,
    background .18s ease,
    color .18s ease;
}

.recommendation-tab:hover,
.recommendation-primary:hover,
.recommendation-secondary:hover,
.recommendation-danger:hover,
.recommendation-chip:hover{
  transform:translateY(-1px);
}

.recommendation-tab:active,
.recommendation-primary:active,
.recommendation-secondary:active,
.recommendation-danger:active,
.recommendation-chip:active{
  transform:scale(.96);
}

.recommendation-primary:hover{
  box-shadow:0 16px 34px rgba(0,113,227,.22);
}

.recommendation-secondary:hover{
  background:#e0f0ff;
}

.recommendation-public-share-mode .recommendation-secondary:focus,
.recommendation-public-share-mode .recommendation-secondary:focus-visible,
.recommendation-public-share-mode .recommendation-secondary:active{
  background:#eef6ff !important;
  color:#0071e3 !important;
  box-shadow:none !important;
}

.recommendation-public-share-mode .recommendation-secondary.want-to-know,
.recommendation-public-share-mode .recommendation-secondary.want-to-know:hover,
.recommendation-public-share-mode .recommendation-secondary.want-to-know:focus,
.recommendation-public-share-mode .recommendation-secondary.want-to-know:focus-visible,
.recommendation-public-share-mode .recommendation-secondary.want-to-know:active{
  background:#eaf2ff !important;
  color:#0071e3 !important;
}

.recommendation-public-share-mode .recommendation-secondary.want-to-join,
.recommendation-public-share-mode .recommendation-secondary.want-to-join:hover,
.recommendation-public-share-mode .recommendation-secondary.want-to-join:focus,
.recommendation-public-share-mode .recommendation-secondary.want-to-join:focus-visible,
.recommendation-public-share-mode .recommendation-secondary.want-to-join:active{
  background:#e9f9ee !important;
  color:#34c759 !important;
}

.recommendation-public-share-mode .recommendation-secondary.already-joined,
.recommendation-public-share-mode .recommendation-secondary.already-joined:hover,
.recommendation-public-share-mode .recommendation-secondary.already-joined:focus,
.recommendation-public-share-mode .recommendation-secondary.already-joined:focus-visible,
.recommendation-public-share-mode .recommendation-secondary.already-joined:active{
  background:#fff4e5 !important;
  color:#ff9500 !important;
}

.recommendation-public-share-mode .recommendation-secondary.contact-teacher,
.recommendation-public-share-mode .recommendation-secondary.contact-teacher:hover,
.recommendation-public-share-mode .recommendation-secondary.contact-teacher:focus,
.recommendation-public-share-mode .recommendation-secondary.contact-teacher:focus-visible,
.recommendation-public-share-mode .recommendation-secondary.contact-teacher:active{
  background:#f2eeff !important;
  color:#5856d6 !important;
}

.recommendation-action-guide{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:14px 0 4px;
}

.recommendation-action-guide span{
  border-radius:16px;
  padding:9px 11px;
  font-size:12px;
  line-height:1.45;
  font-weight:700;
}

.recommendation-action-guide .want-to-know{
  background:#eaf2ff;
  color:#0071e3;
}

.recommendation-action-guide .want-to-join{
  background:#e9f9ee;
  color:#1f9d4d;
}

.recommendation-action-guide .already-joined{
  background:#fff4e5;
  color:#c66a00;
}

.recommendation-action-guide .contact-teacher{
  background:#f2eeff;
  color:#5856d6;
}

.recommendation-public-share-mode .recommendation-primary:focus{
  box-shadow:0 12px 26px rgba(0,113,227,.18);
}

.recommendation-public-share-mode .recommendation-action-row button{
  -webkit-tap-highlight-color:transparent;
  user-select:none;
}

.recommendation-public-share-mode .recommendation-action-row button:focus{
  outline:none;
}

.recommendation-danger:hover{
  background:#ffe4e6;
}

.recommendation-option-card.active{
  box-shadow:0 18px 44px rgba(0,113,227,.12);
}

@keyframes recommendationTapPop{
  0%{
    transform:translateY(0) scale(1);
  }
  34%{
    transform:translateY(2px) scale(.976);
  }
  68%{
    transform:translateY(-4px) scale(1.012);
  }
  100%{
    transform:translateY(0) scale(1);
  }
}

.recommendation-tap-pop{
  animation:recommendationTapPop .34s cubic-bezier(.2,.8,.2,1);
}

@media (prefers-reduced-motion: reduce){
  .recommendation-hero-card,
  .recommendation-card,
  .recommendation-template-card,
  .recommendation-list-item,
  .recommendation-sub-item,
  .recommendation-option-card,
  .recommendation-parent-item,
  .recommendation-stat,
  .recommendation-tab,
  .recommendation-primary,
  .recommendation-secondary,
  .recommendation-danger,
  .recommendation-chip{
    transition:none !important;
    animation:none !important;
  }
}

@media (max-width:760px){
  .recommendation-page{padding:22px 16px;}
  .recommendation-hero{grid-template-columns:1fr;}
  .recommendation-template-layout{grid-template-columns:1fr;}
  .recommendation-template-main{grid-template-columns:1fr;}
  .recommendation-template-card .recommendation-cover-thumb{
    width:100%;
    height:auto;
    aspect-ratio:16 / 9;
  }
  .recommendation-template-actions{justify-content:flex-start;}
  .recommendation-list-item{grid-template-columns:1fr;}
  .recommendation-sub-item{grid-template-columns:1fr;}
  .recommendation-list-actions{justify-content:flex-start;}
  .recommendation-cover-field{grid-template-columns:1fr;}
  .recommendation-template-list-item{grid-template-columns:1fr;}
  .recommendation-option-card{grid-template-columns:1fr;}
  .recommendation-time-grid{grid-template-columns:1fr;}
  .recommendation-project-card{grid-template-columns:1fr;}
  .recommendation-parent-toolbar{align-items:flex-start;flex-direction:column;}
  .recommendation-parent-hero.has-photo{
    padding-right:24px;
  }
  .recommendation-parent-student-photo{
    position:relative;
    right:auto;
    top:auto;
    width:118px;
    height:118px;
    margin:18px 0 0;
    border-radius:28px;
    transform:none;
  }
  .recommendation-share-search-tools{
    flex-direction:column;
    align-items:stretch;
  }
  .recommendation-share-search-tools input{
    min-width:0;
    width:100%;
  }
  .recommendation-share-search-tools .recommendation-muted{
    text-align:center;
  }
  .recommendation-share-main{
    grid-template-columns:72px minmax(0,1fr);
  }
  .recommendation-share-photo{
    width:72px;
    height:72px;
    border-radius:20px;
    font-size:18px;
  }
  .recommendation-share-list-modern .recommendation-share-item{
    grid-template-columns:1fr;
    padding:14px;
  }
  .recommendation-share-list-modern .recommendation-share-main{
    grid-template-columns:84px minmax(0,1fr);
    gap:12px;
  }
  .recommendation-share-list-modern .recommendation-share-photo{
    width:84px;
    height:84px;
    border-radius:22px;
  }
  .recommendation-share-meta-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .recommendation-share-title-row{
    flex-direction:column;
    align-items:flex-start;
  }
  .recommendation-share-action-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .recommendation-aiops-header{
    flex-direction:column;
    padding:18px;
  }
  .recommendation-aiops-overview{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .recommendation-aiops-grid{
    grid-template-columns:1fr;
  }
  .recommendation-aiops-row{
    grid-template-columns:1fr;
  }
  .recommendation-aiops-row-meta{
    justify-content:flex-start;
  }
  .recommendation-ai-followup-summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .recommendation-ai-followup-item{
    grid-template-columns:1fr;
  }
}

@media (max-width:640px){
  .recommendation-public-share-mode{
    overflow-x:hidden;
  }

  .recommendation-public-share-mode .recommendation-parent-preview{
    padding:0;
  }

  .recommendation-public-share-mode .recommendation-parent-shell.recommendation-apple-shell{
    width:100%;
    min-height:100vh;
    padding:14px;
    border-radius:0;
    background:#f5f5f7;
  }

  .recommendation-public-share-mode #recommendationParentPreviewContent{
    width:100%;
    max-width:100%;
    overflow:hidden;
  }

  .recommendation-public-share-mode .recommendation-parent-hero{
    padding:24px 18px;
    border-radius:28px;
    margin-bottom:14px;
  }

  .recommendation-public-share-mode .recommendation-parent-hero h2{
    font-size:clamp(32px,12vw,44px);
    letter-spacing:-.055em;
  }

  .recommendation-public-share-mode .recommendation-parent-hero p{
    font-size:15px;
    line-height:1.6;
  }

  .recommendation-public-share-mode .recommendation-parent-projects{
    gap:14px;
  }

  .recommendation-public-share-mode .recommendation-project-card,
  .recommendation-public-share-mode .recommendation-project-card.compact{
    grid-template-columns:1fr;
    min-width:0;
    width:100%;
    padding:14px;
    border-radius:26px;
  }

  .recommendation-public-share-mode .recommendation-project-card .recommendation-cover,
  .recommendation-public-share-mode .recommendation-project-card.compact .recommendation-cover{
    min-height:auto;
    aspect-ratio:16 / 10;
    border-radius:22px;
  }

  .recommendation-public-share-mode .recommendation-project-body{
    justify-content:flex-start;
  }

  .recommendation-public-share-mode .recommendation-project-body h3{
    font-size:22px;
  }

  .recommendation-public-share-mode .recommendation-action-row{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
  }

  .recommendation-public-share-mode .recommendation-action-row button{
    width:100%;
    min-height:50px;
    justify-content:center;
    font-size:15px;
  }

  .recommendation-public-share-mode .recommendation-scroll-row{
    display:grid;
    grid-template-columns:1fr;
    overflow:visible;
    padding:0;
  }

  .recommendation-public-share-mode .recommendation-parent-note{
    margin-top:14px;
    border-radius:22px;
  }

  .recommendation-aiops-overview{
    grid-template-columns:1fr;
  }

  .recommendation-aiops-header h3{
    font-size:24px;
  }

  .recommendation-ai-followup-summary{
    grid-template-columns:1fr;
  }
}

@media (prefers-reduced-motion: reduce){
  .recommendation-page *,
  .recommendation-parent-preview *{
    animation:none !important;
    transition:none !important;
    transform:none !important;
  }
}

/* =====================
推荐 H5 家长页 Apple 统一视觉系统：只作用于公开分享页，不改业务逻辑
===================== */
.recommendation-public-share-mode{
  background:#f5f5f7;
  color:#1d1d1f;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","PingFang SC",sans-serif;
  width:100% !important;
  max-width:100vw !important;
  margin:0 !important;
  padding:0 !important;
  overflow-x:hidden;
}

.recommendation-public-share-mode *,
.recommendation-public-share-mode *::before,
.recommendation-public-share-mode *::after{
  box-sizing:border-box;
}

.recommendation-public-share-mode .recommendation-parent-preview{
  background:#f5f5f7;
  padding:28px 20px;
}

.recommendation-public-share-mode .recommendation-parent-shell.recommendation-apple-shell{
  width:min(1120px,100%);
  margin:0 auto;
  padding:0;
  background:#f5f5f7;
  box-shadow:none;
}

.recommendation-public-share-mode #recommendationParentPreviewContent{
  display:grid;
  gap:20px;
}

.recommendation-public-share-mode .recommendation-parent-hero{
  min-height:auto;
  margin:0;
  padding:22px 24px;
  border-radius:22px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(0,0,0,.055);
  box-shadow:0 10px 30px rgba(0,0,0,.055);
}

.recommendation-public-share-mode .recommendation-parent-hero.has-photo{
  padding-right:150px;
}

.recommendation-public-share-mode .recommendation-parent-hero::after{
  width:116px;
  height:116px;
  right:22px;
  bottom:-48px;
  border-radius:32px;
  background:linear-gradient(135deg,rgba(0,113,227,.07),rgba(255,255,255,.32));
}

.recommendation-public-share-mode .recommendation-parent-student-photo{
  right:24px;
  top:24px;
  width:102px;
  height:102px;
  border-radius:24px;
  border:5px solid rgba(255,255,255,.88);
  box-shadow:0 14px 34px rgba(0,0,0,.11);
}

.recommendation-public-share-mode .recommendation-parent-kicker{
  min-height:26px;
  padding:0 10px;
  background:#eaf2ff;
  color:#0071e3;
  font-size:12px;
  letter-spacing:.04em;
  font-weight:800;
}

.recommendation-public-share-mode .recommendation-parent-hero h2{
  max-width:680px;
  margin:12px 0 8px;
  font-size:clamp(28px,4vw,32px);
  line-height:1.12;
  letter-spacing:-.035em;
  font-weight:800;
}

.recommendation-public-share-mode .recommendation-parent-hero p{
  max-width:720px;
  color:#6e6e73;
  font-size:15px;
  line-height:1.58;
  font-weight:500;
}

.recommendation-public-share-mode .recommendation-parent-toolbar{
  align-items:flex-start;
  margin-top:14px;
}

.recommendation-public-share-mode .recommendation-chip-row{
  gap:8px;
}

.recommendation-public-share-mode .recommendation-tag{
  min-height:28px;
  padding:0 10px;
  background:#f5f5f7;
  color:#6e6e73;
  border:1px solid rgba(0,0,0,.055);
  font-size:12px;
  font-weight:700;
}

.recommendation-public-share-mode .recommendation-tag.recommendation-tag-blue{
  background:#eaf2ff;
  color:#0071e3;
  border-color:rgba(0,113,227,.12);
}

.recommendation-public-share-mode .recommendation-tag.recommendation-tag-purple{
  background:#f2eeff;
  color:#5856d6;
  border-color:rgba(88,86,214,.15);
}

.recommendation-public-share-mode .recommendation-tag.recommendation-tag-cyan{
  background:#e9fbfa;
  color:#0f766e;
  border-color:rgba(0,199,190,.16);
}

.recommendation-public-share-mode .recommendation-tag.recommendation-tag-orange{
  background:#fff4e5;
  color:#c2410c;
  border-color:rgba(255,149,0,.18);
}

.recommendation-public-share-mode .recommendation-tag.recommendation-tag-green{
  background:#e9f9ee;
  color:#15803d;
  border-color:rgba(52,199,89,.18);
}

.recommendation-public-share-mode .recommendation-score-tag.score-hot{
  background:#ffe8e3;
  color:#d70015;
  border-color:rgba(255,59,48,.18);
}

.recommendation-public-share-mode .recommendation-score-tag.score-good{
  background:#e9f9ee;
  color:#15803d;
  border-color:rgba(52,199,89,.18);
}

.recommendation-public-share-mode .recommendation-score-tag.score-medium{
  background:#fff4e5;
  color:#b45309;
  border-color:rgba(255,149,0,.18);
}

.recommendation-public-share-mode .recommendation-score-tag.score-low{
  background:#f5f5f7;
  color:#6e6e73;
  border-color:rgba(0,0,0,.06);
}

.recommendation-public-share-mode .recommendation-parent-projects{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  align-items:start;
}

.recommendation-public-share-mode .recommendation-project-card,
.recommendation-public-share-mode .recommendation-project-card.compact{
  border-radius:22px;
  padding:16px;
  gap:16px;
  background:#fff;
  border:1px solid rgba(0,0,0,.055);
  box-shadow:0 10px 30px rgba(0,0,0,.055);
}

.recommendation-public-share-mode .recommendation-project-card.featured{
  grid-column:1 / -1;
  grid-template-columns:minmax(280px,38%) minmax(0,1fr);
  padding:18px;
}

.recommendation-public-share-mode .recommendation-project-card.compact{
  min-width:0;
  grid-template-columns:1fr;
}

.recommendation-public-share-mode .recommendation-project-card:hover,
.recommendation-public-share-mode .recommendation-project-card:active{
  border-color:rgba(0,0,0,.065);
  box-shadow:0 12px 34px rgba(0,0,0,.065);
}

.recommendation-public-share-mode .recommendation-project-card .recommendation-cover,
.recommendation-public-share-mode .recommendation-project-card.compact .recommendation-cover{
  aspect-ratio:16 / 9;
  min-height:0;
  border-radius:18px;
  box-shadow:none;
}

.recommendation-public-share-mode .recommendation-project-body{
  justify-content:flex-start;
}

.recommendation-public-share-mode .recommendation-project-body h3{
  margin:8px 0 8px;
  color:#1d1d1f;
  font-size:24px;
  line-height:1.18;
  letter-spacing:-.025em;
  font-weight:800;
}

.recommendation-public-share-mode .recommendation-project-subtitle{
  color:#86868b;
  font-size:13px;
  line-height:1.45;
  font-weight:600;
}

.recommendation-public-share-mode .recommendation-project-reason{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:12px 0 0;
  color:#424245;
  font-size:15px;
  line-height:1.62;
  font-weight:500;
}

.recommendation-public-share-mode .recommendation-project-child-note{
  margin-top:12px;
  padding:11px 13px;
  border-radius:16px;
  background:#f5f9ff;
  border-color:rgba(0,113,227,.10);
  color:#424245;
  font-size:13px;
  line-height:1.58;
  font-weight:500;
}

.recommendation-public-share-mode .recommendation-project-child-note strong{
  color:#0071e3;
}

.recommendation-public-share-mode .recommendation-time-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:16px 0;
}

.recommendation-public-share-mode .recommendation-project-card.compact .recommendation-time-grid{
  grid-template-columns:1fr;
  gap:8px;
}

.recommendation-public-share-mode .recommendation-time-card,
.recommendation-public-share-mode .recommendation-time-card.activity,
.recommendation-public-share-mode .recommendation-time-card.schedule,
.recommendation-public-share-mode .recommendation-time-card.deadline{
  padding:13px 14px;
  border-radius:18px;
  background:#f5f5f7;
  border:1px solid rgba(0,0,0,.055);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78);
}

.recommendation-public-share-mode .recommendation-time-card span,
.recommendation-public-share-mode .recommendation-time-card.activity span,
.recommendation-public-share-mode .recommendation-time-card.schedule span,
.recommendation-public-share-mode .recommendation-time-card.deadline span{
  color:#86868b;
  font-size:12px;
  font-weight:700;
}

.recommendation-public-share-mode .recommendation-time-card strong,
.recommendation-public-share-mode .recommendation-time-card.activity strong,
.recommendation-public-share-mode .recommendation-time-card.schedule strong,
.recommendation-public-share-mode .recommendation-time-card.deadline strong{
  color:#1d1d1f;
  font-size:15px;
  line-height:1.35;
  font-weight:750;
}

.recommendation-public-share-mode .recommendation-time-card.deadline .recommendation-countdown-pill{
  background:#ffe8e3;
  border-color:rgba(255,59,48,.24);
  color:#d70015;
  box-shadow:0 8px 18px rgba(255,59,48,.10);
}

.recommendation-public-share-mode .recommendation-time-card.activity{
  background:linear-gradient(180deg,#fff1f1,#fff);
  border-color:rgba(255,59,48,.26);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82), 0 8px 22px rgba(255,59,48,.06);
}

.recommendation-public-share-mode .recommendation-time-card.activity span{
  color:#d70015;
}

.recommendation-public-share-mode .recommendation-time-card.activity strong{
  color:#9f1239;
}

.recommendation-public-share-mode .recommendation-time-card.schedule{
  background:linear-gradient(180deg,#f2eeff,#fff);
  border-color:rgba(88,86,214,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82), 0 8px 22px rgba(88,86,214,.06);
}

.recommendation-public-share-mode .recommendation-time-card.schedule span{
  color:#5856d6;
}

.recommendation-public-share-mode .recommendation-time-card.schedule strong{
  color:#312e81;
}

.recommendation-public-share-mode .recommendation-time-card.deadline{
  background:linear-gradient(180deg,#fff4e5,#fff);
  border-color:rgba(255,59,48,.30);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82), 0 10px 24px rgba(255,59,48,.08);
}

.recommendation-public-share-mode .recommendation-time-card.deadline span{
  color:#ea580c;
}

.recommendation-public-share-mode .recommendation-time-card.deadline strong{
  color:#d70015;
}

.recommendation-public-share-mode .recommendation-time-card.deadline.active,
.recommendation-public-share-mode .recommendation-time-card.deadline.urgent,
.recommendation-public-share-mode .recommendation-time-card.deadline.today{
  background:linear-gradient(180deg,#ffe8e3,#fff7ed);
  border-color:rgba(255,59,48,.38);
}

.recommendation-public-share-mode .recommendation-time-card.deadline.urgent .recommendation-countdown-pill,
.recommendation-public-share-mode .recommendation-time-card.deadline.today .recommendation-countdown-pill{
  background:#ff3b30;
  border-color:#ff3b30;
  color:#fff;
  box-shadow:0 10px 22px rgba(255,59,48,.18);
}

.recommendation-public-share-mode .recommendation-action-guide{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:16px 0 6px;
}

.recommendation-public-share-mode .recommendation-action-guide span{
  border-radius:14px;
  padding:8px 10px;
  font-size:12px;
  line-height:1.42;
  font-weight:650;
}

.recommendation-public-share-mode .recommendation-action-guide .want-to-join{
  background:#eef9f1;
  color:#248a3d;
}

.recommendation-public-share-mode .recommendation-action-guide .contact-teacher{
  background:#f5f5f7;
  color:#6e6e73;
}

.recommendation-public-share-mode .recommendation-action-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}

.recommendation-public-share-mode .recommendation-action-row button{
  width:100%;
  min-height:48px;
  justify-content:center;
  border-radius:16px;
  font-size:15px;
  font-weight:600;
  letter-spacing:0;
  box-shadow:none;
  -webkit-tap-highlight-color:transparent;
}

.recommendation-parent-preview .recommendation-action-row > .recommendation-primary,
.recommendation-public-share-mode .recommendation-action-row > .recommendation-primary{
  background:#f5f5f7 !important;
  color:#6e6e73 !important;
  border:1px solid #e5e5e5 !important;
  box-shadow:none !important;
}

.recommendation-parent-preview .recommendation-action-row > .recommendation-primary:hover,
.recommendation-parent-preview .recommendation-action-row > .recommendation-primary:focus,
.recommendation-parent-preview .recommendation-action-row > .recommendation-primary:focus-visible,
.recommendation-parent-preview .recommendation-action-row > .recommendation-primary:active,
.recommendation-public-share-mode .recommendation-action-row > .recommendation-primary:hover,
.recommendation-public-share-mode .recommendation-action-row > .recommendation-primary:focus,
.recommendation-public-share-mode .recommendation-action-row > .recommendation-primary:focus-visible,
.recommendation-public-share-mode .recommendation-action-row > .recommendation-primary:active{
  background:#f0f0f2 !important;
  color:#666 !important;
  border-color:#dedede !important;
  box-shadow:none !important;
}

.recommendation-public-share-mode .recommendation-secondary.want-to-join,
.recommendation-public-share-mode .recommendation-secondary.want-to-join:hover,
.recommendation-public-share-mode .recommendation-secondary.want-to-join:focus,
.recommendation-public-share-mode .recommendation-secondary.want-to-join:focus-visible,
.recommendation-public-share-mode .recommendation-secondary.want-to-join:active{
  grid-column:1 / -1;
  min-height:48px;
  background:#34c759 !important;
  color:#fff !important;
  border:0 !important;
  box-shadow:0 10px 22px rgba(52,199,89,.22) !important;
}

.recommendation-public-share-mode .recommendation-secondary.want-to-know,
.recommendation-public-share-mode .recommendation-secondary.want-to-know:hover,
.recommendation-public-share-mode .recommendation-secondary.want-to-know:focus,
.recommendation-public-share-mode .recommendation-secondary.want-to-know:focus-visible,
.recommendation-public-share-mode .recommendation-secondary.want-to-know:active{
  background:#eaf2ff !important;
  color:#0071e3 !important;
  border:1px solid rgba(0,113,227,.10) !important;
}

.recommendation-public-share-mode .recommendation-secondary.already-joined,
.recommendation-public-share-mode .recommendation-secondary.already-joined:hover,
.recommendation-public-share-mode .recommendation-secondary.already-joined:focus,
.recommendation-public-share-mode .recommendation-secondary.already-joined:focus-visible,
.recommendation-public-share-mode .recommendation-secondary.already-joined:active{
  background:#fff4e5 !important;
  color:#ff9500 !important;
  border:1px solid rgba(255,149,0,.14) !important;
}

.recommendation-public-share-mode .recommendation-secondary.contact-teacher,
.recommendation-public-share-mode .recommendation-secondary.contact-teacher:hover,
.recommendation-public-share-mode .recommendation-secondary.contact-teacher:focus,
.recommendation-public-share-mode .recommendation-secondary.contact-teacher:focus-visible,
.recommendation-public-share-mode .recommendation-secondary.contact-teacher:active{
  background:#f5f5f7 !important;
  color:#6e6e73 !important;
  border:1px solid rgba(0,0,0,.07) !important;
  box-shadow:none !important;
}

.recommendation-parent-preview .recommendation-action-row > .recommendation-primary.contact-teacher-tool,
.recommendation-parent-preview .recommendation-action-row > .recommendation-primary.contact-teacher-tool:hover,
.recommendation-parent-preview .recommendation-action-row > .recommendation-primary.contact-teacher-tool:focus,
.recommendation-parent-preview .recommendation-action-row > .recommendation-primary.contact-teacher-tool:focus-visible,
.recommendation-parent-preview .recommendation-action-row > .recommendation-primary.contact-teacher-tool:active,
.recommendation-public-share-mode .recommendation-action-row > .recommendation-primary.contact-teacher-tool,
.recommendation-public-share-mode .recommendation-action-row > .recommendation-primary.contact-teacher-tool:hover,
.recommendation-public-share-mode .recommendation-action-row > .recommendation-primary.contact-teacher-tool:focus,
.recommendation-public-share-mode .recommendation-action-row > .recommendation-primary.contact-teacher-tool:focus-visible,
.recommendation-public-share-mode .recommendation-action-row > .recommendation-primary.contact-teacher-tool:active{
  background:#f5f5f7 !important;
  color:#6e6e73 !important;
  border:1px solid #e5e5e5 !important;
  box-shadow:none !important;
}

.recommendation-v4-course-chip,
.recommendation-v4-teacher-chip{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  font-size:12px;
  line-height:1;
  font-weight:800;
  white-space:nowrap;
}

.recommendation-v4-course-chip{
  background:#eef9f1;
  color:#248a3d;
  border:1px solid rgba(52,199,89,.16);
}

.recommendation-v4-teacher-chip{
  margin-left:6px;
  background:#f5f5f7;
  color:#6e6e73;
  border:1px solid rgba(0,0,0,.06);
}

.recommendation-v4-teacher-chip.high{
  background:#eaf2ff;
  color:#0071e3;
  border-color:rgba(0,113,227,.14);
}

.recommendation-v4-teacher-chip.hot{
  background:#fff4e5;
  color:#b65f00;
  border-color:rgba(255,149,0,.18);
}

.recommendation-parent-preview.recommendation-v4-intent-low .recommendation-secondary.want-to-know,
.recommendation-parent-preview.recommendation-v4-intent-low .recommendation-secondary.want-to-know:hover,
.recommendation-parent-preview.recommendation-v4-intent-low .recommendation-secondary.want-to-know:focus,
.recommendation-parent-preview.recommendation-v4-intent-low .recommendation-secondary.want-to-know:focus-visible,
.recommendation-parent-preview.recommendation-v4-intent-low .recommendation-secondary.want-to-know:active{
  grid-column:1 / -1;
  background:#0071e3 !important;
  color:#fff !important;
  border-color:#0071e3 !important;
  box-shadow:0 10px 22px rgba(0,113,227,.18) !important;
}

.recommendation-parent-preview.recommendation-v4-intent-low .recommendation-secondary.want-to-join{
  grid-column:auto;
  background:#eef9f1 !important;
  color:#248a3d !important;
  border:1px solid rgba(52,199,89,.14) !important;
  box-shadow:none !important;
}

.recommendation-parent-preview.recommendation-v4-intent-medium .recommendation-secondary.want-to-know,
.recommendation-parent-preview.recommendation-v4-intent-medium .recommendation-secondary.contact-teacher,
.recommendation-parent-preview.recommendation-v4-intent-medium .recommendation-primary.contact-teacher-tool{
  background:#f5f9ff !important;
  color:#0071e3 !important;
  border:1px solid rgba(0,113,227,.14) !important;
}

.recommendation-parent-preview.recommendation-v4-intent-medium .recommendation-secondary.want-to-join{
  grid-column:auto;
  background:#eef9f1 !important;
  color:#248a3d !important;
  border:1px solid rgba(52,199,89,.14) !important;
  box-shadow:none !important;
}

.recommendation-parent-preview.recommendation-v4-intent-high .recommendation-secondary.want-to-join,
.recommendation-parent-preview.recommendation-v4-intent-hot .recommendation-secondary.want-to-join{
  grid-column:1 / -1;
  background:#34c759 !important;
  color:#fff !important;
  border:0 !important;
  box-shadow:0 12px 26px rgba(52,199,89,.24) !important;
}

.recommendation-parent-preview.recommendation-v4-intent-hot .recommendation-secondary.want-to-join{
  min-height:56px;
  font-size:16px;
}

.recommendation-parent-preview.recommendation-v4-intent-hot .recommendation-action-row button:not(.want-to-join){
  opacity:.76;
}

.recommendation-project-card.recommendation-v4-top-course{
  border-color:rgba(52,199,89,.18);
}

.recommendation-project-card.recommendation-v4-lower-priority{
  opacity:.88;
}

.recommendation-public-share-mode .recommendation-parent-note{
  margin-top:0;
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(0,0,0,.055);
  color:#6e6e73;
  box-shadow:0 8px 24px rgba(0,0,0,.045);
}

@media (max-width:760px){
  .recommendation-public-share-mode .recommendation-parent-preview{
    display:block !important;
    padding:0;
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }

  .recommendation-public-share-mode .recommendation-parent-shell.recommendation-apple-shell{
    min-height:100vh;
    padding:12px;
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }

  .recommendation-public-share-mode #recommendationParentPreviewContent{
    gap:12px;
    width:100%;
    max-width:100%;
    min-width:0;
    overflow:hidden;
  }

  .recommendation-public-share-mode .recommendation-parent-hero{
    padding:18px 16px;
    border-radius:24px;
  }

  .recommendation-public-share-mode .recommendation-parent-hero.has-photo{
    padding-right:16px;
  }

  .recommendation-public-share-mode .recommendation-parent-hero h2{
    max-width:100%;
    font-size:28px;
    line-height:1.14;
    letter-spacing:-.035em;
    overflow-wrap:anywhere;
  }

  .recommendation-public-share-mode .recommendation-parent-hero p{
    max-width:100%;
    font-size:14px;
    line-height:1.55;
    overflow-wrap:anywhere;
  }

  .recommendation-public-share-mode .recommendation-parent-student-photo{
    position:relative;
    right:auto;
    top:auto;
    width:92px;
    height:92px;
    margin:14px 0 0;
    border-radius:22px;
    transform:none;
  }

  .recommendation-public-share-mode .recommendation-parent-toolbar{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
    min-width:0;
  }

  .recommendation-public-share-mode .recommendation-parent-projects{
    grid-template-columns:1fr;
    gap:12px;
  }

  .recommendation-public-share-mode .recommendation-project-card,
  .recommendation-public-share-mode .recommendation-project-card.featured,
  .recommendation-public-share-mode .recommendation-project-card.compact{
    grid-column:auto;
    grid-template-columns:1fr;
    gap:12px;
    padding:12px;
    border-radius:24px;
    width:100%;
    max-width:100%;
    min-width:0;
    overflow:hidden;
  }

  .recommendation-public-share-mode .recommendation-project-card .recommendation-cover,
  .recommendation-public-share-mode .recommendation-project-card.featured .recommendation-cover,
  .recommendation-public-share-mode .recommendation-project-card.compact .recommendation-cover{
    width:100%;
    height:clamp(96px,28vw,126px);
    min-height:0;
    aspect-ratio:auto;
    border-radius:18px;
  }

  .recommendation-public-share-mode .recommendation-project-body{
    min-width:0;
    width:100%;
  }

  .recommendation-public-share-mode .recommendation-project-body h3{
    margin:6px 0;
    font-size:20px;
    line-height:1.18;
    overflow-wrap:anywhere;
  }

  .recommendation-public-share-mode .recommendation-project-subtitle{
    font-size:12px;
    white-space:normal !important;
    word-break:break-word;
    overflow-wrap:anywhere;
  }

  .recommendation-public-share-mode .recommendation-project-reason{
    -webkit-line-clamp:2;
    margin-top:8px;
    font-size:14px;
    line-height:1.55;
    overflow-wrap:anywhere;
  }

  .recommendation-public-share-mode .recommendation-chip-row{
    gap:6px;
    margin-top:8px;
  }

  .recommendation-public-share-mode .recommendation-tag,
  .recommendation-public-share-mode .recommendation-v4-course-chip{
    min-height:24px;
    padding:0 8px;
    font-size:11px;
    max-width:100%;
    white-space:normal;
    line-height:1.2;
    overflow-wrap:anywhere;
  }

  .recommendation-public-share-mode .recommendation-time-grid,
  .recommendation-public-share-mode .recommendation-action-guide{
    grid-template-columns:1fr;
  }

  .recommendation-public-share-mode .recommendation-time-grid{
    gap:8px;
    margin:10px 0;
  }

  .recommendation-public-share-mode .recommendation-time-card,
  .recommendation-public-share-mode .recommendation-time-card.activity,
  .recommendation-public-share-mode .recommendation-time-card.schedule,
  .recommendation-public-share-mode .recommendation-time-card.deadline{
    padding:10px 12px;
    border-radius:16px;
  }

  .recommendation-public-share-mode .recommendation-time-card strong,
  .recommendation-public-share-mode .recommendation-time-card.activity strong,
  .recommendation-public-share-mode .recommendation-time-card.schedule strong,
  .recommendation-public-share-mode .recommendation-time-card.deadline strong{
    font-size:14px;
    overflow-wrap:anywhere;
  }

  .recommendation-public-share-mode .recommendation-action-row{
    grid-template-columns:1fr;
    gap:8px;
    margin-top:10px;
    width:100%;
    max-width:100%;
    min-width:0;
  }

  .recommendation-public-share-mode .recommendation-secondary.want-to-join{
    grid-column:auto;
    order:-2;
  }

  .recommendation-public-share-mode .recommendation-action-row > .recommendation-primary{
    grid-column:auto;
    order:-1;
  }

  .recommendation-public-share-mode .recommendation-action-row button{
    min-width:0;
    min-height:44px;
    padding:0 10px;
    font-size:14px;
    line-height:1.2;
    white-space:normal;
    overflow-wrap:anywhere;
  }

  .recommendation-public-share-mode .recommendation-muted{
    font-size:12px;
    line-height:1.45;
  }

  .recommendation-public-share-mode .recommendation-parent-note{
    padding:12px 14px;
    border-radius:18px;
    font-size:12px;
    line-height:1.55;
  }
}

/* =====================
Glow 输入 / 可编辑卡片：只增强指定输入区域的视觉，不改变原字段绑定
===================== */
.glow-field-card{
  --glow-border-radius:20px;
  --glow-inner-radius:17px;
  --glow-card-bg:rgba(255,255,255,.94);
  --glow-card-border:rgba(15,23,42,.08);
  --glow-shadow:0 14px 34px rgba(15,23,42,.07);
  --glow-opacity:.42;
  position:relative;
  display:block;
  width:100%;
  max-width:100%;
  margin-top:8px;
  padding:2px;
  border-radius:var(--glow-border-radius);
  isolation:isolate;
  box-sizing:border-box;
}

.glow-field-card::before{
  content:"";
  position:absolute;
  inset:-3px;
  border-radius:inherit;
  background:
    radial-gradient(circle at 10% 14%, rgba(8,148,255,.70), transparent 36%),
    radial-gradient(circle at 82% 16%, rgba(201,89,221,.54), transparent 32%),
    radial-gradient(circle at 90% 86%, rgba(255,46,84,.38), transparent 32%),
    radial-gradient(circle at 18% 94%, rgba(255,144,4,.34), transparent 30%),
    conic-gradient(from 145deg, rgba(8,148,255,.46), rgba(201,89,221,.34), rgba(255,46,84,.28), rgba(255,144,4,.30), rgba(8,148,255,.46));
  filter:blur(13px) saturate(1.16);
  opacity:var(--glow-opacity);
  pointer-events:none;
  z-index:-2;
  transition:opacity .22s ease, filter .22s ease, transform .22s ease;
}

.glow-field-card::after{
  content:"";
  position:absolute;
  inset:2px;
  border-radius:var(--glow-inner-radius);
  background:var(--glow-card-bg);
  border:1px solid var(--glow-card-border);
  box-shadow:var(--glow-shadow), inset 0 1px 0 rgba(255,255,255,.74);
  pointer-events:none;
  z-index:-1;
  transition:border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.glow-field-card:hover{
  --glow-opacity:.54;
}

.glow-field-card:focus-within{
  --glow-opacity:.82;
}

.glow-field-card:focus-within::before{
  filter:blur(16px) saturate(1.28);
  transform:scale(1.012);
}

.glow-field-card:focus-within::after{
  border-color:rgba(8,148,255,.42);
  box-shadow:0 20px 52px rgba(8,148,255,.15),0 10px 26px rgba(15,23,42,.07), inset 0 1px 0 rgba(255,255,255,.86);
}

.glow-field-card > input,
.glow-field-card > textarea,
.glow-field-card > [contenteditable="true"]{
  position:relative;
  z-index:1;
  width:100% !important;
  margin-top:0 !important;
  border:0 !important;
  border-radius:var(--glow-inner-radius) !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#111827 !important;
  outline:none !important;
  box-sizing:border-box;
}

.glow-field-card > input::placeholder,
.glow-field-card > textarea::placeholder{
  color:rgba(100,116,139,.72);
}

.glow-field-card > input{
  min-height:52px;
  padding:14px 16px !important;
}

.glow-field-card > textarea,
.glow-field-card > [contenteditable="true"]{
  padding:16px 18px !important;
  line-height:1.7 !important;
}

.glow-field-card.glow-search-card{
  --glow-border-radius:999px;
  --glow-inner-radius:999px;
}

.glow-field-card.glow-search-card > input{
  min-height:48px;
  padding:12px 18px !important;
}

.glow-field-card.glow-editable-card{
  --glow-border-radius:22px;
  --glow-inner-radius:19px;
  --glow-opacity:.36;
}

.glow-field-card.glow-editable-card > textarea{
  min-height:260px;
}

.glow-field-card.glow-textarea-card > textarea{
  min-height:150px;
}

@media (prefers-color-scheme: dark){
  .glow-field-card{
    --glow-card-bg:rgba(15,23,42,.86);
    --glow-card-border:rgba(226,232,240,.16);
    --glow-shadow:0 16px 38px rgba(0,0,0,.24);
  }

  .glow-field-card > input,
  .glow-field-card > textarea,
  .glow-field-card > [contenteditable="true"]{
    color:#f8fafc !important;
  }

  .glow-field-card > input::placeholder,
  .glow-field-card > textarea::placeholder{
    color:rgba(203,213,225,.66);
  }
}

@media (max-width:760px){
  .glow-field-card{
    --glow-border-radius:18px;
    --glow-inner-radius:15px;
  }

  .glow-field-card.glow-search-card{
    --glow-border-radius:999px;
    --glow-inner-radius:999px;
  }

  .glow-field-card::before{
    filter:blur(8px);
  }
}

@media (prefers-reduced-motion: reduce){
  .glow-field-card,
  .glow-field-card::before,
  .glow-field-card::after{
    transition:none !important;
  }
}

#studentArchivePage .student-archive-master-search input#studentArchiveMasterSearch[type="search"]{
  height:34px !important;
  min-height:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:13px !important;
  font-weight:400 !important;
  line-height:34px !important;
  box-sizing:border-box !important;
  appearance:none !important;
  -webkit-appearance:none !important;
}

@media (max-width:899px){
  :root{
    --merged-header-space:110px;
    --saas-header-top:max(8px, env(safe-area-inset-top, 0px));
    --saas-header-side-gap:0px;
  }

  html body > .merged-header-shell,
  html body .merged-header-shell.site-fixed-top-header,
  html body > .merged-header-shell.header-scrolled,
  html body .merged-header-shell.site-fixed-top-header.header-scrolled{
    top:var(--saas-header-top) !important;
    left:50% !important;
    width:calc(100vw - 20px) !important;
    max-width:calc(100vw - 20px) !important;
    height:76px !important;
    min-height:76px !important;
    max-height:76px !important;
    padding:0 14px !important;
    display:grid !important;
    grid-template-columns:minmax(220px,260px) minmax(180px,220px) max-content !important;
    grid-template-rows:1fr !important;
    align-items:center !important;
    gap:14px !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.84) !important;
    border:1px solid rgba(0,113,227,.16) !important;
    box-shadow:0 18px 60px rgba(15,23,42,.10) !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    scrollbar-width:none !important;
    -webkit-overflow-scrolling:touch !important;
  }

  html body > .merged-header-shell::-webkit-scrollbar,
  html body .merged-header-shell.site-fixed-top-header::-webkit-scrollbar{
    display:none !important;
  }

  html body > .merged-header-shell + .container{
    margin-top:var(--merged-header-space) !important;
  }

  .merged-header-shell > .top-bar,
  html body .merged-header-shell.site-fixed-top-header > .top-bar,
  html body .merged-header-shell.site-fixed-top-header.header-scrolled > .top-bar,
  .merged-header-shell.header-scrolled > .top-bar{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    bottom:auto !important;
    grid-column:1 !important;
    grid-row:1 !important;
    width:auto !important;
    min-width:220px !important;
    height:auto !important;
    min-height:0 !important;
    padding:0 !important;
    margin:0 !important;
    display:flex !important;
    align-items:center !important;
    overflow:visible !important;
  }

  .merged-header-shell .top-left{
    width:auto !important;
    min-width:0 !important;
    height:auto !important;
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    overflow:visible !important;
  }

  .merged-header-shell .top-logo,
  .merged-header-shell.header-scrolled .top-logo{
    width:42px !important;
    height:42px !important;
    padding:4px !important;
    border-radius:14px !important;
    display:block !important;
    flex:0 0 auto !important;
  }

  .merged-header-shell .top-brand-copy{
    min-width:0 !important;
    width:auto !important;
    height:auto !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    gap:2px !important;
    overflow:hidden !important;
  }

  .merged-header-shell .top-name,
  .merged-header-shell.header-scrolled .top-name{
    display:block !important;
    max-width:170px !important;
    color:#0f172a !important;
    font-size:16px !important;
    line-height:1.12 !important;
    font-weight:650 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .merged-header-shell .top-subtitle{
    display:block !important;
    max-width:198px !important;
    color:#64748b !important;
    font-size:12px !important;
    line-height:1.15 !important;
    font-weight:550 !important;
    opacity:1 !important;
    max-height:14px !important;
    transform:none !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .merged-header-shell > .auth-bar,
  html body .merged-header-shell.site-fixed-top-header > .auth-bar,
  html body .merged-header-shell.site-fixed-top-header.header-expanded > .auth-bar,
  html body .merged-header-shell.site-fixed-top-header.header-scrolled > .auth-bar{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    bottom:auto !important;
    width:max-content !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    padding:0 !important;
    margin:0 !important;
    display:grid !important;
    grid-template-columns:minmax(180px,220px) auto auto !important;
    align-items:center !important;
    justify-content:start !important;
    gap:8px !important;
    grid-column:2 / 4 !important;
    grid-row:1 !important;
    overflow:visible !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
  }

  .merged-header-shell .auth-user-info,
  .merged-header-shell .auth-actions{
    display:none !important;
  }

  .merged-header-shell .header-compact-status,
  .merged-header-shell .header-menu-wrap{
    display:flex !important;
  }

  .merged-header-shell .header-compact-summary{
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:0 !important;
    padding:0 10px !important;
    overflow:hidden !important;
    text-align:center !important;
  }

  .merged-header-shell .header-compact-avatar{
    display:none !important;
  }

  .merged-header-shell .header-compact-copy{
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    gap:2px !important;
    overflow:hidden !important;
  }

  .merged-header-shell .header-compact-greeting{
    max-width:200px !important;
    color:#0f172a !important;
    font-size:15px !important;
    line-height:1.12 !important;
    font-weight:750 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .merged-header-shell .header-compact-meta{
    max-width:220px !important;
    color:#64748b !important;
    font-size:12.5px !important;
    line-height:1.12 !important;
    font-weight:560 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .merged-header-shell .header-compact-status{
    align-items:center !important;
    justify-content:flex-end !important;
    gap:6px !important;
    flex-wrap:nowrap !important;
  }

  .merged-header-shell .header-mini-status{
    min-height:30px !important;
    padding:0 12px !important;
    border-radius:999px !important;
    display:inline-flex !important;
    align-items:center !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:720 !important;
    white-space:nowrap !important;
  }

  .merged-header-shell .header-menu-wrap{
    position:relative !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:6px !important;
  }

  .merged-header-shell .header-icon-btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:34px !important;
    padding:0 14px !important;
    border-radius:999px !important;
    font-size:13px !important;
    font-weight:700 !important;
    white-space:nowrap !important;
  }

  .merged-header-shell .header-center-nav,
  .merged-header-shell.header-scrolled .header-center-nav{
    display:none !important;
  }

  .merged-header-shell .header-center-nav::-webkit-scrollbar{
    display:none !important;
  }

  .merged-header-shell .header-nav-btn{
    flex:0 0 auto !important;
    min-height:28px !important;
    padding:0 12px !important;
    border-radius:999px !important;
    font-size:13px !important;
    font-weight:650 !important;
  }
}

