:root{
  --yv3-bg:#fff8f5;
  --yv3-bg2:#ffe7df;
  --yv3-card:#ffffff;
  --yv3-card-soft:#fffbfa;
  --yv3-card-tint:#fff1ed;
  --yv3-ink:#351a21;
  --yv3-ink-soft:#5b3a40;
  --yv3-muted:#8f7275;
  --yv3-muted-2:#b99c99;
  --yv3-purple-900:#904339;
  --yv3-purple-800:#ad5546;
  --yv3-purple-700:#d06b54;
  --yv3-purple-600:#ee8b69;
  --yv3-purple-500:#FFB07C;
  --yv3-purple-300:#F9B3A7;
  --yv3-line:#f2d8d1;
  --yv3-line-strong:#e8c5bc;
  --yv3-success:#0e9f78;
  --yv3-warning:#f1b35f;
  --yv3-danger:#d65368;
  --yv3-space-1:4px;
  --yv3-space-2:8px;
  --yv3-space-3:12px;
  --yv3-space-4:16px;
  --yv3-space-5:20px;
  --yv3-space-6:24px;
  --yv3-space-7:28px;
  --yv3-radius-sm:14px;
  --yv3-radius-md:18px;
  --yv3-radius-lg:22px;
  --yv3-radius-xl:28px;
  --yv3-radius-xxl:34px;
  --yv3-shadow-sm:0 6px 18px rgba(111,58,50,.055);
  --yv3-shadow-md:0 14px 34px rgba(111,58,50,.095);
  --yv3-shadow-lg:0 22px 54px rgba(111,58,50,.13);
  --yv3-font:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Inter","Segoe UI",Roboto,Arial,sans-serif;
}

.yanchi-v3-shell,
.yanchi-v3-shell *{
  box-sizing:border-box;
}

.yanchi-v3-shell{
  font-family:var(--yv3-font);
  color:var(--yv3-ink);
  background:
    radial-gradient(circle at 10% 0%, rgba(220,122,65,.10), transparent 26%),
    linear-gradient(180deg,var(--yv3-bg) 0%,#fffbf9 48%,var(--yv3-bg2) 100%);
  min-height:100dvh;
  width:100%;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
  line-height:1.45;
  position:relative;
  margin:0!important;
  padding:0!important;
}

.yanchi-v3-shell button,
.yanchi-v3-shell input,
.yanchi-v3-shell textarea,
.yanchi-v3-shell select{
  font-family:var(--yv3-font);
}

.yanchi-v3-shell button{
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}

.yanchi-v3-shell img,
.yanchi-v3-shell svg,
.yanchi-v3-shell video,
.yanchi-v3-shell iframe{
  max-width:100%;
}

.yanchi-v3-shell h1,
.yanchi-v3-shell h2,
.yanchi-v3-shell h3,
.yanchi-v3-shell h4,
.yanchi-v3-shell p{
  overflow-wrap:anywhere;
}

.yv3-app{
  min-height:100dvh;
  width:100%;
  max-width:500px;
  margin:0 auto;
  position:relative;
  padding:0 0 calc(104px + env(safe-area-inset-bottom));
}

.yv3-loading-card{
  width:min(360px,calc(100vw - 32px));
  margin:20vh auto;
  padding:var(--yv3-space-5);
  border-radius:var(--yv3-radius-xl);
  background:#fff;
  display:flex;
  gap:var(--yv3-space-3);
  align-items:center;
  box-shadow:var(--yv3-shadow-md);
}

.yv3-loading-card span{
  display:block;
  color:var(--yv3-muted);
  font-size:13px;
  margin-top:2px;
}

.yv3-toast{
  position:fixed;
  left:50%;
  bottom:calc(96px + env(safe-area-inset-bottom));
  transform:translateX(-50%);
  z-index:9999;
  background:var(--yv3-purple-900);
  color:#fff;
  padding:12px 18px;
  border-radius:999px;
  font-weight:800;
  font-size:14px;
  box-shadow:0 10px 28px rgba(0,0,0,.25);
  max-width:88vw;
  text-align:center;
}

.yv3-logo-mark,
.yv3-avatar{
  display:grid;
  place-items:center;
  font-weight:900;
  color:var(--yv3-purple-600);
  background:linear-gradient(135deg,#ffffff,#fff0e8);
  border-radius:50%;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.7);
}

.yv3-logo-mark{
  width:34px;
  height:34px;
  font-size:14px;
  flex:0 0 auto;
}

.yv3-hero{
  background:
    radial-gradient(circle at 13% -8%,rgba(255,255,255,.12),transparent 29%),
    radial-gradient(circle at 96% 86%,rgba(255,186,146,.56),transparent 38%),
    radial-gradient(circle at 58% 24%,rgba(255,156,99,.30),transparent 36%),
    linear-gradient(144deg,#3e1b06 0%,#9f4816 48%,#eaa278 100%);
  color:#fff;
  border-radius:0 0 34px 34px;
  padding:14px 14px 24px;
  position:relative;
  overflow:hidden;
  box-shadow:0 18px 42px rgba(142,70,28,.18);
  isolation:isolate;
  margin:0;
}

.yv3-hero:before,
.yv3-hero:after{
  content:"";
  position:absolute;
  border-radius:50%;
  background:rgba(255,255,255,.065);
  z-index:-1;
}
.yv3-hero:before{width:230px;height:230px;left:-82px;top:-92px;}
.yv3-hero:after{width:220px;height:220px;right:-54px;bottom:-76px;}

.yv3-toprow{
  display:grid;
  grid-template-columns:minmax(102px,1fr) minmax(78px,.72fr) minmax(82px,.8fr) 40px;
  gap:7px;
  align-items:center;
  width:100%;
}

.yv3-brand-pill,
.yv3-points-pill,
.yv3-lang,
.yv3-profile-btn{
  height:40px;
  min-height:40px;
  border:1px solid rgba(255,255,255,.38);
  background:rgba(255,255,255,.86);
  color:var(--yv3-purple-900);
  border-radius:999px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22),0 8px 16px rgba(54,22,4,.10);
  display:flex;
  align-items:center;
  min-width:0;
}

.yv3-brand-pill{
  gap:7px;
  padding:3px 9px 3px 4px;
  font-weight:850;
  font-size:15px;
  border-radius:999px;
  overflow:hidden;
}
.yv3-brand-pill .yv3-logo-mark{width:32px;height:32px;}
.yv3-brand-pill span:last-child{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.yv3-lang{
  width:100%;
  padding:0 24px 0 10px;
  font-size:14px;
  font-weight:750;
  appearance:none;
  background:
    linear-gradient(45deg,transparent 50%,rgba(255,255,255,.85) 50%) calc(100% - 14px) 16px/6px 6px no-repeat,
    linear-gradient(135deg,rgba(255,255,255,.25),rgba(255,255,255,.10));
  color:#fff;
  border-radius:16px;
}
.yv3-lang option{color:var(--yv3-ink);}

.yv3-points-pill{
  flex-direction:column;
  justify-content:center;
  align-items:center;
  padding:2px 8px;
  line-height:1.02;
  text-align:center;
  overflow:hidden;
}
.yv3-points-pill small{
  font-size:9px;
  color:#918178;
  font-weight:850;
  line-height:1;
  max-width:100%;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.yv3-points-pill strong{
  font-size:16px;
  font-weight:950;
  color:var(--yv3-purple-900);
  white-space:nowrap;
}
.yv3-profile-btn{
  width:40px;
  justify-content:center;
  font-size:18px;
  font-weight:650;
  border-radius:15px;
  padding:0;
}

.yv3-quote-card{
  margin-top:18px;
  border-radius:28px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.25);
  padding:22px 18px;
  text-align:center;
  backdrop-filter:blur(12px);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.yv3-quote-card h2{
  font-size:clamp(21px,5.7vw,30px);
  line-height:1.16;
  margin:0 0 12px;
  font-weight:850;
  color:#fff;
  letter-spacing:-.035em;
}
.yv3-quote-card p{
  margin:0 0 18px;
  color:rgba(255,255,255,.74);
  font-weight:800;
  font-size:14px;
}
.yv3-ghost-btn{
  border:1px solid rgba(255,255,255,.38);
  background:rgba(255,255,255,.20);
  color:#fff;
  border-radius:22px;
  padding:10px 20px;
  min-height:42px;
  font-weight:850;
  font-size:14px;
  box-shadow:none;
}

.yv3-screen{
  padding:22px 14px 22px;
}
.yv3-screen > *:first-child{margin-top:0;}
.yv3-screen > *:last-child{margin-bottom:0;}

.yv3-card{
  background:linear-gradient(180deg,#fff 0%,#fffcfb 100%);
  border:1px solid var(--yv3-line);
  border-radius:var(--yv3-radius-xl);
  box-shadow:var(--yv3-shadow-sm);
  padding:22px;
  margin:0 auto 22px;
  width:100%;
  max-width:100%;
  overflow:visible;
}
.yv3-card.flat{
  box-shadow:none;
  background:rgba(255,255,255,.62);
  padding:16px;
  margin:12px 0 16px;
}

.yv3-card h1,
.yv3-card h2,
.yv3-card h3,
.yv3-card h4,
.yv3-card p,
.yv3-card ol,
.yv3-card ul{
  max-width:100%;
}

.yv3-card h2:not(.yv3-section-title){
  font-size:clamp(24px,6.4vw,32px);
  line-height:1.18;
  font-weight:650;
  letter-spacing:-.045em;
  color:var(--yv3-ink);
  margin:24px 0 14px;
}
.yv3-card > h2:first-child{margin-top:0;}
.yv3-card h3{
  font-size:18px;
  line-height:1.25;
  font-weight:850;
  letter-spacing:-.025em;
  margin:18px 0 10px;
  color:var(--yv3-ink);
}
.yv3-card p,
.yv3-card li{
  color:var(--yv3-muted);
  font-size:16px;
  line-height:1.55;
}
.yv3-card ol{padding-left:22px;margin:12px 0 0;}
.yv3-card li{margin:8px 0;}

.yv3-section-title{
  font-size:clamp(30px,8vw,38px);
  line-height:1.04;
  font-weight:650;
  letter-spacing:-.065em;
  margin:0 0 8px;
  color:var(--yv3-ink);
}
.yv3-eyebrow{
  font-weight:850;
  color:var(--yv3-purple-600);
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  margin:0 0 8px;
}
.yv3-subtitle{
  font-weight:750;
  font-size:clamp(16px,4.2vw,19px)!important;
  line-height:1.36!important;
  color:var(--yv3-muted)!important;
  margin:0 0 18px!important;
}

.yv3-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.yv3-grid{
  display:grid;
  gap:14px;
  width:100%;
}
.yv3-grid.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
.yv3-grid > *{min-width:0;}

.yv3-search-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  margin-bottom:16px;
}
.yv3-pill-title{
  border:0;
  background:var(--yv3-purple-900);
  color:#fff;
  border-radius:26px;
  padding:12px 18px;
  font-size:17px;
  font-weight:700;
  min-height:48px;
  width:100%;
  text-align:center;
}
.yv3-sort-btn,
.yv3-small-btn{
  border:0;
  background:#fdf4ef;
  color:var(--yv3-ink);
  border-radius:24px;
  padding:11px 18px;
  font-size:16px;
  min-height:46px;
  font-weight:500;
  white-space:nowrap;
}

.yv3-input,
.yv3-select,
.yv3-textarea{
  width:100%;
  max-width:100%;
  border:1px solid var(--yv3-line);
  background:#fff;
  border-radius:20px;
  padding:14px 16px;
  font:inherit;
  font-size:16px;
  line-height:1.45;
  color:var(--yv3-ink);
  outline:none;
  box-shadow:0 8px 18px rgba(80,36,10,.025);
  min-height:52px;
  transition:border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.yv3-select{padding-right:34px;}
.yv3-textarea{
  min-height:178px;
  resize:vertical;
  display:block;
}
.yv3-input::placeholder,
.yv3-textarea::placeholder{color:#aa9d96;opacity:1;}
.yv3-input:focus,
.yv3-select:focus,
.yv3-textarea:focus{
  border-color:#e89c70;
  box-shadow:0 0 0 4px rgba(214,117,61,.11);
}
.yv3-label{
  display:block;
  font-size:13px;
  line-height:1.2;
  font-weight:850;
  color:var(--yv3-purple-900);
  margin:18px 0 8px;
}
.yv3-divider{
  border:0;
  border-top:1px dashed var(--yv3-line);
  margin:20px 0;
}

.yv3-primary,
.yv3-secondary,
.yv3-danger-btn{
  width:100%;
  border-radius:22px;
  min-height:54px;
  padding:14px 18px;
  font-size:16px;
  line-height:1.2;
  font-weight:850;
  text-align:center;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:0;
  margin-top:14px;
}
.yv3-primary{
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-500));
  color:#fff;
  box-shadow:0 14px 26px rgba(169,81,30,.20);
}
.yv3-secondary{
  background:#fff;
  color:var(--yv3-ink);
  border:1px solid var(--yv3-line);
  box-shadow:none;
}
.yv3-danger-btn{
  background:#fff0f4;
  color:#a43248;
  border:1px solid #ffd7df;
  box-shadow:none;
}

.yv3-chip-wrap{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  align-items:flex-start;
}
.yv3-chip{
  border:1px solid var(--yv3-line);
  background:#fff;
  color:#695b53;
  border-radius:999px;
  min-height:38px;
  padding:8px 13px;
  font-weight:750;
  font-size:14px;
  line-height:1.1;
}
.yv3-chip.active{
  background:var(--yv3-purple-800);
  color:#fff;
  border-color:var(--yv3-purple-800);
  box-shadow:0 8px 18px rgba(140,64,20,.16);
}
.yv3-more-chip{border-color:#e9cebe;color:#c46128;background:#fffbf9;}

.yv3-voice-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  border:1px solid var(--yv3-line);
  border-radius:22px;
  padding:12px;
  background:linear-gradient(135deg,#fff,#fff6f1);
  gap:12px;
  margin:18px 0 16px;
  width:100%;
}
.yv3-voice-row strong{
  font-weight:850;
  color:var(--yv3-ink);
  line-height:1.2;
}
.yv3-voice-btn{
  border:0;
  border-radius:18px;
  background:linear-gradient(135deg,var(--yv3-purple-800),var(--yv3-purple-500));
  color:#fff;
  min-height:42px;
  padding:10px 16px;
  font-weight:850;
  white-space:nowrap;
}

.yv3-check-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:14px;
  align-items:center;
  padding:16px;
  border:1px solid var(--yv3-line);
  border-radius:22px;
  background:linear-gradient(135deg,#fff,#fff7f2);
  margin:18px 0;
}
.yv3-check-card strong{font-size:18px;line-height:1.25;color:var(--yv3-ink);}
.yv3-check-card input{
  width:24px;
  height:24px;
  accent-color:var(--yv3-purple-600);
  margin:0;
}

.yv3-list-card{
  border:1px solid var(--yv3-line);
  background:#fff;
  border-radius:22px;
  padding:16px;
  margin:14px 0 0;
  cursor:pointer;
  box-shadow:0 6px 16px rgba(68,35,16,.035);
  width:100%;
  overflow:visible;
}
.yv3-list-card h3{
  font-size:20px;
  line-height:1.22;
  margin:0 0 6px;
  font-weight:650;
  color:var(--yv3-ink);
  letter-spacing:-.035em;
}
.yv3-list-card .date{
  font-weight:850;
  color:var(--yv3-purple-600);
  margin:0 0 8px;
  font-size:14px;
}
.yv3-list-card p{
  font-size:15px;
  color:var(--yv3-muted);
  margin:0;
  line-height:1.45;
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.yv3-empty{
  border:1px solid var(--yv3-line);
  background:linear-gradient(135deg,#fff,#fff7f3);
  border-radius:22px;
  padding:24px 16px;
  text-align:center;
  color:var(--yv3-muted);
  font-size:16px;
  line-height:1.35;
  font-weight:800;
  margin-top:14px;
}
.yv3-outside-cta{
  padding:0;
  width:calc(100% - 44px);
  max-width:100%;
  margin:18px auto 26px;
}
.yv3-outside-cta .yv3-primary{
  width:100%;
  margin:0;
  display:flex;
}

/* Auth screens */
.yv3-auth-wrap{
  min-height:100dvh;
  display:grid;
  place-items:center;
  padding:24px 18px;
  background:
    radial-gradient(circle at 80% 92%,rgba(255,158,102,.35),transparent 40%),
    linear-gradient(150deg,#351807,#c46b37);
}
.yv3-auth-card{
  width:min(410px,calc(100vw - 36px));
  background:rgba(255,255,255,.82);
  border:1px solid rgba(255,255,255,.66);
  border-radius:34px;
  padding:28px;
  box-shadow:0 28px 80px rgba(0,0,0,.24);
  backdrop-filter:blur(18px);
}
.yv3-auth-card h1{
  font-size:42px;
  line-height:1.05;
  margin:0 0 6px;
  letter-spacing:-.065em;
  text-align:center;
  font-weight:500;
}
.yv3-auth-card h2{
  font-size:29px;
  line-height:1.15;
  margin:4px 0 12px;
  text-align:center;
  font-weight:800;
}
.yv3-auth-card p{
  text-align:center;
  color:var(--yv3-muted);
  font-weight:750;
  line-height:1.38;
  font-size:16px;
}
.yv3-auth-card .yv3-primary{margin-top:18px;}
.yv3-auth-card .yv3-secondary{margin-top:10px;}
.yv3-link-btn{
  border:0;
  background:transparent;
  color:var(--yv3-purple-900);
  font-weight:850;
  margin:16px auto 0;
  width:100%;
  font-size:15px;
  min-height:36px;
  text-align:center;
}

.yv3-tabs{
  display:flex;
  gap:9px;
  overflow-x:auto;
  padding:2px 1px 12px;
  margin:4px 0 20px;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.yv3-tabs::-webkit-scrollbar{display:none;}
.yv3-tab{
  border:1px solid var(--yv3-line);
  background:#fff;
  color:var(--yv3-muted);
  border-radius:999px;
  white-space:nowrap;
  padding:10px 15px;
  min-height:42px;
  font-weight:850;
  font-size:14px;
  flex:0 0 auto;
}
.yv3-tab.active{
  background:var(--yv3-purple-900);
  color:#fff;
  border-color:var(--yv3-purple-900);
}

.yv3-metric{
  border:1px solid var(--yv3-line);
  background:#fff;
  border-radius:22px;
  padding:18px;
  min-height:112px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.yv3-metric strong{
  display:block;
  font-size:clamp(28px,8vw,36px);
  line-height:1;
  color:var(--yv3-purple-900);
  font-weight:800;
  margin-bottom:10px;
}
.yv3-metric span{
  font-weight:850;
  color:var(--yv3-muted);
  font-size:14px;
}

.yv3-setting-card,
.yv3-action-card{
  border:1px solid var(--yv3-line);
  background:#fff;
  border-radius:22px;
  padding:17px;
  margin:12px 0 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  width:100%;
  text-align:left;
  color:var(--yv3-ink);
  box-shadow:none;
}
button.yv3-setting-card,
button.yv3-action-card{
  min-height:74px;
}
.yv3-setting-card h3,
.yv3-action-card h3{
  margin:0;
  font-size:18px;
  line-height:1.22;
  letter-spacing:-.025em;
  font-weight:850;
}
.yv3-setting-card p,
.yv3-action-card p{
  margin:4px 0 0;
  color:var(--yv3-muted);
  font-weight:760;
  font-size:14px;
  line-height:1.35;
}
.yv3-setting-card input[type="checkbox"]{
  flex:0 0 auto;
  width:24px;
  height:24px;
  accent-color:var(--yv3-purple-600);
}
.yv3-chevron{
  font-size:24px;
  line-height:1;
  color:var(--yv3-purple-900);
  flex:0 0 auto;
}

/* Fixed app navigation */
.yv3-bottom-nav{
  position:fixed;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  z-index:50;
  width:min(500px,calc(100vw - 20px));
  height:76px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(235,222,215,.96);
  border-bottom:0;
  border-radius:26px 26px 0 0;
  box-shadow:0 -10px 30px rgba(103,53,24,.14);
  display:grid;
  grid-template-columns:1fr 1fr 86px 1fr 1fr;
  align-items:center;
  padding:10px 14px max(8px,env(safe-area-inset-bottom));
  backdrop-filter:blur(18px);
}
.yv3-nav-item,
.yv3-nav-plus{
  border:0;
  color:#988a82;
  display:grid;
  place-items:center;
  padding:0;
}
.yv3-nav-item{
  width:48px;
  height:48px;
  border-radius:16px;
  margin:0 auto;
  background:transparent;
}
.yv3-nav-item.active{
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-600));
  color:#fff;
  box-shadow:0 10px 24px rgba(185,93,40,.24);
}
.yv3-nav-plus{
  width:68px;
  height:68px;
  border-radius:50%;
  margin:-30px auto 0;
  background:linear-gradient(145deg,var(--yv3-purple-900),var(--yv3-purple-600));
  color:#fff;
  box-shadow:0 18px 30px rgba(164,78,29,.34);
  font-size:42px;
  font-weight:800;
  line-height:1;
}
.yv3-nav-plus span{transform:translateY(-3px);}
.yv3-nav-item svg{
  width:24px;
  height:24px;
  stroke:currentColor;
  fill:none;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.yv3-section-nav{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:12px 0 18px;
}
.yv3-mini-card{
  padding:16px;
  border:1px solid var(--yv3-line);
  border-radius:20px;
  background:#fff;
  text-align:center;
  color:var(--yv3-ink);
  min-height:94px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
button.yv3-mini-card{appearance:none;}
.yv3-mini-card strong{
  font-size:17px;
  line-height:1.2;
  color:var(--yv3-ink);
}
.yv3-compact-text{
  font-size:13px!important;
  color:var(--yv3-muted)!important;
  font-weight:800!important;
  line-height:1.34!important;
}

.yv3-task{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:12px;
  align-items:start;
  border:1px solid var(--yv3-line);
  border-radius:20px;
  padding:13px;
  background:#fff;
  margin:10px 0;
}
.yv3-task.done{opacity:.58;}
.yv3-task input[type="checkbox"]{
  width:22px;
  height:22px;
  accent-color:var(--yv3-purple-600);
  margin-top:2px;
}
.yv3-task h4{margin:0 0 4px;font-size:16px;line-height:1.25;}
.yv3-task p{margin:0;color:var(--yv3-muted);font-size:13px;font-weight:800;line-height:1.35;}
.yv3-delete-mini{
  border:0;
  background:#fff0f3;
  color:#b23852;
  border-radius:999px;
  width:30px;
  height:30px;
}

.yv3-calendar{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:7px;
  width:100%;
  margin-top:12px;
}
.yv3-day{
  min-height:42px;
  border:1px solid var(--yv3-line);
  border-radius:12px;
  background:#fff;
  display:grid;
  place-items:center;
  font-weight:800;
  font-size:13px;
  position:relative;
  color:var(--yv3-ink);
}
.yv3-day.period{background:#fff1dc;border-color:#ffd792;}
.yv3-day.fertile{background:#e9fff8;border-color:#a7f2d9;}
.yv3-day.ovulation{background:#d7f5ff;border-color:#90d9f0;}
.yv3-day.today{box-shadow:inset 0 0 0 2px var(--yv3-purple-900);}
.yv3-legend{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  font-size:12px;
  color:var(--yv3-muted);
  font-weight:850;
  margin-top:14px;
}
.yv3-dot{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:4px;}

.yv3-reflection pre,
.yv3-detail-text{
  white-space:pre-wrap;
  font:inherit;
  font-size:15px;
  line-height:1.58;
  color:#54443a;
  overflow-wrap:anywhere;
}
.yv3-reflection pre{
  background:#fff;
  border:1px solid var(--yv3-line);
  border-radius:22px;
  padding:16px;
  margin:16px 0;
}
.yv3-save-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:12px;
  margin-top:16px;
}
.yv3-save-row .yv3-primary,
.yv3-save-row .yv3-secondary,
.yv3-save-row .yv3-danger-btn{margin-top:0;}

.yv3-video-card{
  border:1px solid var(--yv3-line);
  background:#fff;
  border-radius:22px;
  overflow:hidden;
  margin:16px 0 0;
  width:100%;
}
.yv3-video-thumb{
  min-height:160px;
  height:auto;
  aspect-ratio:16/9;
  background:linear-gradient(135deg,#efe1d9,#f3c4a8);
  display:grid;
  place-items:center;
  color:#fff;
  font-size:42px;
  font-weight:900;
}
.yv3-video-card h3{
  padding:14px 14px 4px;
  margin:0;
  font-size:17px;
  line-height:1.25;
}
.yv3-video-card p{
  padding:0 14px 12px;
  margin:0;
  color:var(--yv3-muted);
  font-size:14px;
  line-height:1.4;
}
.yv3-small-tag{
  display:inline-block;
  margin:0 14px 14px;
  border-radius:999px;
  background:#fff2eb;
  color:#a04f20;
  padding:6px 10px;
  font-weight:850;
  font-size:12px;
}

.yv3-report-list{
  display:grid;
  gap:12px;
  margin-top:12px;
}
.yv3-report-item{
  background:#fff;
  border:1px solid var(--yv3-line);
  border-radius:20px;
  padding:16px;
  font-size:16px;
  color:var(--yv3-ink-soft);
  line-height:1.45;
}
.yv3-report-item strong{
  display:block;
  font-size:18px;
  margin-bottom:6px;
  color:var(--yv3-ink);
  font-weight:850;
}
.yv3-report-item p{margin:0;color:var(--yv3-ink-soft);}
.yv3-pill-note{
  border-radius:22px;
  background:linear-gradient(135deg,#fff,#fff5ef);
  border:1px solid var(--yv3-line);
  padding:16px;
  color:var(--yv3-muted)!important;
  font-weight:800!important;
  line-height:1.48!important;
}

.yv3-cycle-phase{
  display:flex;
  gap:14px;
  align-items:center;
  margin:12px 0 20px;
}
.yv3-cycle-phase h2{
  margin:0 0 6px!important;
  font-size:clamp(24px,6.6vw,31px)!important;
  line-height:1.14!important;
}
.yv3-cycle-ring{
  width:72px;
  height:72px;
  flex:0 0 72px;
  border-radius:50%;
  background:conic-gradient(var(--yv3-purple-600) var(--p),#f7ede7 0);
  display:grid;
  place-items:center;
}
.yv3-cycle-ring span{
  width:54px;
  height:54px;
  border-radius:50%;
  background:#fff;
  display:grid;
  place-items:center;
  font-weight:900;
  color:var(--yv3-purple-900);
}
.yv3-header-card{padding-top:12px;}
.yv3-floating-label{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#b07d5f;}
.yv3-hidden{display:none!important;}

@media(max-width:430px){
  .yv3-app{max-width:none;}
  .yv3-hero{padding:12px 11px 22px;border-radius:0 0 30px 30px;}
  .yv3-toprow{grid-template-columns:minmax(94px,1fr) minmax(70px,.64fr) minmax(78px,.78fr) 38px;gap:6px;}
  .yv3-brand-pill{font-size:14px;height:38px;min-height:38px;padding-right:8px;}
  .yv3-brand-pill .yv3-logo-mark{width:30px;height:30px;}
  .yv3-lang{height:38px;min-height:38px;font-size:13px;padding-left:9px;padding-right:18px;background-position:calc(100% - 10px) 15px,0 0;}
  .yv3-points-pill{height:38px;min-height:38px;padding:1px 5px;}
  .yv3-points-pill small{font-size:8.5px;}
  .yv3-points-pill strong{font-size:15px;}
  .yv3-profile-btn{width:38px;height:38px;min-height:38px;border-radius:14px;}
  .yv3-quote-card{margin-top:16px;padding:20px 14px;border-radius:26px;}
  .yv3-quote-card h2{font-size:clamp(20px,5.6vw,26px);}
  .yv3-screen{padding:20px 12px 20px;}
  .yv3-outside-cta{width:calc(100% - 40px);margin:18px auto 26px;}
  .yv3-card{padding:20px;border-radius:26px;margin-bottom:20px;}
  .yv3-section-title{font-size:clamp(28px,8vw,34px);}
  .yv3-card h2:not(.yv3-section-title){font-size:clamp(23px,6.4vw,29px);}
  .yv3-subtitle{font-size:16px!important;}
  .yv3-grid.two{gap:12px;}
  .yv3-metric{min-height:104px;padding:16px;}
  .yv3-bottom-nav{width:100%;height:74px;border-radius:24px 24px 0 0;grid-template-columns:1fr 1fr 82px 1fr 1fr;}
  .yv3-nav-plus{width:66px;height:66px;margin-top:-30px;}
  .yv3-calendar{gap:6px;}
  .yv3-day{min-height:39px;font-size:12px;border-radius:11px;}
}

@media(max-width:360px){
  .yv3-toprow{grid-template-columns:minmax(86px,1fr) minmax(64px,.6fr) minmax(72px,.75fr) 36px;gap:5px;}
  .yv3-brand-pill{font-size:13px;}
  .yv3-lang{font-size:12px;}
  .yv3-points-pill strong{font-size:14px;}
  .yv3-profile-btn{width:36px;height:36px;min-height:36px;}
  .yv3-card{padding:18px;}
  .yv3-search-row{grid-template-columns:1fr;}
  .yv3-sort-btn{width:100%;}
  .yv3-save-row{grid-template-columns:1fr;}
}

/* v3.1.4 focused polish: completed planner/cycle history flows and spacing rhythm */
.yv3-screen{
  display:flex;
  flex-direction:column;
  gap:0;
}
.yv3-screen > .yv3-card + .yv3-card{
  margin-top:2px;
}
.yv3-outside-cta{
  width:calc(100% - 44px);
  margin:22px auto 30px;
}
.yv3-outside-cta .yv3-primary{
  max-width:100%;
  min-height:56px;
  border-radius:22px;
}
.yv3-journal-list{
  display:grid;
  gap:14px;
}
.yv3-journal-list .yv3-list-card{
  margin-top:0;
}
.yv3-list-card{
  position:relative;
  min-height:132px;
  overflow:hidden;
}
.yv3-list-card h3{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.yv3-list-card p{
  font-size:14px;
  line-height:1.42;
  -webkit-line-clamp:3;
}
.yv3-empty{
  min-height:112px;
  display:grid;
  place-items:center;
}
.yv3-panel-card{
  border:1px solid var(--yv3-line);
  border-radius:22px;
  background:linear-gradient(180deg,#fff,#fffbf8);
  padding:16px;
  margin:16px 0 20px;
  box-shadow:0 8px 18px rgba(68,35,16,.04);
}
.yv3-panel-card h3{
  margin-top:0;
}
.yv3-week-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:14px 0 18px;
}
.yv3-day-card{
  position:relative;
  border:1px solid var(--yv3-line);
  border-radius:20px;
  background:#fff;
  color:var(--yv3-ink);
  min-height:92px;
  padding:16px;
  text-align:left;
  box-shadow:0 6px 16px rgba(68,35,16,.035);
}
.yv3-day-card strong{
  display:block;
  font-size:20px;
  line-height:1.1;
  margin-bottom:8px;
}
.yv3-day-card span{
  color:var(--yv3-muted);
  font-weight:850;
  font-size:13px;
}
.yv3-day-card.active{
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-600));
  border-color:transparent;
  color:#fff;
  box-shadow:0 14px 26px rgba(169,81,30,.18);
}
.yv3-day-card.active span{color:rgba(255,255,255,.82)}
.yv3-day-card i,
.yv3-day i{
  position:absolute;
  right:10px;
  top:10px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--yv3-purple-500);
  box-shadow:0 0 0 4px rgba(226,127,70,.12);
}
button.yv3-day{
  appearance:none;
  padding:0;
  cursor:pointer;
}
.yv3-day.selected{
  border-color:var(--yv3-purple-600);
  box-shadow:inset 0 0 0 2px var(--yv3-purple-600),0 8px 18px rgba(148,67,20,.10);
}
.yv3-report-grid{
  grid-template-columns:1fr;
}
.yv3-report-item{
  background:linear-gradient(180deg,#fff,#fffbf8);
  min-height:78px;
}
.yv3-history-card{
  padding-right:48px;
}
.yv3-float-delete{
  position:absolute;
  right:12px;
  top:12px;
}
.yv3-task{
  min-width:0;
}
.yv3-task h4,
.yv3-task p{
  max-width:100%;
  overflow-wrap:anywhere;
}
.yv3-tabs{
  margin-top:14px;
  padding-bottom:14px;
}
.yv3-tab{
  box-shadow:0 3px 8px rgba(68,35,16,.025);
}
.yv3-card .yv3-primary + .yv3-secondary,
.yv3-card .yv3-secondary + .yv3-secondary{
  margin-top:12px;
}
.yv3-cycle-phase{
  padding:16px;
  border:1px solid var(--yv3-line);
  border-radius:24px;
  background:linear-gradient(135deg,#fff,#fff7f3);
}
.yv3-calendar{
  gap:8px;
}
.yv3-legend{
  align-items:center;
  row-gap:8px;
}
.yv3-video-card{
  max-width:100%;
}
.yv3-video-thumb{
  overflow:hidden;
}
.yv3-card:not(.flat) > .yv3-input,
.yv3-card:not(.flat) > .yv3-select,
.yv3-card:not(.flat) > .yv3-textarea{
  margin-bottom:2px;
}

@media(min-width:460px){
  .yv3-report-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:430px){
  .yv3-outside-cta{width:calc(100% - 40px);margin:22px auto 28px;}
  .yv3-week-grid{gap:10px;}
  .yv3-day-card{min-height:84px;padding:14px;}
  .yv3-day-card strong{font-size:18px;}
}
@media(max-width:360px){
  .yv3-outside-cta{width:calc(100% - 36px);}
  .yv3-week-grid{grid-template-columns:1fr;}
}


/* v3.1.5 — polish for journal cards, planner calendars, spacing and typographic rhythm */
.yanchi-v3-shell{
  font-size:16px;
  letter-spacing:-.01em;
}
.yv3-app{
  padding-bottom:calc(112px + env(safe-area-inset-bottom));
}
.yv3-screen{
  gap:20px;
  padding:22px 14px 28px;
}
.yv3-screen > .yv3-card{
  margin-bottom:0;
}
.yv3-card{
  padding:24px;
  border-radius:30px;
  overflow:visible;
}
.yv3-card h2:not(.yv3-section-title){
  margin:28px 0 14px;
  font-weight:600;
  letter-spacing:-.055em;
}
.yv3-card h3{
  line-height:1.28;
  letter-spacing:-.028em;
}
.yv3-subtitle{
  max-width:42ch;
}
.yv3-recent-card{
  padding:24px;
}
.yv3-search-row{
  margin-bottom:18px;
  align-items:center;
}
.yv3-pill-title,
.yv3-sort-btn{
  line-height:1.15;
  display:flex;
  align-items:center;
  justify-content:center;
}
.yv3-journal-list{
  margin-top:18px;
  display:grid;
  gap:16px;
}
.yv3-journal-list .yv3-list-card,
.yv3-list-card{
  width:100%;
  min-width:0;
  min-height:auto;
  margin:0;
  padding:22px 20px 20px;
  border-radius:24px;
  overflow:hidden;
}
.yv3-list-card h3{
  font-size:19px;
  line-height:1.3;
  padding-top:2px;
  margin:0 0 8px;
  font-weight:800;
}
.yv3-list-card .date{
  margin-bottom:10px;
  line-height:1.25;
}
.yv3-list-card p{
  font-size:15px;
  line-height:1.5;
  color:#908178;
  padding-bottom:2px;
}
.yv3-empty{
  margin-top:16px;
  min-height:118px;
  padding:26px 18px;
  border-radius:24px;
}
.yv3-home-screen{
  gap:0;
}
.yv3-home-screen .yv3-card{
  margin-bottom:0;
}
.yv3-home-cta{
  width:calc(100% - 64px)!important;
  max-width:436px!important;
  margin:22px auto 28px!important;
}
.yv3-home-cta .yv3-primary{
  min-height:58px;
  border-radius:24px;
}
.yv3-life-tools{
  margin-top:0!important;
  margin-bottom:18px!important;
}
.yv3-input,
.yv3-select,
.yv3-textarea{
  border-radius:20px;
  font-size:16px;
  line-height:1.45;
}
.yv3-textarea{
  line-height:1.55;
}
.yv3-chip{
  line-height:1.2;
  min-height:38px;
}
.yv3-tabs{
  gap:10px;
  margin:18px 0 24px;
  padding-bottom:16px;
}
.yv3-tab{
  min-height:44px;
  padding:10px 18px;
}
.yv3-planner-card .yv3-tabs,
.yv3-card .yv3-tabs{
  scrollbar-color:#dbc9bf transparent;
}
.yv3-planner-datebar{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(142px,.68fr);
  gap:12px;
  align-items:end;
  padding:16px;
  border:1px solid var(--yv3-line);
  border-radius:22px;
  background:linear-gradient(135deg,#fff,#fff7f3);
  margin-bottom:22px;
}
.yv3-planner-datebar strong{
  display:block;
  font-size:20px;
  line-height:1.2;
  margin-top:4px;
  color:var(--yv3-ink);
}
.yv3-planner-datebar .yv3-input{
  min-height:48px;
  padding:12px 14px;
}
.yv3-planner-month{
  margin-top:4px;
}
.yv3-planner-month .yv3-row{
  margin-bottom:14px;
}
.yv3-planner-month h2{
  margin:0!important;
  text-align:center;
  font-size:clamp(22px,6vw,30px)!important;
}
.yv3-week-labels,
.yv3-planner-calendar{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:8px;
}
.yv3-week-labels{
  margin-bottom:8px;
  color:var(--yv3-muted);
  font-size:12px;
  font-weight:900;
  text-align:center;
}
.yv3-planner-day,
.yv3-planner-cal-empty{
  min-height:42px;
  border-radius:13px;
}
.yv3-planner-day{
  border:1px solid var(--yv3-line);
  background:#fff;
  color:var(--yv3-ink);
  display:grid;
  place-items:center;
  font-weight:850;
  position:relative;
}
.yv3-planner-day.today{
  box-shadow:inset 0 0 0 2px var(--yv3-purple-900);
}
.yv3-planner-day.selected{
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-600));
  color:#fff;
  border-color:transparent;
}
.yv3-planner-day.has-plan i{
  position:absolute;
  right:6px;
  top:6px;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--yv3-purple-500);
  box-shadow:0 0 0 4px rgba(226,127,70,.13);
}
.yv3-day-card{
  padding:18px;
  border-radius:22px;
  min-height:104px;
}
.yv3-day-card strong{
  line-height:1.24;
}
.yv3-day-card span{
  line-height:1.35;
  display:block;
}
.yv3-panel-card{
  padding:18px;
  border-radius:24px;
  overflow:visible;
}
.yv3-timeline-block{
  align-items:stretch;
  text-align:left;
}
.yv3-report-list{
  gap:14px;
}
.yv3-report-item{
  padding:18px 20px;
  border-radius:22px;
  line-height:1.5;
}
.yv3-report-item strong{
  line-height:1.25;
}
.yv3-cycle-phase{
  align-items:center;
}
.yv3-cycle-phase h2{
  font-weight:600!important;
  letter-spacing:-.055em;
}
.yv3-bottom-nav{
  height:76px;
  width:min(500px,calc(100vw - 18px));
}
.yv3-nav-plus{
  width:70px;
  height:70px;
  margin-top:-32px;
}

@media(max-width:430px){
  .yv3-screen{padding:20px 12px 26px;gap:18px;}
  .yv3-card{padding:20px;border-radius:28px;}
  .yv3-recent-card{padding:20px;}
  .yv3-home-cta{width:calc(100% - 64px)!important;margin:20px auto 26px!important;}
  .yv3-search-row{grid-template-columns:minmax(0,1fr) auto;gap:12px;}
  .yv3-pill-title{font-size:16px;min-height:48px;padding:12px 14px;}
  .yv3-sort-btn{font-size:15px;min-height:48px;padding:10px 16px;}
  .yv3-list-card{padding:20px 18px 18px;border-radius:22px;}
  .yv3-list-card h3{font-size:18px;line-height:1.34;}
  .yv3-planner-datebar{grid-template-columns:1fr;padding:14px;}
  .yv3-week-labels,.yv3-planner-calendar{gap:6px;}
  .yv3-planner-day,.yv3-planner-cal-empty{min-height:39px;border-radius:12px;font-size:13px;}
  .yv3-day-card{min-height:96px;}
}
@media(max-width:360px){
  .yv3-home-cta{width:calc(100% - 58px)!important;}
  .yv3-pill-title{font-size:15px;}
  .yv3-sort-btn{font-size:14px;padding-left:13px;padding-right:13px;}
  .yv3-week-labels,.yv3-planner-calendar{gap:5px;}
  .yv3-planner-day,.yv3-planner-cal-empty{min-height:36px;font-size:12px;}
}

/* v3.1.6 — daily/weekly integration and visual proportion polish */
:root{
  --yv3-radius-sm:7px;
  --yv3-radius-md:9px;
  --yv3-radius-lg:11px;
  --yv3-radius-xl:14px;
  --yv3-radius-xxl:17px;
}
.yv3-hero{
  border-radius:0 0 22px 22px!important;
  padding-bottom:22px;
  margin-bottom:22px;
}
.yv3-quote-card{
  border-radius:16px!important;
}
.yv3-screen{
  gap:24px!important;
  padding-top:0!important;
}
.yv3-home-screen{
  gap:24px!important;
}
.yv3-card,
.yv3-recent-card,
.yv3-life-tools,
.yv3-planner-card{
  border-radius:18px!important;
}
.yv3-card{
  padding:24px 22px!important;
  overflow:visible!important;
}
.yv3-card + .yv3-card,
.yv3-home-screen .yv3-card + .yv3-card{
  margin-top:24px!important;
}
.yv3-input,
.yv3-select,
.yv3-textarea{
  border-radius:12px!important;
  font-size:15.5px!important;
}
.yv3-primary,
.yv3-secondary,
.yv3-pill-title,
.yv3-sort-btn,
.yv3-ghost-btn,
.yv3-voice-btn,
.yv3-small-btn{
  border-radius:14px!important;
  font-weight:850!important;
  letter-spacing:-.015em!important;
}
.yv3-chip,
.yv3-tab{
  border-radius:999px!important;
}
.yv3-section-title{
  font-size:clamp(30px,7.4vw,36px)!important;
  line-height:1.08!important;
  letter-spacing:-.055em!important;
}
.yv3-card h2:not(.yv3-section-title){
  font-size:clamp(22px,5.8vw,28px)!important;
  line-height:1.16!important;
  letter-spacing:-.045em!important;
}
.yv3-subtitle{
  font-size:clamp(15px,3.9vw,18px)!important;
  line-height:1.42!important;
}
.yv3-search-row{
  margin-bottom:18px!important;
}
.yv3-journal-list{
  gap:16px!important;
}
.yv3-list-card{
  border-radius:14px!important;
  padding:20px 18px 18px!important;
  min-height:0!important;
  overflow:hidden!important;
}
.yv3-list-card h3{
  font-size:17px!important;
  line-height:1.28!important;
  font-weight:850!important;
  letter-spacing:-.025em!important;
  margin-bottom:7px!important;
  padding-top:0!important;
}
.yv3-list-card .date{
  font-size:13px!important;
  line-height:1.2!important;
  margin-bottom:8px!important;
}
.yv3-list-card p{
  font-size:13.5px!important;
  line-height:1.42!important;
  font-weight:500!important;
  color:#80726a!important;
  letter-spacing:-.005em!important;
  -webkit-line-clamp:3!important;
}
.yv3-empty{
  border-radius:14px!important;
}
.yv3-home-cta{
  width:calc(100% - 44px)!important;
  margin:24px auto!important;
}
.yv3-home-cta .yv3-primary{
  min-height:56px!important;
  border-radius:14px!important;
}
.yv3-life-tools{
  margin-top:0!important;
  padding:24px 22px!important;
}
.yv3-tool-grid{
  gap:14px!important;
}
.yv3-tool-card{
  position:relative;
  min-height:134px!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  text-align:left!important;
  padding:18px!important;
  border-radius:16px!important;
  background:
    radial-gradient(circle at 88% 8%,rgba(227,119,57,.13),transparent 32%),
    linear-gradient(180deg,#fff,#fffbf8)!important;
  border:1px solid #eaddd5!important;
  box-shadow:0 12px 26px rgba(80,34,8,.06)!important;
}
.yv3-tool-card .yv3-tool-icon{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:12px;
  margin-bottom:18px;
  background:linear-gradient(135deg,#5f2707,#df7537);
  color:#fff;
  font-weight:950;
  box-shadow:0 10px 20px rgba(178,84,29,.18);
}
.yv3-tool-card strong{
  font-size:17px!important;
  line-height:1.14!important;
  letter-spacing:-.025em!important;
}
.yv3-tool-card .yv3-compact-text{
  margin-top:8px;
  display:block;
  font-size:13px!important;
  line-height:1.32!important;
}
.yv3-tabs{
  gap:10px!important;
  padding:2px 1px 16px!important;
  margin:18px 0 22px!important;
}
.yv3-tab{
  min-height:42px!important;
  padding:9px 16px!important;
  font-size:13.5px!important;
  line-height:1.2!important;
}
.yv3-planner-datebar,
.yv3-panel-card,
.yv3-report-item,
.yv3-check-card,
.yv3-setting-card,
.yv3-action-card,
.yv3-metric,
.yv3-cycle-phase,
.yv3-day-card{
  border-radius:14px!important;
}
.yv3-planner-calendar{
  gap:7px!important;
}
.yv3-planner-day,
.yv3-planner-cal-empty,
.yv3-day{
  border-radius:8px!important;
}
.yv3-day-card{
  padding:16px!important;
  min-height:92px!important;
}
.yv3-task{
  border-radius:12px!important;
}
.yv3-task.weekly-source{
  background:linear-gradient(180deg,#fff,#fffaf7);
  border-style:dashed;
}
.yv3-task.weekly-source h4:after{
  content:' weekly';
  margin-left:6px;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  color:#dc7539;
  letter-spacing:.06em;
}
.yv3-year-foundation{
  margin-top:8px!important;
}
.yv3-bottom-nav{
  border-radius:18px 18px 0 0!important;
}
.yv3-nav-item.active{
  border-radius:12px!important;
}
@media(max-width:430px){
  .yv3-card{padding:22px 20px!important;border-radius:16px!important;}
  .yv3-hero{border-radius:0 0 20px 20px!important;}
  .yv3-quote-card{border-radius:15px!important;}
  .yv3-tool-card{min-height:126px!important;padding:16px!important;}
  .yv3-tool-card .yv3-tool-icon{width:34px;height:34px;border-radius:10px;margin-bottom:14px;}
  .yv3-home-cta{width:calc(100% - 40px)!important;}
}
@media(max-width:360px){
  .yv3-tool-grid{grid-template-columns:1fr!important;}
  .yv3-home-cta{width:calc(100% - 36px)!important;}
}

/* v3.1.7 continuous reflection + cycle conversation polish */
.yv3-chat-window{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin:18px 0;
  width:100%;
}
.yv3-chat-bubble{
  max-width:94%;
  padding:14px 16px;
  border:1px solid rgba(101,45,13,.10);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 26px rgba(101,45,13,.06);
  overflow-wrap:anywhere;
  white-space:pre-wrap;
}
.yv3-chat-bubble.assistant{
  align-self:flex-start;
  background:linear-gradient(180deg,#fff,#fffaf7);
}
.yv3-chat-bubble.user{
  align-self:flex-end;
  background:linear-gradient(135deg,#5e2707,#e67635);
  color:#fff;
  border-color:rgba(255,255,255,.25);
}
.yv3-chat-bubble strong{
  display:block;
  font-size:12px;
  line-height:1.2;
  margin-bottom:6px;
  letter-spacing:.04em;
  text-transform:uppercase;
  opacity:.78;
}
.yv3-chat-bubble p{
  margin:0;
  font-size:14.5px;
  line-height:1.55;
}
.yv3-chat-input{
  min-height:118px!important;
  margin-top:12px!important;
}
.yv3-cycle-ask{
  margin-top:20px;
}
.yv3-saved-cycle-chats{
  margin-top:20px;
}
.yv3-chat-saved p{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.yv3-detail-text{
  white-space:pre-wrap;
}

/* v3.1.9 chat readability and response cleanup polish */
.yv3-chat-bubble.user{
  background:linear-gradient(135deg,#5e2707 0%,#bc5417 52%,#e67635 100%)!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.28)!important;
}
.yv3-chat-bubble.user strong,
.yv3-chat-bubble.user p{
  color:#ffffff!important;
  opacity:1!important;
  text-shadow:0 1px 1px rgba(0,0,0,.18);
}
.yv3-chat-bubble.user p{font-weight:650;}
.yv3-chat-bubble.assistant p,
.yv3-detail-text{
  color:#524035!important;
}
.yv3-chat-bubble.assistant strong{color:#652d0d!important;opacity:.9!important;}

/* v3.2.0 — image journals, blog-style listings, desktop app width, dashboard polish */
.yv3-media-upload{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:14px;
  margin:18px 0 14px;
  border:1px solid var(--yv3-line);
  border-radius:16px;
  background:linear-gradient(135deg,#fff,#fff8f4);
}
.yv3-media-upload strong{font-size:15px;line-height:1.2;color:var(--yv3-ink);font-weight:900;}
.yv3-media-upload p{margin:3px 0 0!important;}
.yv3-upload-btn{
  position:relative;
  overflow:hidden;
  min-height:42px;
  padding:10px 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-500));
  color:#fff;
  font-weight:900;
  font-size:13px;
  white-space:nowrap;
}
.yv3-upload-btn input{position:absolute;inset:0;opacity:0;cursor:pointer;}
.yv3-image-preview-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 16px;}
.yv3-image-preview{position:relative;aspect-ratio:1.1/1;border-radius:14px;overflow:hidden;border:1px solid var(--yv3-line);background:#fbf5f2;}
.yv3-image-preview img{width:100%;height:100%;object-fit:cover;display:block;}
.yv3-image-preview button{position:absolute;right:6px;top:6px;border:0;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.92);color:#9b2745;font-weight:900;box-shadow:0 4px 10px rgba(0,0,0,.12);}
.yv3-detail-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 18px;}
.yv3-detail-gallery img{width:100%;aspect-ratio:1.2/1;object-fit:cover;border-radius:14px;border:1px solid var(--yv3-line);}

.yv3-blog-list{display:grid!important;gap:18px!important;}
.yv3-journal-card{
  padding:0!important;
  display:flex;
  flex-direction:column;
  background:#fff!important;
  box-shadow:0 12px 28px rgba(68,35,16,.07)!important;
  border-radius:18px!important;
  overflow:hidden!important;
  min-height:0!important;
}
.yv3-list-thumb{width:100%;aspect-ratio:16/9;background:linear-gradient(135deg,#fff1e9,#ffdfcc);display:grid;place-items:center;overflow:hidden;}
.yv3-list-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.yv3-list-thumb-empty span{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#5f2707,#df7335);color:#fff;font-size:22px;font-weight:950;box-shadow:0 14px 28px rgba(140,64,20,.22);}
.yv3-list-body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:8px;min-width:0;}
.yv3-journal-card h3{font-size:17px!important;line-height:1.25!important;margin:0!important;font-weight:900!important;letter-spacing:-.02em!important;}
.yv3-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--yv3-muted);font-size:12px;font-weight:850;line-height:1.2;}
.yv3-card-meta span:first-child{color:var(--yv3-purple-600);}
.yv3-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:1px;}
.yv3-card-tags span{font-size:11px;line-height:1;border-radius:999px;background:#fff4ed;color:#b7551d;font-weight:900;padding:6px 8px;}
.yv3-journal-card p{font-size:13.5px!important;line-height:1.46!important;color:#80726a!important;margin:0!important;-webkit-line-clamp:3!important;}
.yv3-read-more{align-self:flex-start;margin-top:2px;border:0;background:transparent;color:var(--yv3-purple-600);font-size:12px;font-weight:900;padding:0;}

.yv3-tool-card small{
  display:block;
  margin:0 0 7px;
  color:var(--yv3-purple-600);
  font-size:11px;
  line-height:1;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.yv3-planner-dashboard,
.yv3-cycle-dashboard{
  min-height:168px!important;
  background:
    radial-gradient(circle at 100% 0%,rgba(226,127,70,.18),transparent 35%),
    linear-gradient(180deg,#fff,#fffbf8)!important;
}
.yv3-planner-dashboard .yv3-tool-icon{background:linear-gradient(135deg,#5d2504,#d46c30)!important;}
.yv3-cycle-dashboard .yv3-tool-icon{background:linear-gradient(135deg,#944314,#ff985c)!important;}
.yv3-tool-card:hover{transform:translateY(-1px);}
.yv3-tool-card{transition:transform .18s ease, box-shadow .18s ease;}

.yv3-chat-bubble.user{
  background:#8f4216!important;
  color:#fff!important;
}
.yv3-chat-bubble.user p,
.yv3-chat-bubble.user strong{color:#fff!important;text-shadow:none!important;}

.yv3-history-card,
.yv3-chat-saved,
.yv3-report-item{
  overflow:hidden!important;
}
.yv3-history-card p,
.yv3-chat-saved p{
  max-height:none;
}

@media(min-width:768px){
  .yanchi-v3-shell{padding:28px 0 40px!important;}
  .yv3-app{
    width:75vw!important;
    max-width:1120px!important;
    min-height:calc(100dvh - 56px);
    border-radius:28px;
    overflow:hidden;
    box-shadow:0 28px 90px rgba(95,42,12,.16);
    background:linear-gradient(180deg,#fff8f4,#f9f1ed);
  }
  .yv3-bottom-nav{width:75vw!important;max-width:1120px!important;}
  .yv3-hero{padding:24px 28px 34px!important;border-radius:0 0 30px 30px!important;}
  .yv3-toprow{grid-template-columns:minmax(150px,1fr) 150px 160px 52px;gap:16px;}
  .yv3-brand-pill,.yv3-points-pill,.yv3-lang,.yv3-profile-btn{height:48px;min-height:48px;}
  .yv3-profile-btn{width:52px;border-radius:18px;}
  .yv3-brand-pill{font-size:18px;padding-right:18px;}
  .yv3-quote-card{max-width:720px;margin:28px auto 0;padding:30px;}
  .yv3-screen{padding:30px 34px 34px!important;}
  .yv3-home-screen{display:grid;grid-template-columns:1fr;gap:28px!important;}
  .yv3-card{padding:30px!important;border-radius:24px!important;}
  .yv3-blog-list{grid-template-columns:repeat(3,minmax(0,1fr));}
  .yv3-journal-card{height:100%;}
  .yv3-home-cta{width:calc(100% - 60px)!important;max-width:none!important;margin:0 auto!important;}
  .yv3-life-tools{margin-top:0!important;}
  .yv3-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .yv3-tool-card{min-height:190px!important;padding:24px!important;}
  .yv3-tool-card .yv3-tool-icon{width:46px;height:46px;border-radius:14px;}
  .yv3-report-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .yv3-card:has(.yv3-tabs){max-width:100%;}
}

@media(max-width:430px){
  .yv3-media-upload{grid-template-columns:1fr;gap:10px;}
  .yv3-upload-btn{width:100%;}
  .yv3-image-preview-row{grid-template-columns:repeat(3,minmax(0,1fr));}
  .yv3-list-thumb{aspect-ratio:16/8.6;}
  .yv3-planner-dashboard,.yv3-cycle-dashboard{min-height:154px!important;}
}

/* v3.2.1 RCA fixes: robust image cards, safer chat readability, desktop shell, content clipping */
.yanchi-v3-shell{background:#fbf3ef!important;}
.yv3-card{overflow:visible!important;}
.yv3-card .yv3-list-card:not(.yv3-journal-card),
.yv3-panel-card,
.yv3-report-item,
.yv3-history-card{
  padding:20px 18px!important;
  border-radius:18px!important;
  overflow:visible!important;
}
.yv3-list-card:not(.yv3-journal-card) h3,
.yv3-history-card h3,
.yv3-report-item strong{
  line-height:1.28!important;
  padding-top:2px!important;
  margin-top:0!important;
  letter-spacing:-.018em!important;
}
.yv3-list-card:not(.yv3-journal-card) p,
.yv3-history-card p,
.yv3-report-item p{
  line-height:1.5!important;
  font-weight:520!important;
  color:#807066!important;
}
.yv3-blog-list,
.yv3-cycle-log-list,
.yv3-cycle-chat-list{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:18px!important;
  width:100%!important;
}
.yv3-cycle-log-card .yv3-cycle-thumb{background:linear-gradient(135deg,#fff7f2,#ffe9dc)!important;}
.yv3-cycle-log-card .yv3-cycle-thumb span{border-radius:50%;font-size:20px;}
.yv3-journal-card{border-radius:18px!important;overflow:hidden!important;}
.yv3-list-thumb{background:linear-gradient(135deg,#fff4ed,#ffe1d0)!important;}
.yv3-list-thumb img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;}
.yv3-image-preview img,.yv3-detail-gallery img{display:block!important;object-fit:cover!important;background:#fff3ec!important;}
.yv3-chat-bubble.user{
  background:linear-gradient(135deg,#5e2707 0%,#b84f13 58%,#e77431 100%)!important;
  color:#fff!important;
  box-shadow:0 12px 26px rgba(153,69,20,.18)!important;
}
.yv3-chat-bubble.user p,
.yv3-chat-bubble.user strong{
  color:#fff!important;
  opacity:1!important;
  text-shadow:none!important;
}
.yv3-chat-bubble.assistant{
  background:#fff!important;
  border-color:#e9ded7!important;
}
.yv3-chat-bubble.assistant p,
.yv3-detail-text{
  color:#54453d!important;
  font-size:15.5px!important;
  line-height:1.62!important;
  font-weight:450!important;
}
.yv3-saved-cycle-chats h3{margin-top:18px!important;line-height:1.2!important;}
.yv3-home-screen{gap:24px!important;}
.yv3-home-cta{margin:22px auto 24px!important;}
.yv3-life-tools{margin-top:0!important;}
.yv3-recent-card{margin-bottom:0!important;}
.yv3-primary,.yv3-secondary,.yv3-sort-btn,.yv3-pill-title{line-height:1.2!important;}
.yv3-textarea,.yv3-input,.yv3-select{font-weight:430!important;}
@media(min-width:768px){
  .yanchi-v3-shell{display:flex!important;justify-content:center!important;align-items:flex-start!important;padding:24px 0 42px!important;}
  .yv3-app{width:75vw!important;max-width:1120px!important;min-width:min(760px,75vw)!important;}
  .yv3-blog-list,.yv3-cycle-log-list,.yv3-cycle-chat-list{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .yv3-cycle-calendar .yv3-blog-list{grid-template-columns:1fr!important;}
}
@media(max-width:430px){
  .yv3-card .yv3-list-card:not(.yv3-journal-card),.yv3-panel-card,.yv3-report-item,.yv3-history-card{padding:18px 16px!important;border-radius:18px!important;}
  .yv3-chat-bubble.assistant p,.yv3-detail-text{font-size:15px!important;}
  .yv3-home-screen{gap:20px!important;}
}

/* v3.2.2 — conversation detail, custom signals, footer alignment and card clipping fixes */
.yv3-inline-add{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  margin:10px 0 16px;
}
.yv3-inline-add .yv3-input{margin:0!important;min-height:48px!important;}
.yv3-inline-add .yv3-secondary{min-height:48px!important;border-radius:16px!important;padding:0 18px!important;}
.yv3-question-box{
  background:linear-gradient(135deg,#fff,#fff8f4);
  border:1px solid var(--yv3-line);
  border-radius:16px;
  padding:16px!important;
  margin:8px 0 14px;
  color:#5d4537!important;
  font-weight:600!important;
}
.yv3-detail-chat .yv3-chat-bubble{max-width:100%;}
.yv3-detail-chat .yv3-chat-bubble.user{margin-left:auto;}
.yv3-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:18px 0;
}
.yv3-detail-grid div{
  border:1px solid var(--yv3-line);
  border-radius:16px;
  padding:14px;
  background:linear-gradient(180deg,#fff,#fffbf8);
  min-width:0;
}
.yv3-detail-grid strong,
.yv3-detail-grid span{display:block;line-height:1.25;}
.yv3-detail-grid strong{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--yv3-purple-600);margin-bottom:6px;font-weight:900;}
.yv3-detail-grid span{font-size:16px;font-weight:800;color:var(--yv3-ink);overflow-wrap:anywhere;}
.yv3-bottom-nav{overflow:visible!important;}
.yv3-nav-plus{margin-top:-34px!important;}
.yv3-nav-plus span{transform:translateY(-4px)!important;}
.yv3-journal-card .yv3-list-body,
.yv3-chat-saved .yv3-list-body,
.yv3-cycle-log-card .yv3-list-body{
  padding:20px 18px 21px!important;
}
.yv3-journal-card h3,
.yv3-chat-saved h3,
.yv3-cycle-log-card h3{
  line-height:1.28!important;
  padding-top:0!important;
  margin-top:0!important;
  overflow:visible!important;
}
.yv3-journal-card p,
.yv3-chat-saved p,
.yv3-cycle-log-card p{
  font-size:14px!important;
  line-height:1.55!important;
  font-weight:520!important;
  color:#807066!important;
}
.yv3-chat-bubble.user p{font-size:15.5px!important;line-height:1.55!important;font-weight:800!important;color:#fff!important;}
.yv3-chat-bubble.user strong{color:#fff!important;}
.yv3-chat-bubble.assistant p{font-size:15.5px!important;line-height:1.62!important;color:#55453c!important;}
.yv3-cycle-log-card{cursor:pointer;}
.yv3-float-delete{position:absolute;right:14px;bottom:14px;z-index:2;}
.yv3-cycle-log-card .yv3-list-body{position:relative;padding-bottom:56px!important;}
@media(max-width:430px){
  .yv3-inline-add{grid-template-columns:1fr;}
  .yv3-detail-grid{grid-template-columns:1fr 1fr;gap:10px;}
  .yv3-nav-plus{margin-top:-34px!important;}
}
.yv3-list-thumb .yv3-thumb-fallback{display:none;}
.yv3-list-thumb.yv3-broken-thumb{display:grid!important;place-items:center!important;}
.yv3-list-thumb.yv3-broken-thumb .yv3-thumb-fallback{display:grid;width:52px;height:52px;border-radius:18px;place-items:center;background:linear-gradient(135deg,#5f2707,#df7335);color:#fff;font-size:22px;font-weight:950;box-shadow:0 14px 28px rgba(140,64,20,.22);}


/* v3.3.1 — floating footer, darker dashboards, progressive chips */
.yv3-app{padding-bottom:calc(116px + env(safe-area-inset-bottom))!important;}
.yv3-bottom-nav{
  position:fixed!important;
  left:50%!important;
  right:auto!important;
  bottom:calc(16px + env(safe-area-inset-bottom))!important;
  transform:translateX(-50%)!important;
  width:min(640px,calc(100vw - 34px))!important;
  max-width:calc(100% - 34px)!important;
  height:76px!important;
  border-radius:30px!important;
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(234,223,216,.9)!important;
  box-shadow:0 22px 55px rgba(74,35,12,.20),0 8px 20px rgba(74,35,12,.08)!important;
  display:grid!important;
  grid-template-columns:1fr 1fr 92px 1fr 1fr!important;
  align-items:center!important;
  padding:10px 16px!important;
  overflow:visible!important;
  backdrop-filter:blur(22px)!important;
  z-index:9998!important;
}
.yv3-nav-item{
  width:50px!important;
  height:50px!important;
  border-radius:17px!important;
  background:transparent!important;
  color:#9f9189!important;
  transition:transform .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease!important;
}
.yv3-nav-item svg{width:25px!important;height:25px!important;stroke-width:2.05!important;}
.yv3-nav-item.active{
  background:linear-gradient(145deg,#5d2707 0%,#a74710 55%,#e2702e 100%)!important;
  color:#fff!important;
  box-shadow:0 13px 26px rgba(154,69,20,.28)!important;
}
.yv3-nav-item:active{transform:scale(.94)!important;}
.yv3-nav-plus{
  width:82px!important;
  height:82px!important;
  margin:-34px auto 0!important;
  border-radius:50%!important;
  background:radial-gradient(circle at 30% 20%,#df7335 0%,#9c410c 62%,#5b2303 100%)!important;
  color:#fff!important;
  box-shadow:0 22px 44px rgba(159,70,18,.36),0 0 0 9px rgba(255,255,255,.90)!important;
  font-size:42px!important;
  line-height:1!important;
  display:grid!important;
  place-items:center!important;
}
.yv3-nav-plus span{transform:translateY(-3px)!important;font-weight:850!important;}

.yv3-planner-dashboard,
.yv3-cycle-dashboard{
  background:
    radial-gradient(circle at 18% 12%,rgba(255,255,255,.18),transparent 26%),
    radial-gradient(circle at 95% 88%,rgba(255,166,114,.34),transparent 38%),
    linear-gradient(145deg,#502208 0%,#7d350b 52%,#dd6d2c 100%)!important;
  border-color:rgba(255,255,255,.16)!important;
  color:#fff!important;
  box-shadow:0 18px 38px rgba(128,56,14,.20)!important;
  text-align:left!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  overflow:hidden!important;
  position:relative!important;
}
.yv3-planner-dashboard:after,
.yv3-cycle-dashboard:after{
  content:"";position:absolute;right:-42px;bottom:-42px;width:126px;height:126px;border-radius:50%;background:rgba(255,255,255,.10);pointer-events:none;
}
.yv3-planner-dashboard .yv3-tool-icon,
.yv3-cycle-dashboard .yv3-tool-icon{
  background:rgba(255,255,255,.18)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.20)!important;
  box-shadow:none!important;
}
.yv3-tool-card small,
.yv3-tool-card strong,
.yv3-tool-card .yv3-compact-text{
  color:#fff!important;
}
.yv3-tool-card small{opacity:.78!important;}
.yv3-tool-card .yv3-compact-text{opacity:.86!important;font-weight:750!important;}

.yv3-chip-wrap{gap:10px!important;align-items:flex-start!important;}
.yv3-chip{
  min-height:40px!important;
  padding:10px 17px!important;
  border-radius:999px!important;
  background:#fff!important;
  border:1px solid #eaded7!important;
  color:#5e4b40!important;
  font-size:14px!important;
  font-weight:850!important;
  box-shadow:0 4px 10px rgba(74,35,12,.035)!important;
}
.yv3-chip.active{
  color:#fff!important;
  border-color:transparent!important;
  background:linear-gradient(135deg,#5f2707,#e06e2c)!important;
  box-shadow:0 10px 20px rgba(159,70,18,.18)!important;
}
.yv3-more-chip{
  color:#b4531b!important;
  background:#fffbf8!important;
  border-color:#eacdbd!important;
}

@media(min-width:768px){
  .yv3-bottom-nav{width:min(780px,calc(75vw - 80px))!important;max-width:780px!important;bottom:22px!important;border-radius:34px!important;}
  .yv3-app{padding-bottom:128px!important;}
}
@media(max-width:430px){
  .yv3-bottom-nav{width:calc(100vw - 28px)!important;height:72px!important;grid-template-columns:1fr 1fr 88px 1fr 1fr!important;padding:9px 14px!important;border-radius:28px!important;}
  .yv3-nav-item{width:48px!important;height:48px!important;border-radius:16px!important;}
  .yv3-nav-plus{width:78px!important;height:78px!important;margin-top:-33px!important;font-size:41px!important;}
  .yv3-tool-card{min-height:166px!important;padding:18px!important;}
}


/* v3.3.2 — requested darker header and reflection guidance notes */
.yv3-hero{
  background:
    radial-gradient(circle at 12% -10%,rgba(255,255,255,.10),transparent 26%),
    radial-gradient(circle at 92% 86%,rgba(224,131,77,.38),transparent 38%),
    radial-gradient(circle at 58% 22%,rgba(183,89,35,.28),transparent 34%),
    linear-gradient(145deg,#250e00 0%,#521e00 42%,#9a410d 72%,#db7439 100%)!important;
  box-shadow:0 20px 50px rgba(80,32,5,.30)!important;
}
.yv3-quote-card{
  background:rgba(255,255,255,.105)!important;
  border-color:rgba(255,255,255,.24)!important;
}
.yv3-answer-note{
  margin:14px 0 18px!important;
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:800!important;
  color:#807066!important;
  background:linear-gradient(135deg,#fffbf8,#fff2eb)!important;
}
.yv3-card.flat h3{
  display:inline-block;
  background:transparent!important;
}


/* v3.3.3 — active tab and home button gradient polish */
.yv3-pill-title{
  background:linear-gradient(135deg,#502208 0%,#7d350b 48%,#dd6d2c 100%)!important;
  color:#fff!important;
  border:0!important;
  box-shadow:0 12px 24px rgba(133,59,16,.18)!important;
}
.yv3-tab.active{
  background:linear-gradient(135deg,#502208 0%,#79360f 48%,#dd6d2c 100%)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 10px 20px rgba(126,54,12,.18)!important;
}
.yv3-tab.active:hover,
.yv3-tab.active:focus{
  color:#fff!important;
}


/* v3.3.4 — Peach color theme only */
:root{
  --yv3-bg:#fff3eb;
  --yv3-bg2:#fde4d7;
  --yv3-card:#ffffff;
  --yv3-card-soft:#fffaf7;
  --yv3-card-tint:#fff0e8;
  --yv3-ink:#3b1d12;
  --yv3-ink-soft:#5a3425;
  --yv3-muted:#8b7168;
  --yv3-muted-2:#aa9288;
  --yv3-purple-900:#6f2f1c;
  --yv3-purple-800:#8e3f28;
  --yv3-purple-700:#b95736;
  --yv3-purple-600:#df744b;
  --yv3-purple-500:#ff9b72;
  --yv3-purple-300:#ffd0bd;
  --yv3-line:#f0d8cc;
  --yv3-line-strong:#e4c3b4;
}
.yanchi-v3-shell{
  background:
    radial-gradient(circle at 10% 0%,rgba(255,154,114,.16),transparent 28%),
    linear-gradient(180deg,#fff3eb 0%,#fffaf7 48%,#fde4d7 100%)!important;
  color:#3b1d12!important;
}
.yv3-hero{
  background:
    radial-gradient(circle at 12% -10%,rgba(255,255,255,.18),transparent 26%),
    radial-gradient(circle at 92% 86%,rgba(255,187,154,.50),transparent 38%),
    radial-gradient(circle at 58% 22%,rgba(255,139,93,.34),transparent 34%),
    linear-gradient(145deg,#6f2f1c 0%,#b95736 50%,#ffb28f 100%)!important;
  box-shadow:0 20px 50px rgba(111,47,28,.26)!important;
}
.yv3-logo-mark,
.yv3-avatar,
.yv3-brand-pill,
.yv3-points-pill,
.yv3-lang,
.yv3-profile-btn{
  color:#6f2f1c!important;
}
.yv3-logo-mark,
.yv3-avatar{
  background:linear-gradient(135deg,#ffffff,#fff0e8)!important;
}
.yv3-quote-card{background:rgba(255,255,255,.16)!important;border-color:rgba(255,255,255,.30)!important;}
.yv3-primary,
.yv3-pill-title,
.yv3-tab.active,
.yv3-home-cta .yv3-primary,
.yv3-upload-btn,
.yv3-nav-plus,
.yv3-nav-item.active,
.yv3-chip.active{
  background:linear-gradient(135deg,#6f2f1c 0%,#c9623e 55%,#ff9b72 100%)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 12px 24px rgba(143,63,40,.20)!important;
}
.yv3-voice-btn,
.yv3-planner-dashboard .yv3-tool-icon,
.yv3-cycle-dashboard .yv3-tool-icon,
.yv3-list-thumb-empty span,
.yv3-list-thumb.yv3-broken-thumb .yv3-thumb-fallback{
  background:linear-gradient(135deg,#8e3f28,#df744b)!important;
  color:#fff!important;
}
.yv3-planner-dashboard,
.yv3-cycle-dashboard{
  background:
    radial-gradient(circle at 18% 12%,rgba(255,255,255,.20),transparent 26%),
    radial-gradient(circle at 95% 88%,rgba(255,185,150,.36),transparent 38%),
    linear-gradient(145deg,#7a321f 0%,#b95736 52%,#ff9b72 100%)!important;
  color:#fff!important;
  box-shadow:0 18px 38px rgba(111,47,28,.20)!important;
}
.yv3-card,
.yv3-panel-card,
.yv3-auth-card,
.yv3-journal-card,
.yv3-cycle-log-card{
  border-color:#f0d8cc!important;
}
.yv3-input,
.yv3-textarea,
.yv3-select,
.yv3-chip,
.yv3-secondary,
.yv3-sort-btn,
.yv3-small-btn{
  border-color:#f0d8cc!important;
  color:#5a3425!important;
}
.yv3-chip,
.yv3-secondary,
.yv3-sort-btn,
.yv3-small-btn,
.yv3-answer-note,
.yv3-card-soft,
.yv3-empty,
.yv3-list-thumb{
  background:linear-gradient(135deg,#fffaf7,#fff0e8)!important;
}
.yv3-card-meta span:first-child,
.yv3-read-more,
.yv3-floating-label,
.yv3-card-tags span,
.yv3-detail-grid strong{
  color:#df744b!important;
}
.yv3-card-tags span,
.yv3-more-chip{
  background:#fff0e8!important;
  border-color:#f0d8cc!important;
  color:#b95736!important;
}
.yv3-chat-bubble.user{
  background:linear-gradient(135deg,#7a321f 0%,#c9623e 52%,#ff8e64 100%)!important;
  color:#fff!important;
}
.yv3-chat-bubble.user p,
.yv3-chat-bubble.user strong{color:#fff!important;}
.yv3-chat-bubble.assistant p{color:#5a3425!important;}
.yv3-bottom-nav{
  box-shadow:0 20px 46px rgba(111,47,28,.18)!important;
}
.yv3-day.today{box-shadow:inset 0 0 0 2px #6f2f1c!important;}
.yv3-cycle-log-card .yv3-cycle-thumb,
.yv3-list-thumb{background:linear-gradient(135deg,#fff3eb,#ffd7c5)!important;}

/* v3.3.5 Peach Blossom theme refinement */
.yanchi-v3-shell{
  --yv3-bg:#fff8f5;
  --yv3-bg2:#ffe7df;
  --yv3-card-soft:#fffbfa;
  --yv3-card-tint:#fff1ed;
  --yv3-ink:#351a21;
  --yv3-ink-soft:#5b3a40;
  --yv3-muted:#8f7275;
  --yv3-muted-2:#b99c99;
  --yv3-purple-900:#904339;
  --yv3-purple-800:#ad5546;
  --yv3-purple-700:#d06b54;
  --yv3-purple-600:#ee8b69;
  --yv3-purple-500:#FFB07C;
  --yv3-purple-300:#F9B3A7;
  --yv3-line:#f2d8d1;
  --yv3-line-strong:#e8c5bc;
  background:
    radial-gradient(circle at 8% 0%, rgba(249,179,167,.20), transparent 28%),
    radial-gradient(circle at 96% 30%, rgba(255,176,124,.18), transparent 30%),
    linear-gradient(180deg,#fff8f5 0%,#fffbfa 48%,#ffe7df 100%)!important;
}
.yv3-hero{
  background:
    radial-gradient(circle at 14% -8%,rgba(255,255,255,.22),transparent 30%),
    radial-gradient(circle at 96% 88%,rgba(249,179,167,.46),transparent 40%),
    radial-gradient(circle at 55% 24%,rgba(255,176,124,.34),transparent 36%),
    linear-gradient(145deg,#8f4037 0%,#c96a54 45%,#F9B3A7 100%)!important;
  box-shadow:0 18px 42px rgba(144,67,57,.16)!important;
}
.yv3-primary,
.yv3-home-new,
.yv3-tab.active,
.yv3-footer-item.active,
.yv3-footer-plus,
.yv3-footer-center,
.yv3-dashboard-card,
.yv3-tool-card.yv3-planner-dashboard,
.yv3-tool-card.yv3-cycle-dashboard,
.yv3-active-pill,
.yv3-action-primary{
  background:linear-gradient(135deg,#904339 0%,#FFB07C 55%,#F9B3A7 100%)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.28)!important;
  box-shadow:0 14px 28px rgba(144,67,57,.20)!important;
}
.yv3-footer-plus{
  background:radial-gradient(circle at 30% 20%,#FFB07C 0%,#c96a54 58%,#904339 100%)!important;
  box-shadow:0 22px 44px rgba(144,67,57,.30),0 0 0 9px rgba(255,255,255,.90)!important;
}
.yv3-pill,
.yv3-chip,
.yv3-more-chip,
.yv3-language-select,
.yv3-points-pill,
.yv3-avatar{
  border-color:#efd4cc!important;
}
.yv3-logo-mark,
.yv3-avatar,
.yv3-list-thumb-empty span,
.yv3-thumb-fallback{
  background:linear-gradient(135deg,#fff,#fff1ed)!important;
  color:#d06b54!important;
}
.yv3-list-thumb-empty span,
.yv3-thumb-fallback{
  background:linear-gradient(135deg,#904339,#FFB07C)!important;
  color:#fff!important;
}
.yv3-list-thumb,
.yv3-cycle-thumb,
.yv3-image-preview{
  background:linear-gradient(135deg,#fff4f1,#ffe2d9)!important;
}
.yv3-chat-bubble.user{
  background:linear-gradient(135deg,#904339 0%,#d06b54 52%,#FFB07C 100%)!important;
  color:#fff!important;
}
.yv3-chat-bubble.user p,
.yv3-chat-bubble.user strong{
  color:#fff!important;
}
.yv3-select:focus,
.yv3-input:focus,
.yv3-textarea:focus{
  border-color:#FFB07C!important;
  box-shadow:0 0 0 4px rgba(255,176,124,.18)!important;
}
.yv3-day.today,
.yv3-calendar-day.today{
  border-color:#d06b54!important;
}
.yv3-day-card.active{
  background:linear-gradient(135deg,#904339,#FFB07C)!important;
  color:#fff!important;
}
.yv3-cycle-ring{
  background:conic-gradient(#FFB07C var(--p),#fff1ed 0)!important;
}


/* v3.3.7 Pink theme trial */
.yanchi-v3-shell{
  --yv3-bg:#fff5fb;
  --yv3-bg2:#ffe3f2;
  --yv3-card:#ffffff;
  --yv3-card-soft:#fffbfe;
  --yv3-card-tint:#fff0f8;
  --yv3-ink:#321025;
  --yv3-ink-soft:#563048;
  --yv3-muted:#8d7082;
  --yv3-muted-2:#b99aad;
  --yv3-purple-900:#5a0e3a;
  --yv3-purple-800:#7a1350;
  --yv3-purple-700:#a61d6c;
  --yv3-purple-600:#d63384;
  --yv3-purple-500:#f768ad;
  --yv3-purple-300:#ffc0df;
  --yv3-line:#efd2e2;
  --yv3-line-strong:#e6bed4;
  background:
    radial-gradient(circle at 8% 0%, rgba(255,192,223,.22), transparent 28%),
    radial-gradient(circle at 96% 30%, rgba(247,104,173,.18), transparent 30%),
    linear-gradient(180deg,#fff5fb 0%,#fffbfe 48%,#ffe3f2 100%)!important;
  color:#321025!important;
}
.yv3-hero{
  background:
    radial-gradient(circle at 14% -8%,rgba(255,255,255,.24),transparent 30%),
    radial-gradient(circle at 96% 88%,rgba(255,192,223,.50),transparent 40%),
    radial-gradient(circle at 55% 24%,rgba(247,104,173,.34),transparent 36%),
    linear-gradient(145deg,#5a0e3a 0%,#a61d6c 46%,#ff8ac6 100%)!important;
  box-shadow:0 18px 42px rgba(90,14,58,.18)!important;
}
.yv3-primary,
.yv3-home-new,
.yv3-tab.active,
.yv3-footer-item.active,
.yv3-footer-plus,
.yv3-footer-center,
.yv3-dashboard-card,
.yv3-tool-card.yv3-planner-dashboard,
.yv3-tool-card.yv3-cycle-dashboard,
.yv3-active-pill,
.yv3-action-primary,
.yv3-pill-title,
.yv3-nav-plus,
.yv3-nav-item.active,
.yv3-upload-btn,
.yv3-voice-btn,
.yv3-day-card.active{
  background:linear-gradient(135deg,#5a0e3a 0%,#d63384 55%,#ff8ac6 100%)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.28)!important;
  box-shadow:0 14px 28px rgba(90,14,58,.22)!important;
}
.yv3-footer-plus{
  background:radial-gradient(circle at 30% 20%,#ff8ac6 0%,#d63384 58%,#5a0e3a 100%)!important;
  box-shadow:0 22px 44px rgba(90,14,58,.32),0 0 0 9px rgba(255,255,255,.90)!important;
}
.yv3-planner-dashboard,
.yv3-cycle-dashboard,
.yv3-tool-card.yv3-planner-dashboard,
.yv3-tool-card.yv3-cycle-dashboard{
  background:
    radial-gradient(circle at 18% 12%,rgba(255,255,255,.22),transparent 26%),
    radial-gradient(circle at 95% 88%,rgba(255,192,223,.42),transparent 38%),
    linear-gradient(145deg,#5a0e3a 0%,#a61d6c 52%,#ff78bd 100%)!important;
  color:#fff!important;
}
.yv3-planner-dashboard .yv3-tool-icon,
.yv3-cycle-dashboard .yv3-tool-icon,
.yv3-list-thumb-empty span,
.yv3-list-thumb.yv3-broken-thumb .yv3-thumb-fallback,
.yv3-thumb-fallback{
  background:linear-gradient(135deg,#5a0e3a,#d63384)!important;
  color:#fff!important;
}
.yv3-logo-mark,
.yv3-avatar{
  background:linear-gradient(135deg,#ffffff,#fff0f8)!important;
  color:#d63384!important;
}
.yv3-brand-pill,
.yv3-points-pill,
.yv3-lang,
.yv3-profile-btn{
  color:#5a0e3a!important;
}
.yv3-card,
.yv3-panel-card,
.yv3-auth-card,
.yv3-journal-card,
.yv3-cycle-log-card,
.yv3-input,
.yv3-textarea,
.yv3-select,
.yv3-chip,
.yv3-secondary,
.yv3-sort-btn,
.yv3-small-btn,
.yv3-pill,
.yv3-more-chip,
.yv3-language-select,
.yv3-points-pill,
.yv3-avatar{
  border-color:#efd2e2!important;
}
.yv3-chip,
.yv3-secondary,
.yv3-sort-btn,
.yv3-small-btn,
.yv3-answer-note,
.yv3-card-soft,
.yv3-empty,
.yv3-list-thumb{
  background:linear-gradient(135deg,#fffbfe,#fff0f8)!important;
  color:#563048!important;
}
.yv3-card-meta span:first-child,
.yv3-read-more,
.yv3-floating-label,
.yv3-card-tags span,
.yv3-detail-grid strong,
.yv3-more-chip{
  color:#d63384!important;
}
.yv3-card-tags span,
.yv3-more-chip{
  background:#fff0f8!important;
  border-color:#efd2e2!important;
}
.yv3-chat-bubble.user{
  background:linear-gradient(135deg,#5a0e3a 0%,#b01f72 52%,#ff78bd 100%)!important;
  color:#fff!important;
}
.yv3-chat-bubble.user p,
.yv3-chat-bubble.user strong{color:#fff!important;}
.yv3-chat-bubble.assistant p{color:#563048!important;}
.yv3-select:focus,
.yv3-input:focus,
.yv3-textarea:focus{
  border-color:#f768ad!important;
  box-shadow:0 0 0 4px rgba(247,104,173,.18)!important;
}
.yv3-day.today,
.yv3-calendar-day.today{
  border-color:#d63384!important;
  box-shadow:inset 0 0 0 2px #5a0e3a!important;
}
.yv3-cycle-ring{
  background:conic-gradient(#f768ad var(--p),#fff0f8 0)!important;
}
.yv3-list-thumb,
.yv3-cycle-thumb,
.yv3-image-preview{
  background:linear-gradient(135deg,#fff0f8,#ffd7eb)!important;
}
.yv3-bottom-nav{
  box-shadow:0 20px 46px rgba(90,14,58,.18)!important;
}


/* v3.3.8 — pink theme final polish: home CTA + translucent plus ring */
.yv3-home-cta,
.yv3-outside-cta{
  width:calc(100% - 64px)!important;
  max-width:436px!important;
  margin:24px auto 30px!important;
}
.yv3-home-cta .yv3-primary,
.yv3-outside-cta .yv3-primary,
button.yv3-primary[data-go="journal"]{
  background:linear-gradient(135deg,#5a0e3a 0%,#d63384 56%,#ff8ac6 100%)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.34)!important;
  box-shadow:0 14px 28px rgba(90,14,58,.22)!important;
}
.yv3-nav-plus{
  background:radial-gradient(circle at 30% 22%,#ff8ac6 0%,#d63384 48%,#5a0e3a 100%)!important;
  border:1px solid rgba(255,255,255,.44)!important;
  box-shadow:
    0 22px 44px rgba(90,14,58,.32),
    0 0 0 9px rgba(255,255,255,.72),
    0 0 0 11px rgba(255,192,223,.32),
    inset 0 0 0 1px rgba(255,255,255,.28)!important;
}
.yv3-nav-plus span{
  color:#fff!important;
  text-shadow:0 1px 10px rgba(90,14,58,.25)!important;
}
@media(max-width:430px){
  .yv3-home-cta,
  .yv3-outside-cta{width:calc(100% - 54px)!important;margin:22px auto 28px!important;}
}

/* v3.4.0 — commercial launch polish: smaller footer plus, formal auth and compliance links */
.yv3-nav-plus{
  width:56px!important;
  height:56px!important;
  margin-top:-22px!important;
  font-size:30px!important;
  line-height:1!important;
  box-shadow:
    0 14px 28px rgba(90,14,58,.26),
    0 0 0 4px rgba(255,255,255,.72),
    0 0 0 5.5px rgba(255,192,223,.32),
    inset 0 0 0 1px rgba(255,255,255,.28)!important;
}
.yv3-nav-plus span{transform:translateY(-1px)!important;}
.yv3-bottom-nav{grid-template-columns:1fr 1fr 70px 1fr 1fr!important;}
.yv3-auth-note{
  padding:12px 14px;
  margin:12px 0 14px;
  border:1px solid var(--yv3-line);
  border-radius:16px;
  background:linear-gradient(135deg,#fffbfe,#fff0f8);
  color:var(--yv3-ink-soft);
  font-size:14px;
  font-weight:800;
  line-height:1.45;
}
.yv3-auth-legal{
  margin-top:18px;
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px;
  font-size:12.5px;
  font-weight:800;
  color:var(--yv3-muted);
}
.yv3-auth-legal a{color:var(--yv3-purple-700);text-decoration:none;}
.yv3-consent-row{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:14px 0 6px;
  padding:12px;
  border:1px solid var(--yv3-line);
  border-radius:16px;
  background:linear-gradient(135deg,#fff,#fff7fb);
  color:var(--yv3-ink-soft);
  font-size:13px;
  font-weight:800;
  line-height:1.35;
}
.yv3-consent-row input{width:20px;height:20px;accent-color:var(--yv3-purple-600);flex:0 0 auto;}
.yv3-compliance-links{
  display:grid;
  gap:10px;
  margin:18px 0;
}
.yv3-compliance-links a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:50px;
  padding:14px 16px;
  border:1px solid var(--yv3-line);
  border-radius:16px;
  background:linear-gradient(135deg,#fff,#fff7fb);
  color:var(--yv3-ink)!important;
  font-weight:850;
  text-decoration:none!important;
}
.yv3-compliance-links a:after{content:'›';font-size:22px;color:var(--yv3-purple-700);}
@media(max-width:430px){
  .yv3-bottom-nav{grid-template-columns:1fr 1fr 72px 1fr 1fr!important;height:70px!important;padding:9px 14px!important;}
  .yv3-nav-plus{width:58px!important;height:58px!important;margin-top:-23px!important;font-size:31px!important;}
  .yv3-nav-item{width:46px!important;height:46px!important;}
}


/* v3.4.1 — compliance pages, Talk to Yanchiii dashboard/chat, and 3-column life tools */
.yv3-tool-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.yv3-tool-card.yv3-talk-dashboard{background:linear-gradient(135deg,#5a0e3a 0%,#d63384 58%,#ff8ac6 100%)!important;color:#fff!important;border-color:rgba(255,255,255,.28)!important;box-shadow:0 16px 36px rgba(90,14,58,.20)!important;}
.yv3-tool-card.yv3-talk-dashboard .yv3-tool-icon{background:rgba(255,255,255,.16)!important;color:#fff!important;border:1px solid rgba(255,255,255,.25)!important;box-shadow:none!important;}
.yv3-tool-card.yv3-talk-dashboard small,.yv3-tool-card.yv3-talk-dashboard strong,.yv3-tool-card.yv3-talk-dashboard .yv3-compact-text{color:#fff!important;}
.yv3-talk-card .yv3-chat-window{margin-top:18px;}
.yv3-talk-list .yv3-list-card{cursor:pointer;}
.yv3-auth-legal a,.yv3-compliance-links a{pointer-events:auto!important;}
@media(max-width:520px){.yv3-tool-grid.three{grid-template-columns:1fr!important;}.yv3-tool-card{min-height:132px!important;}}
@media(min-width:900px){.yv3-tool-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))!important;}.yv3-tool-card{min-height:176px!important;}}

/* v3.4.2 — legal pages included inside the app, app-style compliance screens, no external-page dependency */
.yv3-auth-legal button,
.yv3-compliance-links button{
  appearance:none;
  -webkit-appearance:none;
  border:0;
  background:transparent;
  color:var(--yv3-purple-700);
  font:inherit;
  font-weight:850;
  cursor:pointer;
  padding:0;
  text-decoration:none;
}
.yv3-compliance-links button{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:50px;
  width:100%;
  padding:14px 16px;
  border:1px solid var(--yv3-line);
  border-radius:16px;
  background:linear-gradient(135deg,#fff,#fff7fb);
  color:var(--yv3-ink)!important;
  text-align:left;
  box-shadow:0 8px 20px rgba(90,14,58,.045);
}
.yv3-compliance-links button:after{content:'›';font-size:22px;color:var(--yv3-purple-700);}
.yv3-legal-screen{padding-bottom:32px!important;}
.yv3-legal-card{
  line-height:1.68;
  font-size:15px;
  color:var(--yv3-ink-soft);
}
.yv3-legal-card .yv3-section-title{margin-top:8px!important;margin-bottom:8px!important;color:var(--yv3-ink)!important;}
.yv3-legal-card p{margin:10px 0;color:var(--yv3-ink-soft);}
.yv3-legal-card strong{color:var(--yv3-ink);}
.yv3-legal-badge,
.yv3-legal-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  padding:8px 12px;
  border-radius:999px;
  background:#fff0f8;
  color:var(--yv3-purple-800);
  border:1px solid #efd2e2;
  font-size:12px;
  font-weight:900;
  letter-spacing:.01em;
}
.yv3-legal-section{
  margin:16px 0 0;
  padding:14px 14px 12px;
  border:1px solid var(--yv3-line);
  border-radius:18px;
  background:linear-gradient(135deg,#fff,#fffafb);
  box-shadow:0 8px 20px rgba(90,14,58,.035);
}
.yv3-legal-section h2{
  margin:0 0 8px!important;
  font-size:16px!important;
  color:var(--yv3-ink)!important;
  line-height:1.25!important;
}
.yv3-legal-section ul{margin:0;padding-left:20px;display:grid;gap:8px;}
.yv3-legal-section li{padding-left:2px;color:var(--yv3-ink-soft);}
.yv3-legal-sibling-links{margin-top:22px;}
.yv3-back-soft{margin-bottom:12px;}
.yv3-static-legal-shell{min-height:100dvh;background:var(--yv3-bg);}
.yv3-static-legal-app{max-width:500px!important;margin:0 auto!important;}
.yv3-static-legal-app .yv3-toprow{grid-template-columns:1fr auto!important;}
.yv3-static-legal-app .yv3-brand-pill{text-decoration:none!important;}
.yv3-static-legal-nav a{text-decoration:none!important;font-size:12px!important;font-weight:850!important;color:var(--yv3-muted)!important;}
.yv3-static-legal-nav a.active{color:var(--yv3-purple-700)!important;background:#fff0f8!important;}
@media(min-width:900px){
  .yv3-legal-screen{padding-left:34px!important;padding-right:34px!important;}
  .yv3-static-legal-app{width:75vw!important;max-width:1120px!important;min-width:min(760px,75vw)!important;}
}

/* v3.4.3 — compact Life tools on mobile: keep all three dashboards in one row */
.yv3-tool-grid.three{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
@media(max-width:520px){
  .yv3-life-tools{
    padding:20px 14px 94px!important;
  }
  .yv3-life-tools .yv3-section-title{
    font-size:30px!important;
    line-height:1.05!important;
    margin-bottom:8px!important;
  }
  .yv3-life-tools .yv3-subtitle{
    font-size:14px!important;
    line-height:1.38!important;
    margin-bottom:16px!important;
  }
  .yv3-tool-grid.three{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
    align-items:stretch!important;
  }
  .yv3-tool-grid.three .yv3-tool-card{
    min-height:128px!important;
    padding:11px 8px!important;
    border-radius:14px!important;
    overflow:hidden!important;
  }
  .yv3-tool-grid.three .yv3-tool-card .yv3-tool-icon{
    width:28px!important;
    height:28px!important;
    border-radius:9px!important;
    margin-bottom:10px!important;
    font-size:14px!important;
  }
  .yv3-tool-grid.three .yv3-tool-card small{
    font-size:8px!important;
    line-height:1.1!important;
    letter-spacing:.09em!important;
    margin-bottom:5px!important;
  }
  .yv3-tool-grid.three .yv3-tool-card strong{
    font-size:11px!important;
    line-height:1.12!important;
    letter-spacing:-.02em!important;
  }
  .yv3-tool-grid.three .yv3-tool-card .yv3-compact-text{
    margin-top:6px!important;
    font-size:8.6px!important;
    line-height:1.22!important;
    display:-webkit-box!important;
    -webkit-line-clamp:4!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
}
@media(max-width:360px){
  .yv3-tool-grid.three{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }
  .yv3-tool-grid.three .yv3-tool-card{
    min-height:122px!important;
    padding:10px 7px!important;
  }
  .yv3-tool-grid.three .yv3-tool-card strong{font-size:10px!important;}
  .yv3-tool-grid.three .yv3-tool-card .yv3-compact-text{font-size:8px!important;-webkit-line-clamp:4!important;}
}


/* v3.4.4 — functional theme mode + user theme color choices */
.yanchi-v3-shell.yv3-theme-pink{
  --yv3-bg:#fff5fb;--yv3-bg2:#ffe3f2;--yv3-card:#ffffff;--yv3-card-soft:#fffbfe;--yv3-card-tint:#fff0f8;--yv3-ink:#321025;--yv3-ink-soft:#563048;--yv3-muted:#8d7082;--yv3-muted-2:#b99aad;--yv3-purple-900:#5a0e3a;--yv3-purple-800:#7a1350;--yv3-purple-700:#a61d6c;--yv3-purple-600:#d63384;--yv3-purple-500:#f768ad;--yv3-purple-300:#ffc0df;--yv3-line:#efd2e2;--yv3-line-strong:#e6bed4;
}
.yanchi-v3-shell.yv3-theme-purple{
  --yv3-bg:#f8f4ff;--yv3-bg2:#eadfff;--yv3-card:#ffffff;--yv3-card-soft:#fcfaff;--yv3-card-tint:#f2eaff;--yv3-ink:#26133f;--yv3-ink-soft:#4c3767;--yv3-muted:#827094;--yv3-muted-2:#aa9aba;--yv3-purple-900:#35105f;--yv3-purple-800:#4d1a83;--yv3-purple-700:#6f35b6;--yv3-purple-600:#8c52ff;--yv3-purple-500:#b084ff;--yv3-purple-300:#dbc8ff;--yv3-line:#ded1f2;--yv3-line-strong:#c7b5e4;
}
.yanchi-v3-shell.yv3-theme-peach{
  --yv3-bg:#fff8f5;--yv3-bg2:#ffe7df;--yv3-card:#ffffff;--yv3-card-soft:#fffbfa;--yv3-card-tint:#fff1ed;--yv3-ink:#351a21;--yv3-ink-soft:#5b3a40;--yv3-muted:#8f7275;--yv3-muted-2:#b99c99;--yv3-purple-900:#904339;--yv3-purple-800:#ad5546;--yv3-purple-700:#d06b54;--yv3-purple-600:#ee8b69;--yv3-purple-500:#ffb07c;--yv3-purple-300:#f9b3a7;--yv3-line:#f2d8d1;--yv3-line-strong:#e8c5bc;
}
.yanchi-v3-shell.yv3-theme-blue-indigo{
  --yv3-bg:#f3f7ff;--yv3-bg2:#dfeaff;--yv3-card:#ffffff;--yv3-card-soft:#fbfdff;--yv3-card-tint:#eef5ff;--yv3-ink:#12213f;--yv3-ink-soft:#344864;--yv3-muted:#718096;--yv3-muted-2:#9babbd;--yv3-purple-900:#14215c;--yv3-purple-800:#1f337f;--yv3-purple-700:#2f56b3;--yv3-purple-600:#3b82f6;--yv3-purple-500:#60a5fa;--yv3-purple-300:#bfdbfe;--yv3-line:#d3def1;--yv3-line-strong:#b9c7df;
}
.yanchi-v3-shell.yv3-theme-yellow{
  --yv3-bg:#fffaf0;--yv3-bg2:#ffefbf;--yv3-card:#ffffff;--yv3-card-soft:#fffdf7;--yv3-card-tint:#fff5d6;--yv3-ink:#33220d;--yv3-ink-soft:#5c4622;--yv3-muted:#8a7450;--yv3-muted-2:#b5a17a;--yv3-purple-900:#6f3d05;--yv3-purple-800:#94560b;--yv3-purple-700:#bf7b16;--yv3-purple-600:#e8a51d;--yv3-purple-500:#f6c453;--yv3-purple-300:#fde68a;--yv3-line:#ead8ae;--yv3-line-strong:#dcc58e;
}
.yanchi-v3-shell.yv3-mode-dark{
  --yv3-card:#1f1822;--yv3-card-soft:#281f2b;--yv3-card-tint:#332539;--yv3-ink:#fff7fb;--yv3-ink-soft:#eadce5;--yv3-muted:#c7b2bf;--yv3-muted-2:#9f8796;--yv3-line:rgba(255,255,255,.13);--yv3-line-strong:rgba(255,255,255,.22);
  background:
    radial-gradient(circle at 8% 0%,color-mix(in srgb,var(--yv3-purple-500) 28%,transparent),transparent 30%),
    radial-gradient(circle at 96% 30%,color-mix(in srgb,var(--yv3-purple-600) 20%,transparent),transparent 34%),
    linear-gradient(180deg,#130e18 0%,#18111d 50%,#201423 100%)!important;
  color:var(--yv3-ink)!important;
}
.yanchi-v3-shell.yv3-mode-light{
  background:
    radial-gradient(circle at 8% 0%,color-mix(in srgb,var(--yv3-purple-300) 35%,transparent),transparent 28%),
    radial-gradient(circle at 96% 30%,color-mix(in srgb,var(--yv3-purple-500) 20%,transparent),transparent 30%),
    linear-gradient(180deg,var(--yv3-bg) 0%,var(--yv3-card-soft) 48%,var(--yv3-bg2) 100%)!important;
  color:var(--yv3-ink)!important;
}
.yanchi-v3-shell.yv3-theme-pink .yv3-hero,
.yanchi-v3-shell.yv3-theme-purple .yv3-hero,
.yanchi-v3-shell.yv3-theme-peach .yv3-hero,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-hero,
.yanchi-v3-shell.yv3-theme-yellow .yv3-hero{
  background:
    radial-gradient(circle at 14% -8%,rgba(255,255,255,.24),transparent 30%),
    radial-gradient(circle at 96% 88%,color-mix(in srgb,var(--yv3-purple-300) 62%,transparent),transparent 40%),
    radial-gradient(circle at 55% 24%,color-mix(in srgb,var(--yv3-purple-500) 42%,transparent),transparent 36%),
    linear-gradient(145deg,var(--yv3-purple-900) 0%,var(--yv3-purple-700) 48%,var(--yv3-purple-500) 100%)!important;
  box-shadow:0 18px 42px color-mix(in srgb,var(--yv3-purple-900) 18%,transparent)!important;
}
.yanchi-v3-shell.yv3-mode-dark .yv3-hero{box-shadow:0 18px 42px rgba(0,0,0,.32)!important;}
.yanchi-v3-shell.yv3-theme-pink .yv3-primary,
.yanchi-v3-shell.yv3-theme-pink .yv3-home-new,
.yanchi-v3-shell.yv3-theme-pink .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-pink .yv3-footer-item.active,
.yanchi-v3-shell.yv3-theme-pink .yv3-footer-plus,
.yanchi-v3-shell.yv3-theme-pink .yv3-footer-center,
.yanchi-v3-shell.yv3-theme-pink .yv3-dashboard-card,
.yanchi-v3-shell.yv3-theme-pink .yv3-tool-card.yv3-planner-dashboard,
.yanchi-v3-shell.yv3-theme-pink .yv3-tool-card.yv3-cycle-dashboard,
.yanchi-v3-shell.yv3-theme-pink .yv3-tool-card.yv3-talk-dashboard,
.yanchi-v3-shell.yv3-theme-pink .yv3-active-pill,
.yanchi-v3-shell.yv3-theme-pink .yv3-action-primary,
.yanchi-v3-shell.yv3-theme-pink .yv3-pill-title,
.yanchi-v3-shell.yv3-theme-pink .yv3-nav-plus,
.yanchi-v3-shell.yv3-theme-pink .yv3-nav-item.active,
.yanchi-v3-shell.yv3-theme-pink .yv3-upload-btn,
.yanchi-v3-shell.yv3-theme-pink .yv3-voice-btn,
.yanchi-v3-shell.yv3-theme-pink .yv3-day-card.active,
.yanchi-v3-shell.yv3-theme-purple .yv3-primary,
.yanchi-v3-shell.yv3-theme-purple .yv3-home-new,
.yanchi-v3-shell.yv3-theme-purple .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-purple .yv3-footer-item.active,
.yanchi-v3-shell.yv3-theme-purple .yv3-footer-plus,
.yanchi-v3-shell.yv3-theme-purple .yv3-footer-center,
.yanchi-v3-shell.yv3-theme-purple .yv3-dashboard-card,
.yanchi-v3-shell.yv3-theme-purple .yv3-tool-card.yv3-planner-dashboard,
.yanchi-v3-shell.yv3-theme-purple .yv3-tool-card.yv3-cycle-dashboard,
.yanchi-v3-shell.yv3-theme-purple .yv3-tool-card.yv3-talk-dashboard,
.yanchi-v3-shell.yv3-theme-purple .yv3-active-pill,
.yanchi-v3-shell.yv3-theme-purple .yv3-action-primary,
.yanchi-v3-shell.yv3-theme-purple .yv3-pill-title,
.yanchi-v3-shell.yv3-theme-purple .yv3-nav-plus,
.yanchi-v3-shell.yv3-theme-purple .yv3-nav-item.active,
.yanchi-v3-shell.yv3-theme-purple .yv3-upload-btn,
.yanchi-v3-shell.yv3-theme-purple .yv3-voice-btn,
.yanchi-v3-shell.yv3-theme-purple .yv3-day-card.active,
.yanchi-v3-shell.yv3-theme-peach .yv3-primary,
.yanchi-v3-shell.yv3-theme-peach .yv3-home-new,
.yanchi-v3-shell.yv3-theme-peach .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-peach .yv3-footer-item.active,
.yanchi-v3-shell.yv3-theme-peach .yv3-footer-plus,
.yanchi-v3-shell.yv3-theme-peach .yv3-footer-center,
.yanchi-v3-shell.yv3-theme-peach .yv3-dashboard-card,
.yanchi-v3-shell.yv3-theme-peach .yv3-tool-card.yv3-planner-dashboard,
.yanchi-v3-shell.yv3-theme-peach .yv3-tool-card.yv3-cycle-dashboard,
.yanchi-v3-shell.yv3-theme-peach .yv3-tool-card.yv3-talk-dashboard,
.yanchi-v3-shell.yv3-theme-peach .yv3-active-pill,
.yanchi-v3-shell.yv3-theme-peach .yv3-action-primary,
.yanchi-v3-shell.yv3-theme-peach .yv3-pill-title,
.yanchi-v3-shell.yv3-theme-peach .yv3-nav-plus,
.yanchi-v3-shell.yv3-theme-peach .yv3-nav-item.active,
.yanchi-v3-shell.yv3-theme-peach .yv3-upload-btn,
.yanchi-v3-shell.yv3-theme-peach .yv3-voice-btn,
.yanchi-v3-shell.yv3-theme-peach .yv3-day-card.active,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-primary,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-home-new,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-footer-item.active,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-footer-plus,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-footer-center,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-dashboard-card,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-tool-card.yv3-planner-dashboard,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-tool-card.yv3-cycle-dashboard,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-tool-card.yv3-talk-dashboard,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-active-pill,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-action-primary,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-pill-title,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-nav-plus,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-nav-item.active,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-upload-btn,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-voice-btn,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-day-card.active,
.yanchi-v3-shell.yv3-theme-yellow .yv3-primary,
.yanchi-v3-shell.yv3-theme-yellow .yv3-home-new,
.yanchi-v3-shell.yv3-theme-yellow .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-yellow .yv3-footer-item.active,
.yanchi-v3-shell.yv3-theme-yellow .yv3-footer-plus,
.yanchi-v3-shell.yv3-theme-yellow .yv3-footer-center,
.yanchi-v3-shell.yv3-theme-yellow .yv3-dashboard-card,
.yanchi-v3-shell.yv3-theme-yellow .yv3-tool-card.yv3-planner-dashboard,
.yanchi-v3-shell.yv3-theme-yellow .yv3-tool-card.yv3-cycle-dashboard,
.yanchi-v3-shell.yv3-theme-yellow .yv3-tool-card.yv3-talk-dashboard,
.yanchi-v3-shell.yv3-theme-yellow .yv3-active-pill,
.yanchi-v3-shell.yv3-theme-yellow .yv3-action-primary,
.yanchi-v3-shell.yv3-theme-yellow .yv3-pill-title,
.yanchi-v3-shell.yv3-theme-yellow .yv3-nav-plus,
.yanchi-v3-shell.yv3-theme-yellow .yv3-nav-item.active,
.yanchi-v3-shell.yv3-theme-yellow .yv3-upload-btn,
.yanchi-v3-shell.yv3-theme-yellow .yv3-voice-btn,
.yanchi-v3-shell.yv3-theme-yellow .yv3-day-card.active{
  background:linear-gradient(135deg,var(--yv3-purple-900) 0%,var(--yv3-purple-600) 56%,var(--yv3-purple-500) 100%)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.28)!important;
  box-shadow:0 14px 28px color-mix(in srgb,var(--yv3-purple-900) 22%,transparent)!important;
}
.yanchi-v3-shell .yv3-nav-plus{
  background:radial-gradient(circle at 30% 22%,var(--yv3-purple-500) 0%,var(--yv3-purple-600) 48%,var(--yv3-purple-900) 100%)!important;
  box-shadow:0 14px 28px color-mix(in srgb,var(--yv3-purple-900) 28%,transparent),0 0 0 4px rgba(255,255,255,.72),0 0 0 5.5px color-mix(in srgb,var(--yv3-purple-300) 38%,transparent),inset 0 0 0 1px rgba(255,255,255,.28)!important;
}
.yanchi-v3-shell .yv3-planner-dashboard,
.yanchi-v3-shell .yv3-cycle-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-planner-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-cycle-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-talk-dashboard{
  background:
    radial-gradient(circle at 18% 12%,rgba(255,255,255,.22),transparent 26%),
    radial-gradient(circle at 95% 88%,color-mix(in srgb,var(--yv3-purple-300) 42%,transparent),transparent 38%),
    linear-gradient(145deg,var(--yv3-purple-900) 0%,var(--yv3-purple-700) 52%,var(--yv3-purple-500) 100%)!important;
  color:#fff!important;
}
.yanchi-v3-shell .yv3-logo-mark,
.yanchi-v3-shell .yv3-avatar{
  background:linear-gradient(135deg,#fff,var(--yv3-card-tint))!important;
  color:var(--yv3-purple-600)!important;
}
.yanchi-v3-shell .yv3-list-thumb-empty span,
.yanchi-v3-shell .yv3-list-thumb.yv3-broken-thumb .yv3-thumb-fallback,
.yanchi-v3-shell .yv3-thumb-fallback,
.yanchi-v3-shell .yv3-voice-btn{
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-600))!important;
  color:#fff!important;
}
.yanchi-v3-shell .yv3-card,
.yanchi-v3-shell .yv3-panel-card,
.yanchi-v3-shell .yv3-auth-card,
.yanchi-v3-shell .yv3-journal-card,
.yanchi-v3-shell .yv3-cycle-log-card,
.yanchi-v3-shell .yv3-bottom-nav{
  background:var(--yv3-card)!important;
  color:var(--yv3-ink)!important;
  border-color:var(--yv3-line)!important;
}
.yanchi-v3-shell .yv3-input,
.yanchi-v3-shell .yv3-textarea,
.yanchi-v3-shell .yv3-select{
  background:var(--yv3-card)!important;
  color:var(--yv3-ink)!important;
  border-color:var(--yv3-line)!important;
}
.yanchi-v3-shell .yv3-chip,
.yanchi-v3-shell .yv3-secondary,
.yanchi-v3-shell .yv3-sort-btn,
.yanchi-v3-shell .yv3-small-btn,
.yanchi-v3-shell .yv3-answer-note,
.yanchi-v3-shell .yv3-card-soft,
.yanchi-v3-shell .yv3-empty,
.yanchi-v3-shell .yv3-list-thumb,
.yanchi-v3-shell .yv3-compliance-links button,
.yanchi-v3-shell .yv3-compliance-links a{
  background:linear-gradient(135deg,var(--yv3-card-soft),var(--yv3-card-tint))!important;
  color:var(--yv3-ink-soft)!important;
  border-color:var(--yv3-line)!important;
}
.yanchi-v3-shell .yv3-chip.active{background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-600),var(--yv3-purple-500))!important;color:#fff!important;}
.yanchi-v3-shell .yv3-card-meta span:first-child,
.yanchi-v3-shell .yv3-read-more,
.yanchi-v3-shell .yv3-floating-label,
.yanchi-v3-shell .yv3-card-tags span,
.yanchi-v3-shell .yv3-detail-grid strong,
.yanchi-v3-shell .yv3-more-chip,
.yanchi-v3-shell .yv3-compliance-links button:after,
.yanchi-v3-shell .yv3-compliance-links a:after{
  color:var(--yv3-purple-600)!important;
}
.yanchi-v3-shell .yv3-card-tags span,
.yanchi-v3-shell .yv3-more-chip,
.yanchi-v3-shell .yv3-legal-badge{
  background:var(--yv3-card-tint)!important;
  border-color:var(--yv3-line)!important;
  color:var(--yv3-purple-700)!important;
}
.yanchi-v3-shell .yv3-chat-bubble.user{background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-700),var(--yv3-purple-500))!important;color:#fff!important;}
.yanchi-v3-shell .yv3-chat-bubble.user p,.yanchi-v3-shell .yv3-chat-bubble.user strong{color:#fff!important;}
.yanchi-v3-shell .yv3-chat-bubble.assistant p,.yanchi-v3-shell .yv3-legal-card p,.yanchi-v3-shell .yv3-legal-section li{color:var(--yv3-ink-soft)!important;}
.yanchi-v3-shell .yv3-select:focus,
.yanchi-v3-shell .yv3-input:focus,
.yanchi-v3-shell .yv3-textarea:focus{border-color:var(--yv3-purple-500)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--yv3-purple-500) 18%,transparent)!important;}
.yanchi-v3-shell .yv3-day.today,.yanchi-v3-shell .yv3-calendar-day.today{border-color:var(--yv3-purple-600)!important;box-shadow:inset 0 0 0 2px var(--yv3-purple-900)!important;}
.yanchi-v3-shell .yv3-cycle-ring{background:conic-gradient(var(--yv3-purple-500) var(--p),var(--yv3-card-tint) 0)!important;}
.yanchi-v3-shell .yv3-list-thumb,.yanchi-v3-shell .yv3-cycle-thumb,.yanchi-v3-shell .yv3-image-preview{background:linear-gradient(135deg,var(--yv3-card-tint),var(--yv3-bg2))!important;}
.yanchi-v3-shell.yv3-mode-dark .yv3-card,
.yanchi-v3-shell.yv3-mode-dark .yv3-panel-card,
.yanchi-v3-shell.yv3-mode-dark .yv3-auth-card,
.yanchi-v3-shell.yv3-mode-dark .yv3-journal-card,
.yanchi-v3-shell.yv3-mode-dark .yv3-cycle-log-card,
.yanchi-v3-shell.yv3-mode-dark .yv3-bottom-nav,
.yanchi-v3-shell.yv3-mode-dark .yv3-input,
.yanchi-v3-shell.yv3-mode-dark .yv3-textarea,
.yanchi-v3-shell.yv3-mode-dark .yv3-select{
  box-shadow:0 14px 34px rgba(0,0,0,.22)!important;
}
.yanchi-v3-shell.yv3-mode-dark .yv3-setting-card,
.yanchi-v3-shell.yv3-mode-dark .yv3-action-card,
.yanchi-v3-shell.yv3-mode-dark .yv3-legal-section{
  background:linear-gradient(135deg,var(--yv3-card),var(--yv3-card-soft))!important;
  border-color:var(--yv3-line)!important;
}
.yanchi-v3-shell.yv3-mode-dark .yv3-setting-card h3,
.yanchi-v3-shell.yv3-mode-dark .yv3-action-card h3,
.yanchi-v3-shell.yv3-mode-dark .yv3-section-title,
.yanchi-v3-shell.yv3-mode-dark h1,
.yanchi-v3-shell.yv3-mode-dark h2,
.yanchi-v3-shell.yv3-mode-dark h3{color:var(--yv3-ink)!important;}
.yanchi-v3-shell.yv3-mode-dark .yv3-subtitle,
.yanchi-v3-shell.yv3-mode-dark .yv3-compact-text,
.yanchi-v3-shell.yv3-mode-dark p{color:var(--yv3-ink-soft)!important;}

/* v3.4.5 detailed in-app help center */
.yanchi-v3-shell .yv3-help-screen{
  padding-bottom:108px!important;
}
.yanchi-v3-shell .yv3-help-hero{
  background:
    radial-gradient(circle at 92% 8%,color-mix(in srgb,var(--yv3-purple-300) 30%,transparent),transparent 34%),
    linear-gradient(145deg,var(--yv3-card),var(--yv3-card-tint))!important;
}
.yanchi-v3-shell .yv3-help-badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:8px 12px;
  margin-bottom:12px;
  border-radius:999px;
  color:var(--yv3-purple-700)!important;
  background:var(--yv3-card-tint)!important;
  border:1px solid var(--yv3-line)!important;
  font-size:12px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.yanchi-v3-shell .yv3-help-services{
  display:grid;
  gap:14px;
  margin-top:14px;
}
.yanchi-v3-shell .yv3-help-service{
  border:1px solid var(--yv3-line)!important;
  border-radius:18px;
  background:linear-gradient(135deg,var(--yv3-card),var(--yv3-card-soft))!important;
  padding:16px;
  box-shadow:0 12px 28px rgba(50,15,33,.05);
}
.yanchi-v3-shell .yv3-help-service-head{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:12px;
  align-items:start;
}
.yanchi-v3-shell .yv3-help-service-head > span,
.yanchi-v3-shell .yv3-help-step > span{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:13px;
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-600),var(--yv3-purple-500))!important;
  color:#fff!important;
  font-weight:950;
  box-shadow:0 10px 20px color-mix(in srgb,var(--yv3-purple-600) 20%,transparent);
}
.yanchi-v3-shell .yv3-help-service h3{
  margin:2px 0 6px;
  font-size:18px;
  line-height:1.2;
  font-weight:950;
  color:var(--yv3-ink)!important;
}
.yanchi-v3-shell .yv3-help-service p{
  margin:0;
  color:var(--yv3-ink-soft)!important;
  font-size:14px;
  line-height:1.5;
  font-weight:720;
}
.yanchi-v3-shell .yv3-help-steps{
  list-style:none;
  padding:0;
  margin:14px 0 0;
  display:grid;
  gap:10px;
}
.yanchi-v3-shell .yv3-help-step{
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  gap:10px;
  align-items:start;
  padding:10px;
  border-radius:14px;
  background:var(--yv3-card-soft)!important;
  border:1px solid var(--yv3-line)!important;
}
.yanchi-v3-shell .yv3-help-step > span{
  width:28px;
  height:28px;
  border-radius:10px;
  font-size:12px;
}
.yanchi-v3-shell .yv3-help-step p{
  margin:2px 0 0;
  color:var(--yv3-ink-soft)!important;
  font-size:13.5px;
  line-height:1.45;
  font-weight:720;
}
.yanchi-v3-shell .yv3-help-list{
  display:grid;
  gap:10px;
  padding-left:20px;
  margin:14px 0 0;
}
.yanchi-v3-shell .yv3-help-list li{
  color:var(--yv3-ink-soft)!important;
  font-weight:740;
  line-height:1.5;
}
.yanchi-v3-shell .yv3-help-warning{
  border-color:color-mix(in srgb,var(--yv3-purple-600) 24%,var(--yv3-line))!important;
}
.yanchi-v3-shell .yv3-help-tip{
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-700),var(--yv3-purple-500))!important;
  color:#fff!important;
}
.yanchi-v3-shell .yv3-help-tip p{
  margin:0;
  color:#fff!important;
  font-weight:850;
  line-height:1.55;
}
@media (min-width:780px){
  .yanchi-v3-shell .yv3-help-services{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:380px){
  .yanchi-v3-shell .yv3-help-service{padding:13px;}
  .yanchi-v3-shell .yv3-help-service-head{grid-template-columns:34px minmax(0,1fr);gap:10px;}
  .yanchi-v3-shell .yv3-help-service-head > span{width:32px;height:32px;border-radius:11px;}
  .yanchi-v3-shell .yv3-help-service h3{font-size:16px;}
  .yanchi-v3-shell .yv3-help-service p,.yanchi-v3-shell .yv3-help-step p{font-size:12.5px;}
}

/* v3.4.7 — Auth/login/register main background restored to Yanchiii pink theme */
.yanchi-v3-shell .yv3-auth-wrap{
  background:
    radial-gradient(circle at 12% 4%,rgba(255,192,223,.58),transparent 34%),
    radial-gradient(circle at 84% 95%,rgba(255,138,198,.54),transparent 42%),
    radial-gradient(circle at 52% 34%,rgba(247,104,173,.34),transparent 36%),
    linear-gradient(150deg,#5a0e3a 0%,#a61d6c 50%,#ff8ac6 100%)!important;
}
.yanchi-v3-shell .yv3-auth-card{
  background:rgba(255,255,255,.88)!important;
  border-color:rgba(255,255,255,.72)!important;
  box-shadow:0 28px 80px rgba(90,14,58,.28)!important;
}
.yanchi-v3-shell .yv3-auth-card h1,
.yanchi-v3-shell .yv3-auth-card h2{
  color:#321025!important;
}
.yanchi-v3-shell .yv3-auth-card p,
.yanchi-v3-shell .yv3-auth-legal,
.yanchi-v3-shell .yv3-auth-legal button{
  color:#563048!important;
}
.yanchi-v3-shell .yv3-auth-card .yv3-primary{
  background:linear-gradient(135deg,#5a0e3a 0%,#d63384 56%,#ff8ac6 100%)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.30)!important;
  box-shadow:0 14px 28px rgba(90,14,58,.24)!important;
}
.yanchi-v3-shell .yv3-auth-card .yv3-secondary,
.yanchi-v3-shell .yv3-auth-note{
  background:linear-gradient(135deg,#fffbfe,#fff0f8)!important;
  border-color:#efd2e2!important;
  color:#563048!important;
}
.yanchi-v3-shell .yv3-auth-card .yv3-link-btn{
  color:#a61d6c!important;
}

/* v3.4.9 — Profile Deep Reflection module */
.yanchi-v3-shell .yv3-shadow-profile-card{
  border-color:rgba(214,51,132,.20)!important;
  background:linear-gradient(135deg,rgba(255,240,248,.94),rgba(255,255,255,.98))!important;
}
.yanchi-v3-shell .yv3-shadow-screen .yv3-card{
  overflow:hidden;
}
.yanchi-v3-shell .yv3-shadow-hero{
  background:
    radial-gradient(circle at top left,rgba(255,138,198,.25),transparent 38%),
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,244,250,.94));
}
.yanchi-v3-shell .yv3-shadow-map{
  margin-top:14px;
}
.yanchi-v3-shell .yv3-shadow-form .yv3-textarea{
  min-height:96px;
}
.yanchi-v3-shell .yv3-shadow-plan-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:12px 0 16px;
}
.yanchi-v3-shell .yv3-shadow-plan-card{
  min-height:106px;
  text-align:left;
  align-items:flex-start;
}
.yanchi-v3-shell .yv3-shadow-start{
  margin:8px 0 14px;
}
.yanchi-v3-shell .yv3-shadow-plan-list{
  display:block;
  padding:16px;
  margin-top:12px;
}
.yanchi-v3-shell .yv3-shadow-day{
  border:1px solid rgba(214,51,132,.16);
  background:#fff9fd;
  border-radius:16px;
  padding:10px 11px;
  margin-top:9px;
}
.yanchi-v3-shell .yv3-shadow-day.done{
  opacity:.66;
}
.yanchi-v3-shell .yv3-shadow-day.done p{
  text-decoration:line-through;
}
.yanchi-v3-shell .yv3-shadow-day label{
  display:flex;
  gap:8px;
  align-items:flex-start;
  font-size:13px;
  color:var(--yv3-text);
}
.yanchi-v3-shell .yv3-shadow-day p{
  margin:8px 0 8px 25px;
  color:var(--yv3-muted);
  font-size:13px;
  line-height:1.45;
}
.yanchi-v3-shell .yv3-small-btn{
  min-height:34px!important;
  padding:7px 12px!important;
  font-size:12px!important;
  margin-left:25px;
}
@media (max-width:420px){
  .yanchi-v3-shell .yv3-shadow-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .yanchi-v3-shell .yv3-shadow-plan-card{min-height:96px;padding:11px!important;}
  .yanchi-v3-shell .yv3-shadow-plan-card strong{font-size:13px;line-height:1.15;}
  .yanchi-v3-shell .yv3-shadow-plan-card small{font-size:11px;}
}


/* v3.4.11 — Deep Reflection home dashboard and chip selectors */
.yanchi-v3-shell .yv3-home-tool-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card{
  min-height:148px!important;
}
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard{
  background:linear-gradient(135deg,var(--yv3-card),var(--yv3-card-tint))!important;
  border-color:color-mix(in srgb,var(--yv3-purple-600) 22%,var(--yv3-line))!important;
}
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard .yv3-tool-icon{
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-600))!important;
}
.yanchi-v3-shell .yv3-shadow-chip-block{
  margin:16px 0 8px;
}
.yanchi-v3-shell .yv3-shadow-chip-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:8px 0 10px;
}
.yanchi-v3-shell .yv3-shadow-chip{
  min-height:34px;
  padding:8px 11px;
  border-radius:999px;
  border:1px solid var(--yv3-line);
  background:var(--yv3-card-soft);
  color:var(--yv3-ink-soft);
  font-size:12px;
  font-weight:850;
  line-height:1.1;
  box-shadow:0 6px 14px rgba(90,14,58,.035);
}
.yanchi-v3-shell .yv3-shadow-chip.active,
.yanchi-v3-shell .yv3-chip-other.active{
  color:#fff!important;
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-600))!important;
  border-color:transparent!important;
}
.yanchi-v3-shell .yv3-chip-more,
.yanchi-v3-shell .yv3-chip-other{
  background:#fff!important;
  color:var(--yv3-purple-700)!important;
  border-color:color-mix(in srgb,var(--yv3-purple-600) 28%,var(--yv3-line))!important;
}
.yanchi-v3-shell .yv3-shadow-other-input{
  margin-top:8px!important;
}
@media(max-width:520px){
  .yanchi-v3-shell .yv3-home-tool-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card{
    min-height:146px!important;
    padding:12px 9px!important;
  }
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-tool-icon{
    width:29px!important;height:29px!important;margin-bottom:9px!important;font-size:14px!important;
  }
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card small{font-size:8.5px!important;line-height:1.1!important;margin-bottom:5px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{font-size:12px!important;line-height:1.12!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-compact-text{font-size:9px!important;line-height:1.24!important;-webkit-line-clamp:4!important;}
  .yanchi-v3-shell .yv3-shadow-chip-list{gap:7px;}
  .yanchi-v3-shell .yv3-shadow-chip{font-size:11.5px;padding:7px 9px;min-height:32px;}
}
@media(max-width:340px){
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card{min-height:138px!important;padding:10px 7px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{font-size:11px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-compact-text{font-size:8.3px!important;}
}


/* v3.4.11 — Reflection tab cleanup, saturated banner, dashboard parity */
.yanchi-v3-shell .yv3-hero{
  background:
    radial-gradient(circle at 14% -8%,rgba(255,255,255,.28),transparent 30%),
    radial-gradient(circle at 96% 88%,color-mix(in srgb,var(--yv3-purple-300) 76%,transparent),transparent 40%),
    radial-gradient(circle at 55% 24%,color-mix(in srgb,var(--yv3-purple-500) 58%,transparent),transparent 36%),
    linear-gradient(145deg,var(--yv3-purple-900) 0%,var(--yv3-purple-600) 48%,color-mix(in srgb,var(--yv3-purple-500) 70%,#ff2f93 30%) 100%)!important;
  box-shadow:0 20px 48px color-mix(in srgb,var(--yv3-purple-900) 24%,transparent)!important;
}
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard{
  background:
    radial-gradient(circle at 18% 12%,rgba(255,255,255,.22),transparent 26%),
    radial-gradient(circle at 95% 88%,color-mix(in srgb,var(--yv3-purple-300) 44%,transparent),transparent 38%),
    linear-gradient(145deg,var(--yv3-purple-900) 0%,var(--yv3-purple-700) 52%,var(--yv3-purple-500) 100%)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.28)!important;
  box-shadow:0 14px 28px color-mix(in srgb,var(--yv3-purple-900) 22%,transparent)!important;
}
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard small,
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard strong,
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard .yv3-compact-text{color:#fff!important;}
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard .yv3-tool-icon{background:rgba(255,255,255,.16)!important;color:#fff!important;border:1px solid rgba(255,255,255,.25)!important;}
.yanchi-v3-shell .yv3-shadow-nav-card{background:linear-gradient(135deg,var(--yv3-card),var(--yv3-card-tint))!important;}
.yanchi-v3-shell .yv3-shadow-nav-card .yv3-section-title{margin-bottom:14px!important;}
.yanchi-v3-shell .yv3-shadow-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;overflow:visible!important;}
.yanchi-v3-shell .yv3-shadow-tabs .yv3-tab{min-width:0!important;text-align:center!important;padding:11px 8px!important;font-size:12px!important;white-space:normal!important;line-height:1.15!important;}
.yanchi-v3-shell .yv3-shadow-section h2{margin-top:0!important;}
.yanchi-v3-shell .yv3-shadow-insights .yv3-shadow-map{margin-top:10px!important;}
.yanchi-v3-shell .yv3-shadow-insights .yv3-metric:nth-child(5){grid-column:1 / -1;}
@media(max-width:380px){.yanchi-v3-shell .yv3-shadow-tabs .yv3-tab{font-size:10.5px!important;padding:10px 5px!important;}}


/* v3.4.12 home order + cleaner section headers/tabs */
.yanchi-v3-shell .yv3-life-tools-first{
  margin-top:0!important;
  padding-top:24px!important;
}
.yanchi-v3-shell .yv3-life-tools > .yv3-section-title,
.yanchi-v3-shell .yv3-life-tools > .yv3-subtitle,
.yanchi-v3-shell .yv3-planner-card > .yv3-subtitle{
  display:none!important;
}
.yanchi-v3-shell .yv3-planner-card .yv3-section-title,
.yanchi-v3-shell .yv3-card:has(.yv3-tabs) > .yv3-section-title{
  margin-bottom:16px!important;
}
.yanchi-v3-shell .yv3-tabs{
  margin-top:0!important;
}
.yanchi-v3-shell .yv3-tabs .yv3-tab,
.yanchi-v3-shell .yv3-tabs .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-pink .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-purple .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-peach .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-yellow .yv3-tab.active{
  box-shadow:none!important;
  filter:none!important;
}
.yanchi-v3-shell .yv3-tabs .yv3-tab.active:hover,
.yanchi-v3-shell .yv3-tabs .yv3-tab.active:focus{
  box-shadow:none!important;
  filter:none!important;
  transform:none!important;
}
@media(max-width:520px){
  .yanchi-v3-shell .yv3-life-tools-first{padding-top:22px!important;}
}


/* v3.4.13 — compact top banner and one-row Home dashboards */
.yanchi-v3-shell .yv3-hero{
  padding:7px 10px 10px!important;
  border-radius:0 0 20px 20px!important;
  box-shadow:0 10px 24px color-mix(in srgb,var(--yv3-purple-900) 16%,transparent)!important;
}
.yanchi-v3-shell .yv3-toprow{
  grid-template-columns:minmax(84px,1fr) minmax(62px,.7fr) minmax(72px,.82fr) 32px!important;
  gap:5px!important;
}
.yanchi-v3-shell .yv3-brand-pill,
.yanchi-v3-shell .yv3-points-pill,
.yanchi-v3-shell .yv3-lang,
.yanchi-v3-shell .yv3-profile-btn{
  height:32px!important;
  min-height:32px!important;
  border-radius:999px!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-brand-pill{
  padding:2px 7px 2px 3px!important;
  gap:5px!important;
  font-size:12px!important;
}
.yanchi-v3-shell .yv3-brand-pill .yv3-logo-mark,
.yanchi-v3-shell .yv3-logo-mark{
  width:26px!important;
  height:26px!important;
  font-size:11px!important;
}
.yanchi-v3-shell .yv3-lang{
  padding:0 18px 0 8px!important;
  font-size:11px!important;
  border-radius:12px!important;
  background-position:calc(100% - 10px) 13px!important;
}
.yanchi-v3-shell .yv3-points-pill{
  padding:1px 5px!important;
}
.yanchi-v3-shell .yv3-points-pill small{
  font-size:7px!important;
}
.yanchi-v3-shell .yv3-points-pill strong{
  font-size:11px!important;
}
.yanchi-v3-shell .yv3-profile-btn{
  width:32px!important;
  font-size:13px!important;
}
.yanchi-v3-shell .yv3-quote-card{
  margin-top:7px!important;
  padding:9px 12px!important;
  border-radius:16px!important;
  min-height:0!important;
}
.yanchi-v3-shell .yv3-quote-card h2{
  font-size:clamp(14px,3.8vw,18px)!important;
  line-height:1.14!important;
  margin:0!important;
  letter-spacing:-.025em!important;
}
.yanchi-v3-shell .yv3-quote-card p,
.yanchi-v3-shell .yv3-quote-card .yv3-ghost-btn,
.yanchi-v3-shell .yv3-ghost-btn{
  display:none!important;
}
.yanchi-v3-shell .yv3-screen{
  padding-top:14px!important;
}
.yanchi-v3-shell .yv3-life-tools-first,
.yanchi-v3-shell .yv3-life-tools{
  padding:12px 10px 14px!important;
  margin-bottom:14px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:6px!important;
  align-items:stretch!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card{
  min-height:102px!important;
  padding:8px 5px!important;
  border-radius:13px!important;
  justify-content:flex-start!important;
  overflow:hidden!important;
  box-shadow:0 8px 16px color-mix(in srgb,var(--yv3-purple-900) 13%,transparent)!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-tool-icon{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  min-height:24px!important;
  border-radius:8px!important;
  margin-bottom:6px!important;
  font-size:11px!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card small{
  font-size:6.5px!important;
  line-height:1.05!important;
  letter-spacing:.08em!important;
  margin-bottom:3px!important;
  opacity:.86!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{
  font-size:8.7px!important;
  line-height:1.08!important;
  letter-spacing:-.02em!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-compact-text{
  display:none!important;
}
.yanchi-v3-shell .yv3-home-cta{
  margin:16px auto!important;
}
@media(max-width:360px){
  .yanchi-v3-shell .yv3-home-tool-grid{gap:5px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card{min-height:96px!important;padding:7px 4px!important;border-radius:12px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{font-size:8px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card small{font-size:6px!important;}
}
@media(min-width:760px){
  .yanchi-v3-shell .yv3-hero{padding:10px 22px 14px!important;}
  .yanchi-v3-shell .yv3-quote-card{max-width:620px!important;margin-top:10px!important;padding:12px 18px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card{min-height:118px!important;padding:12px 10px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{font-size:13px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card small{font-size:8px!important;}
}


/* v3.4.14 — Professional mobile UI redesign
   Mobile-first, compact, accessible tap targets, lighter cards, and cleaner navigation. */
.yanchi-v3-shell{
  --yv3-app-max:500px;
  --yv3-page-pad:14px;
  --yv3-card-radius:24px;
  --yv3-soft-shadow:0 10px 28px rgba(90,14,58,.075);
  --yv3-hard-shadow:0 18px 44px rgba(90,14,58,.14);
  background:
    radial-gradient(circle at 18% -4%, color-mix(in srgb,var(--yv3-purple-300) 38%, transparent), transparent 36%),
    linear-gradient(180deg,var(--yv3-bg) 0%,#fff 34%,var(--yv3-bg2) 100%)!important;
  color:var(--yv3-ink)!important;
}
.yanchi-v3-shell .yv3-app{
  max-width:var(--yv3-app-max)!important;
  padding-bottom:calc(104px + env(safe-area-inset-bottom))!important;
}
.yanchi-v3-shell .yv3-hero{
  min-height:auto!important;
  padding:calc(8px + env(safe-area-inset-top)) 12px 10px!important;
  border-radius:0 0 22px 22px!important;
  background:
    radial-gradient(circle at 10% 0%, rgba(255,255,255,.32), transparent 30%),
    linear-gradient(135deg,var(--yv3-purple-900) 0%,var(--yv3-purple-700) 48%,var(--yv3-purple-500) 100%)!important;
  box-shadow:0 10px 26px color-mix(in srgb,var(--yv3-purple-900) 18%, transparent)!important;
}
.yanchi-v3-shell .yv3-hero:before,
.yanchi-v3-shell .yv3-hero:after{display:none!important;}
.yanchi-v3-shell .yv3-toprow{
  display:grid!important;
  grid-template-columns:minmax(108px,1fr) 86px 82px 36px!important;
  gap:7px!important;
  align-items:center!important;
}
.yanchi-v3-shell .yv3-brand-pill,
.yanchi-v3-shell .yv3-points-pill,
.yanchi-v3-shell .yv3-lang,
.yanchi-v3-shell .yv3-profile-btn{
  height:36px!important;
  min-height:36px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.92)!important;
  color:var(--yv3-purple-900)!important;
  border:1px solid rgba(255,255,255,.55)!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-brand-pill{
  padding:3px 9px 3px 4px!important;
  gap:6px!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:-.02em!important;
}
.yanchi-v3-shell .yv3-brand-pill .yv3-logo-mark,
.yanchi-v3-shell .yv3-logo-mark{
  width:28px!important;
  height:28px!important;
  font-size:11px!important;
}
.yanchi-v3-shell .yv3-points-pill{padding:3px 7px!important;gap:1px!important;}
.yanchi-v3-shell .yv3-points-pill small{font-size:7px!important;line-height:1!important;letter-spacing:.02em!important;}
.yanchi-v3-shell .yv3-points-pill strong{font-size:11px!important;line-height:1.1!important;font-weight:900!important;}
.yanchi-v3-shell .yv3-lang{font-size:11px!important;font-weight:850!important;padding:0 20px 0 8px!important;background-position:calc(100% - 10px) 14px!important;}
.yanchi-v3-shell .yv3-profile-btn{width:36px!important;font-size:13px!important;font-weight:900!important;}
.yanchi-v3-shell .yv3-quote-card{display:none!important;}
.yanchi-v3-shell .yv3-screen{
  padding:14px var(--yv3-page-pad) 20px!important;
  display:grid!important;
  gap:14px!important;
}
.yanchi-v3-shell .yv3-screen > .yv3-card,
.yanchi-v3-shell .yv3-card{
  margin:0!important;
  padding:18px!important;
  border-radius:var(--yv3-card-radius)!important;
  background:rgba(255,255,255,.92)!important;
  border:1px solid color-mix(in srgb,var(--yv3-line) 82%,#fff 18%)!important;
  box-shadow:var(--yv3-soft-shadow)!important;
  overflow:hidden!important;
}
.yanchi-v3-shell .yv3-card.flat{
  padding:14px!important;
  border-radius:18px!important;
  background:var(--yv3-card-tint)!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-section-title{
  font-size:clamp(24px,7vw,32px)!important;
  line-height:1.05!important;
  letter-spacing:-.055em!important;
  font-weight:900!important;
  margin:0 0 14px!important;
}
.yanchi-v3-shell .yv3-card h2:not(.yv3-section-title){
  font-size:clamp(20px,5.8vw,26px)!important;
  line-height:1.14!important;
  letter-spacing:-.04em!important;
  font-weight:900!important;
  margin:18px 0 12px!important;
}
.yanchi-v3-shell .yv3-card h3{font-size:17px!important;line-height:1.2!important;font-weight:900!important;margin:14px 0 8px!important;}
.yanchi-v3-shell .yv3-subtitle,
.yanchi-v3-shell .yv3-card p,
.yanchi-v3-shell .yv3-card li{
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:650!important;
  color:var(--yv3-muted)!important;
}
.yanchi-v3-shell .yv3-divider{margin:18px 0!important;border-color:var(--yv3-line)!important;}

/* Home: professional 2×2 dashboard layout on phones, 4 columns on wider screens. */
.yanchi-v3-shell .yv3-home-screen{gap:14px!important;}
.yanchi-v3-shell .yv3-life-tools-first,
.yanchi-v3-shell .yv3-life-tools{
  padding:14px!important;
  min-height:auto!important;
  margin:0!important;
}
.yanchi-v3-shell .yv3-life-tools > .yv3-section-title,
.yanchi-v3-shell .yv3-life-tools > .yv3-subtitle{display:none!important;}
.yanchi-v3-shell .yv3-home-tool-grid,
.yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:stretch!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card,
.yanchi-v3-shell .yv3-tool-card{
  position:relative!important;
  min-height:124px!important;
  padding:13px 12px!important;
  border-radius:20px!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  gap:0!important;
  background:
    radial-gradient(circle at 98% 98%,rgba(255,255,255,.20),transparent 37%),
    linear-gradient(140deg,var(--yv3-purple-900) 0%,var(--yv3-purple-700) 55%,var(--yv3-purple-500) 100%)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.24)!important;
  box-shadow:0 12px 24px color-mix(in srgb,var(--yv3-purple-900) 18%,transparent)!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card:after,
.yanchi-v3-shell .yv3-tool-card:after{
  content:""!important;
  position:absolute!important;
  width:110px!important;height:110px!important;
  border-radius:50%!important;
  right:-42px!important;bottom:-44px!important;
  background:rgba(255,255,255,.16)!important;
  pointer-events:none!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-tool-icon,
.yanchi-v3-shell .yv3-tool-card .yv3-tool-icon{
  width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;
  border-radius:13px!important;
  margin:0 0 12px!important;
  display:grid!important;place-items:center!important;
  font-size:15px!important;font-weight:900!important;
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.20)!important;
  box-shadow:none!important;
  z-index:1!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card small,
.yanchi-v3-shell .yv3-tool-card small{
  font-size:9px!important;
  line-height:1.1!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  font-weight:950!important;
  color:rgba(255,255,255,.74)!important;
  margin:0 0 6px!important;
  z-index:1!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong,
.yanchi-v3-shell .yv3-tool-card strong{
  font-size:15px!important;
  line-height:1.12!important;
  font-weight:950!important;
  color:#fff!important;
  letter-spacing:-.035em!important;
  margin:0!important;
  z-index:1!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-compact-text{
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  margin-top:7px!important;
  font-size:11px!important;
  line-height:1.24!important;
  font-weight:750!important;
  color:rgba(255,255,255,.82)!important;
  z-index:1!important;
}
.yanchi-v3-shell .yv3-home-cta{width:100%!important;margin:0!important;max-width:none!important;}
.yanchi-v3-shell .yv3-home-cta .yv3-primary{min-height:52px!important;border-radius:20px!important;font-size:16px!important;}
.yanchi-v3-shell .yv3-recent-card{padding:18px!important;}
.yanchi-v3-shell .yv3-search-row{gap:10px!important;margin-bottom:12px!important;}
.yanchi-v3-shell .yv3-pill-title{min-height:38px!important;border-radius:999px!important;padding:9px 13px!important;font-size:13px!important;}
.yanchi-v3-shell .yv3-sort-btn{min-height:38px!important;border-radius:999px!important;padding:9px 13px!important;font-size:13px!important;}

/* Forms and chips */
.yanchi-v3-shell .yv3-label{font-size:13px!important;font-weight:900!important;margin:14px 0 8px!important;color:var(--yv3-purple-900)!important;}
.yanchi-v3-shell .yv3-input,
.yanchi-v3-shell .yv3-select,
.yanchi-v3-shell .yv3-textarea{
  min-height:52px!important;
  border-radius:18px!important;
  border:1px solid var(--yv3-line)!important;
  background:#fff!important;
  box-shadow:none!important;
  padding:13px 14px!important;
  font-size:15px!important;
  line-height:1.42!important;
  color:var(--yv3-ink)!important;
}
.yanchi-v3-shell .yv3-textarea{min-height:118px!important;resize:vertical!important;}
.yanchi-v3-shell .yv3-chip-wrap,
.yanchi-v3-shell .yv3-chip-list,
.yanchi-v3-shell .yv3-shadow-chip-list{gap:8px!important;}
.yanchi-v3-shell .yv3-chip,
.yanchi-v3-shell .yv3-shadow-chip{
  min-height:34px!important;
  border-radius:999px!important;
  padding:8px 11px!important;
  font-size:12px!important;
  font-weight:850!important;
  border:1px solid var(--yv3-line)!important;
  background:#fff!important;
  color:var(--yv3-muted)!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-chip.active,
.yanchi-v3-shell .yv3-shadow-chip.active{
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-600))!important;
  color:#fff!important;
  border-color:transparent!important;
}
.yanchi-v3-shell .yv3-check-card,
.yanchi-v3-shell .yv3-action-card,
.yanchi-v3-shell .yv3-setting-card{
  border-radius:20px!important;
  padding:14px!important;
  border:1px solid var(--yv3-line)!important;
  background:#fff!important;
  box-shadow:none!important;
}

/* Buttons */
.yanchi-v3-shell .yv3-primary,
.yanchi-v3-shell .yv3-secondary{
  min-height:52px!important;
  border-radius:18px!important;
  font-size:15px!important;
  font-weight:900!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-primary{background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-600),var(--yv3-purple-500))!important;color:#fff!important;border:0!important;}
.yanchi-v3-shell .yv3-secondary{background:var(--yv3-card-tint)!important;color:var(--yv3-purple-900)!important;border:1px solid var(--yv3-line)!important;}

/* Tabs: clean app segmented controls */
.yanchi-v3-shell .yv3-tabs{
  margin:0 0 16px!important;
  padding:4px!important;
  gap:6px!important;
  background:color-mix(in srgb,var(--yv3-card-tint) 80%,#fff 20%)!important;
  border:1px solid var(--yv3-line)!important;
  border-radius:18px!important;
  overflow-x:auto!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-tab{
  min-height:40px!important;
  padding:9px 14px!important;
  border-radius:14px!important;
  background:transparent!important;
  border:0!important;
  color:var(--yv3-muted)!important;
  font-size:13px!important;
  font-weight:900!important;
  box-shadow:none!important;
  filter:none!important;
  flex:0 0 auto!important;
}
.yanchi-v3-shell .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-pink .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-purple .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-peach .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-tab.active,
.yanchi-v3-shell.yv3-theme-yellow .yv3-tab.active{
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-600))!important;
  color:#fff!important;
  box-shadow:none!important;
  filter:none!important;
}
.yanchi-v3-shell .yv3-planner-card .yv3-tabs,
.yanchi-v3-shell .yv3-card .yv3-tabs{margin-top:0!important;}
.yanchi-v3-shell .yv3-shadow-tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important;display:grid!important;overflow:visible!important;}
.yanchi-v3-shell .yv3-shadow-tabs .yv3-tab{width:100%!important;text-align:center!important;white-space:normal!important;font-size:12px!important;line-height:1.12!important;padding-left:6px!important;padding-right:6px!important;}

/* Journal cards, saved items, metrics */
.yanchi-v3-shell .yv3-journal-list,
.yanchi-v3-shell .yv3-blog-list{gap:12px!important;margin-top:12px!important;}
.yanchi-v3-shell .yv3-list-card,
.yanchi-v3-shell .yv3-journal-list .yv3-list-card{
  border-radius:20px!important;
  padding:14px!important;
  min-height:auto!important;
  background:#fff!important;
  border:1px solid var(--yv3-line)!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-empty{
  min-height:96px!important;
  border-radius:20px!important;
  padding:22px 16px!important;
  font-size:15px!important;
  line-height:1.38!important;
  background:var(--yv3-card-tint)!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-grid.two{gap:12px!important;}
.yanchi-v3-shell .yv3-metric{
  min-height:94px!important;
  padding:14px!important;
  border-radius:20px!important;
  background:#fff!important;
  border:1px solid var(--yv3-line)!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-metric strong{font-size:clamp(22px,6.2vw,30px)!important;font-weight:950!important;margin-bottom:8px!important;line-height:1!important;}
.yanchi-v3-shell .yv3-metric span{font-size:12px!important;line-height:1.25!important;font-weight:850!important;color:var(--yv3-muted)!important;}

/* Planner and Cycle polish */
.yanchi-v3-shell .yv3-planner-datebar,
.yanchi-v3-shell .yv3-cycle-phase{
  border-radius:22px!important;
  padding:16px!important;
  background:linear-gradient(135deg,#fff,var(--yv3-card-tint))!important;
  border:1px solid var(--yv3-line)!important;
  box-shadow:none!important;
  margin-bottom:16px!important;
}
.yanchi-v3-shell .yv3-cycle-ring{width:76px!important;height:76px!important;min-width:76px!important;}
.yanchi-v3-shell .yv3-cycle-ring span{width:52px!important;height:52px!important;font-size:20px!important;}
.yanchi-v3-shell .yv3-planner-calendar,
.yanchi-v3-shell .yv3-week-labels{gap:6px!important;}
.yanchi-v3-shell .yv3-planner-day,
.yanchi-v3-shell .yv3-planner-cal-empty{min-height:42px!important;border-radius:14px!important;font-size:13px!important;}
.yanchi-v3-shell .yv3-task,
.yanchi-v3-shell .yv3-timeline-block,
.yanchi-v3-shell .yv3-history-card,
.yanchi-v3-shell .yv3-report-item,
.yanchi-v3-shell .yv3-panel-card{
  border-radius:18px!important;
  padding:14px!important;
  border:1px solid var(--yv3-line)!important;
  background:#fff!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-cycle-ask .yv3-subtitle,
.yanchi-v3-shell .yv3-planner-card > .yv3-subtitle{display:none!important;}

/* Deep reflection page */
.yanchi-v3-shell .yv3-shadow-screen{gap:12px!important;}
.yanchi-v3-shell .yv3-shadow-nav-card{padding:16px!important;background:rgba(255,255,255,.94)!important;}
.yanchi-v3-shell .yv3-shadow-nav-card .yv3-section-title{font-size:clamp(24px,7vw,30px)!important;margin-bottom:12px!important;}
.yanchi-v3-shell .yv3-shadow-section{padding:18px!important;}
.yanchi-v3-shell .yv3-shadow-form .yv3-grid.two{grid-template-columns:1fr 110px!important;gap:10px!important;align-items:end!important;}
.yanchi-v3-shell .yv3-shadow-chip-block{margin:14px 0!important;}
.yanchi-v3-shell .yv3-shadow-map{gap:10px!important;}
.yanchi-v3-shell .yv3-shadow-insights .yv3-metric:nth-child(5){grid-column:auto!important;}

/* Bottom navigation: smaller, modern floating bar */
.yanchi-v3-shell .yv3-bottom-nav{
  bottom:calc(12px + env(safe-area-inset-bottom))!important;
  width:min(500px,calc(100vw - 28px))!important;
  height:68px!important;
  border-radius:28px!important;
  grid-template-columns:1fr 1fr 74px 1fr 1fr!important;
  padding:8px 12px!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid rgba(239,210,226,.82)!important;
  box-shadow:0 16px 38px rgba(45,15,32,.16)!important;
  backdrop-filter:blur(22px)!important;
}
.yanchi-v3-shell .yv3-nav-item{
  width:44px!important;height:44px!important;border-radius:16px!important;
  color:#9b8e96!important;background:transparent!important;box-shadow:none!important;
}
.yanchi-v3-shell .yv3-nav-item svg{width:22px!important;height:22px!important;stroke-width:2.1!important;}
.yanchi-v3-shell .yv3-nav-item.active{
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-600))!important;
  color:#fff!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-nav-plus{
  width:66px!important;height:66px!important;margin:-24px auto 0!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,var(--yv3-purple-900),var(--yv3-purple-600),var(--yv3-purple-500))!important;
  box-shadow:0 14px 30px color-mix(in srgb,var(--yv3-purple-900) 24%,transparent),0 0 0 8px rgba(255,255,255,.92)!important;
  font-size:34px!important;
}
.yanchi-v3-shell .yv3-nav-plus span{transform:translateY(-2px)!important;}

/* Auth screens: launch quality pink glass */
.yanchi-v3-shell .yv3-auth-wrap{
  background:
    radial-gradient(circle at 82% 16%,rgba(255,255,255,.30),transparent 34%),
    radial-gradient(circle at 12% 88%,color-mix(in srgb,var(--yv3-purple-300) 44%,transparent),transparent 34%),
    linear-gradient(145deg,var(--yv3-purple-900),var(--yv3-purple-600),var(--yv3-purple-500))!important;
}
.yanchi-v3-shell .yv3-auth-card{border-radius:30px!important;padding:24px!important;background:rgba(255,255,255,.9)!important;box-shadow:0 24px 70px rgba(45,15,32,.22)!important;}
.yanchi-v3-shell .yv3-auth-card h1{font-size:36px!important;font-weight:950!important;letter-spacing:-.07em!important;}
.yanchi-v3-shell .yv3-auth-card h2{font-size:24px!important;font-weight:900!important;}

@media(max-width:380px){
  .yanchi-v3-shell{--yv3-page-pad:10px;}
  .yanchi-v3-shell .yv3-toprow{grid-template-columns:minmax(92px,1fr) 76px 72px 34px!important;gap:5px!important;}
  .yanchi-v3-shell .yv3-brand-pill{font-size:12px!important;padding-right:6px!important;}
  .yanchi-v3-shell .yv3-points-pill small{display:none!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card{min-height:116px!important;padding:11px 10px!important;border-radius:18px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{font-size:13px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-compact-text{font-size:10px!important;}
  .yanchi-v3-shell .yv3-shadow-form .yv3-grid.two{grid-template-columns:1fr!important;}
}
@media(min-width:540px){
  .yanchi-v3-shell .yv3-home-tool-grid,
  .yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card{min-height:118px!important;}
}
@media(min-width:760px){
  .yanchi-v3-shell{--yv3-app-max:760px;--yv3-page-pad:20px;}
  .yanchi-v3-shell .yv3-screen{padding-top:18px!important;}
  .yanchi-v3-shell .yv3-card{padding:22px!important;}
}

/* v3.4.15 — Hourly 21-day empowerment quote banner */
.yanchi-v3-shell .yv3-hero{
  min-height:118px!important;
  padding:calc(13px + env(safe-area-inset-top)) 12px 14px!important;
  border-radius:0 0 26px 26px!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(255,255,255,.34),transparent 30%),
    radial-gradient(circle at 92% 110%,rgba(255,255,255,.16),transparent 36%),
    linear-gradient(135deg,var(--yv3-purple-900) 0%,var(--yv3-purple-700) 47%,var(--yv3-purple-500) 100%)!important;
  box-shadow:0 14px 32px color-mix(in srgb,var(--yv3-purple-900) 20%,transparent)!important;
}
.yanchi-v3-shell .yv3-quote-card,
.yanchi-v3-shell .yv3-hourly-quote{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:50px!important;
  margin:10px 0 0!important;
  padding:10px 12px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.15)!important;
  border:1px solid rgba(255,255,255,.28)!important;
  backdrop-filter:blur(12px)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)!important;
  text-align:center!important;
}
.yanchi-v3-shell .yv3-quote-card h2,
.yanchi-v3-shell .yv3-hourly-quote h2{
  margin:0!important;
  color:#fff!important;
  display:block!important;
  font-size:clamp(12px,3.45vw,15px)!important;
  line-height:1.28!important;
  font-weight:850!important;
  letter-spacing:-.02em!important;
}
.yanchi-v3-shell .yv3-quote-card .yv3-quote-text,
.yanchi-v3-shell .yv3-hourly-quote .yv3-quote-text{
  color:#fff!important;
}
.yanchi-v3-shell .yv3-quote-card .yv3-quote-author,
.yanchi-v3-shell .yv3-hourly-quote .yv3-quote-author{
  display:inline!important;
  margin-left:5px!important;
  color:rgba(255,255,255,.76)!important;
  font-size:.66em!important;
  font-weight:750!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
}
.yanchi-v3-shell .yv3-quote-card p,
.yanchi-v3-shell .yv3-quote-card .yv3-ghost-btn,
.yanchi-v3-shell .yv3-ghost-btn{
  display:none!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-hero{min-height:112px!important;padding-left:10px!important;padding-right:10px!important;}
  .yanchi-v3-shell .yv3-quote-card,
  .yanchi-v3-shell .yv3-hourly-quote{min-height:46px!important;padding:9px 10px!important;margin-top:8px!important;}
  .yanchi-v3-shell .yv3-quote-card h2,
  .yanchi-v3-shell .yv3-hourly-quote h2{font-size:11.5px!important;line-height:1.25!important;}
}
@media(min-width:760px){
  .yanchi-v3-shell .yv3-hero{min-height:130px!important;padding:16px 22px 18px!important;}
  .yanchi-v3-shell .yv3-quote-card,
  .yanchi-v3-shell .yv3-hourly-quote{max-width:640px!important;margin:12px auto 0!important;min-height:58px!important;}
}

/* v3.4.16 — increase top empowerment banner height by one-third */
.yanchi-v3-shell .yv3-hero{
  min-height:157px!important;
  padding:calc(17px + env(safe-area-inset-top)) 12px 19px!important;
  border-radius:0 0 30px 30px!important;
}
.yanchi-v3-shell .yv3-quote-card,
.yanchi-v3-shell .yv3-hourly-quote{
  min-height:67px!important;
  margin-top:13px!important;
  padding:13px 14px!important;
  border-radius:21px!important;
}
.yanchi-v3-shell .yv3-quote-card h2,
.yanchi-v3-shell .yv3-hourly-quote h2{
  font-size:clamp(13px,3.75vw,16px)!important;
  line-height:1.32!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-hero{min-height:149px!important;padding-left:10px!important;padding-right:10px!important;}
  .yanchi-v3-shell .yv3-quote-card,
  .yanchi-v3-shell .yv3-hourly-quote{min-height:61px!important;padding:12px 11px!important;margin-top:11px!important;}
  .yanchi-v3-shell .yv3-quote-card h2,
  .yanchi-v3-shell .yv3-hourly-quote h2{font-size:12px!important;line-height:1.3!important;}
}
@media(min-width:760px){
  .yanchi-v3-shell .yv3-hero{min-height:173px!important;padding:21px 22px 24px!important;}
  .yanchi-v3-shell .yv3-quote-card,
  .yanchi-v3-shell .yv3-hourly-quote{max-width:640px!important;margin:16px auto 0!important;min-height:77px!important;padding:16px 20px!important;}
}

/* v3.4.17 — larger banner, top Help, footer Talk, no header language selector */
.yanchi-v3-shell .yv3-lang,
.yanchi-v3-shell .yv3-language-select{
  display:none!important;
}
.yanchi-v3-shell .yv3-hero{
  min-height:210px!important;
  padding:calc(22px + env(safe-area-inset-top)) 12px 25px!important;
  border-radius:0 0 34px 34px!important;
}
.yanchi-v3-shell .yv3-toprow{
  grid-template-columns:minmax(120px,1fr) 36px 82px 36px!important;
  gap:7px!important;
}
.yanchi-v3-shell .yv3-top-help-btn{
  width:36px!important;
  height:36px!important;
  min-height:36px!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.55)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.92)!important;
  color:var(--yv3-purple-900)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:none!important;
  cursor:pointer!important;
}
.yanchi-v3-shell .yv3-top-help-btn svg{
  width:18px!important;
  height:18px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2.25!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.yanchi-v3-shell .yv3-quote-card,
.yanchi-v3-shell .yv3-hourly-quote{
  min-height:90px!important;
  margin-top:18px!important;
  padding:18px 17px!important;
  border-radius:25px!important;
}
.yanchi-v3-shell .yv3-quote-card h2,
.yanchi-v3-shell .yv3-hourly-quote h2{
  font-size:clamp(14px,4vw,17px)!important;
  line-height:1.36!important;
}
.yanchi-v3-shell .yv3-quote-card .yv3-quote-author,
.yanchi-v3-shell .yv3-hourly-quote .yv3-quote-author{
  font-size:.58em!important;
  opacity:.82!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-hero{min-height:199px!important;padding-left:10px!important;padding-right:10px!important;}
  .yanchi-v3-shell .yv3-toprow{grid-template-columns:minmax(98px,1fr) 34px 72px 34px!important;gap:5px!important;}
  .yanchi-v3-shell .yv3-top-help-btn{width:34px!important;height:34px!important;min-height:34px!important;border-radius:16px!important;}
  .yanchi-v3-shell .yv3-points-pill{padding-left:4px!important;padding-right:4px!important;}
  .yanchi-v3-shell .yv3-quote-card,
  .yanchi-v3-shell .yv3-hourly-quote{min-height:82px!important;padding:15px 12px!important;margin-top:15px!important;}
  .yanchi-v3-shell .yv3-quote-card h2,
  .yanchi-v3-shell .yv3-hourly-quote h2{font-size:12.8px!important;line-height:1.34!important;}
}
@media(min-width:760px){
  .yanchi-v3-shell .yv3-hero{min-height:230px!important;padding:28px 22px 31px!important;}
  .yanchi-v3-shell .yv3-toprow{grid-template-columns:minmax(180px,1fr) 44px 150px 44px!important;gap:14px!important;}
  .yanchi-v3-shell .yv3-top-help-btn{width:44px!important;height:44px!important;min-height:44px!important;border-radius:18px!important;}
  .yanchi-v3-shell .yv3-quote-card,
  .yanchi-v3-shell .yv3-hourly-quote{max-width:640px!important;margin:22px auto 0!important;min-height:104px!important;padding:21px 24px!important;}
}


/* v3.4.19 — remove journal page reflection toggle */
.yanchi-v3-shell .yv3-hero{
  min-height:158px!important;
  padding:calc(17px + env(safe-area-inset-top)) 12px 19px!important;
  border-radius:0 0 30px 30px!important;
}
.yanchi-v3-shell .yv3-quote-card,
.yanchi-v3-shell .yv3-hourly-quote{
  min-height:68px!important;
  margin-top:14px!important;
  padding:14px 13px!important;
  border-radius:21px!important;
}
.yanchi-v3-shell .yv3-quote-card h2,
.yanchi-v3-shell .yv3-hourly-quote h2{
  font-size:clamp(13px,3.75vw,16px)!important;
  line-height:1.32!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-hero{min-height:149px!important;padding-left:10px!important;padding-right:10px!important;}
  .yanchi-v3-shell .yv3-quote-card,
  .yanchi-v3-shell .yv3-hourly-quote{min-height:62px!important;padding:12px 11px!important;margin-top:11px!important;}
  .yanchi-v3-shell .yv3-quote-card h2,
  .yanchi-v3-shell .yv3-hourly-quote h2{font-size:12px!important;line-height:1.3!important;}
}
@media(min-width:760px){
  .yanchi-v3-shell .yv3-hero{min-height:173px!important;padding:21px 22px 24px!important;}
  .yanchi-v3-shell .yv3-quote-card,
  .yanchi-v3-shell .yv3-hourly-quote{max-width:640px!important;margin:16px auto 0!important;min-height:78px!important;padding:16px 20px!important;}
}

/* v3.4.20 Deep Reflection optional mirror */
.yv3-shadow-need-reflection{
  margin-top:14px!important;
  border-style:dashed!important;
}
.yv3-shadow-reflection-options{
  margin-top:10px!important;
  padding:14px!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.74)!important;
}
.yv3-mode-dark .yv3-shadow-reflection-options{
  background:rgba(255,255,255,.07)!important;
}
.yv3-shadow-section .yv3-save-row{
  gap:10px!important;
  flex-wrap:wrap!important;
}
.yv3-shadow-section .yv3-save-row .yv3-primary,
.yv3-shadow-section .yv3-save-row .yv3-secondary{
  flex:1 1 150px!important;
}

/* v3.4.21 monetization/subscription structure */
.yanchi-v3-shell .yv3-ad-card{
  border:1px dashed color-mix(in srgb,var(--yv3-purple-600) 38%,transparent)!important;
  background:color-mix(in srgb,var(--yv3-card) 86%,var(--yv3-card-tint) 14%)!important;
  box-shadow:none!important;
  padding:13px 15px!important;
}
.yanchi-v3-shell .yv3-ad-card small{
  display:inline-flex!important;
  padding:4px 9px!important;
  border-radius:999px!important;
  color:var(--yv3-purple-800)!important;
  background:color-mix(in srgb,var(--yv3-purple-300) 24%,transparent)!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.02em!important;
  text-transform:uppercase!important;
}
.yanchi-v3-shell .yv3-ad-card p{
  margin:8px 0 0!important;
  color:var(--yv3-muted)!important;
  font-size:13px!important;
}
.yanchi-v3-shell .yv3-profile-plan-card{
  background:linear-gradient(180deg,color-mix(in srgb,var(--yv3-card) 88%,var(--yv3-purple-300) 12%),var(--yv3-card))!important;
}
.yanchi-v3-shell .yv3-profile-plan-card h2{
  margin:0 0 6px!important;
  font-size:20px!important;
}
.yanchi-v3-shell .yv3-profile-plan-card p{
  margin:0 0 14px!important;
  color:var(--yv3-ink-soft)!important;
  font-size:13px!important;
}
.yanchi-v3-shell .yv3-profile-plan-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin:12px 0 14px!important;
}
.yanchi-v3-shell .yv3-profile-plan-grid>div{
  min-width:0!important;
  padding:12px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.72)!important;
  border:1px solid color-mix(in srgb,var(--yv3-line) 78%,transparent)!important;
}
.yanchi-v3-shell .yv3-profile-plan-grid strong{
  display:block!important;
  font-size:18px!important;
  color:var(--yv3-purple-800)!important;
  line-height:1.05!important;
}
.yanchi-v3-shell .yv3-profile-plan-grid span{
  display:block!important;
  margin-top:5px!important;
  color:var(--yv3-muted)!important;
  font-size:11px!important;
  line-height:1.2!important;
}
.yanchi-v3-shell .yv3-subscription-screen{
  gap:12px!important;
}
.yanchi-v3-shell .yv3-subscription-hero{
  background:linear-gradient(180deg,color-mix(in srgb,var(--yv3-card) 86%,var(--yv3-purple-300) 14%),var(--yv3-card))!important;
}
.yanchi-v3-shell .yv3-plan-stack{
  display:grid!important;
  gap:12px!important;
}
.yanchi-v3-shell .yv3-plan-card{
  padding:17px!important;
  border-radius:24px!important;
  border:1px solid var(--yv3-line)!important;
  background:var(--yv3-card)!important;
  box-shadow:var(--yv3-shadow-sm)!important;
}
.yanchi-v3-shell .yv3-plan-card.current{
  border-color:color-mix(in srgb,var(--yv3-purple-600) 45%,var(--yv3-line))!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--yv3-card) 86%,var(--yv3-purple-300) 14%),var(--yv3-card))!important;
}
.yanchi-v3-shell .yv3-plan-card.soon{
  opacity:.88!important;
}
.yanchi-v3-shell .yv3-plan-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:10px!important;
}
.yanchi-v3-shell .yv3-plan-head h3{
  margin:0!important;
  font-size:19px!important;
  line-height:1.1!important;
}
.yanchi-v3-shell .yv3-plan-head span{
  flex:none!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  color:#fff!important;
  background:linear-gradient(135deg,var(--yv3-purple-800),var(--yv3-purple-600))!important;
  font-size:11px!important;
  font-weight:800!important;
}
.yanchi-v3-shell .yv3-plan-card.soon .yv3-plan-head span{
  color:var(--yv3-purple-800)!important;
  background:color-mix(in srgb,var(--yv3-purple-300) 22%,transparent)!important;
}
.yanchi-v3-shell .yv3-plan-card ul{
  margin:0 0 14px 0!important;
  padding:0!important;
  list-style:none!important;
  display:grid!important;
  gap:7px!important;
}
.yanchi-v3-shell .yv3-plan-card li{
  position:relative!important;
  padding-left:20px!important;
  font-size:13px!important;
  color:var(--yv3-ink-soft)!important;
}
.yanchi-v3-shell .yv3-plan-card li:before{
  content:'✓'!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  color:var(--yv3-purple-700)!important;
  font-weight:900!important;
}
.yanchi-v3-shell .yv3-plan-card button.disabled,
.yanchi-v3-shell .yv3-plan-card button:disabled{
  cursor:default!important;
  opacity:.76!important;
}
.yanchi-v3-shell .yv3-points-explain h2{
  margin:0 0 8px!important;
  font-size:18px!important;
}
.yanchi-v3-shell .yv3-points-explain p{
  margin:0 0 12px!important;
  color:var(--yv3-ink-soft)!important;
  font-size:13px!important;
}
.yanchi-v3-shell .yv3-usage-list{
  display:grid!important;
  gap:8px!important;
  margin:12px 0!important;
}
.yanchi-v3-shell .yv3-usage-list span{
  display:flex!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:11px 12px!important;
  border-radius:16px!important;
  background:color-mix(in srgb,var(--yv3-card-soft) 82%,var(--yv3-purple-300) 18%)!important;
  color:var(--yv3-ink-soft)!important;
  font-size:13px!important;
}
.yanchi-v3-shell .yv3-free-limit{
  display:inline-flex!important;
  padding:9px 11px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--yv3-purple-300) 18%,transparent)!important;
  color:var(--yv3-purple-800)!important;
  font-weight:800!important;
}
.yanchi-v3-shell.yv3-mode-dark .yv3-profile-plan-grid>div,
.yanchi-v3-shell.yv3-mode-dark .yv3-ad-card,
.yanchi-v3-shell.yv3-mode-dark .yv3-plan-card,
.yanchi-v3-shell.yv3-mode-dark .yv3-usage-list span{
  background:rgba(255,255,255,.07)!important;
  border-color:rgba(255,255,255,.12)!important;
}
@media(max-width:360px){
  .yanchi-v3-shell .yv3-profile-plan-grid{grid-template-columns:1fr 1fr!important;gap:8px!important;}
  .yanchi-v3-shell .yv3-profile-plan-grid>div{padding:10px!important;}
  .yanchi-v3-shell .yv3-plan-card{padding:15px!important;}
}

/* v3.4.22 profile photo and data import/export polish */
.yanchi-v3-shell .yv3-profile-photo-wrap{
  width:94px;
  height:94px;
  margin:0 auto 12px;
  border-radius:32px;
  padding:4px;
  background:linear-gradient(135deg,rgba(255,255,255,.96),var(--yv3-card-tint));
  box-shadow:0 12px 28px color-mix(in srgb,var(--yv3-purple-900) 14%,transparent),inset 0 0 0 1px rgba(255,255,255,.72);
}
.yanchi-v3-shell .yv3-profile-photo,
.yanchi-v3-shell .yv3-profile-photo-empty{
  width:100%!important;
  height:100%!important;
  border-radius:28px!important;
  object-fit:cover;
  display:grid;
  place-items:center;
  font-size:34px!important;
  font-weight:900;
}
.yanchi-v3-shell .yv3-profile-photo-actions{
  justify-content:center;
  flex-wrap:wrap;
  margin-top:10px;
}
.yanchi-v3-shell .yv3-file-button{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  user-select:none;
}
.yanchi-v3-shell .yv3-data-transfer-card{
  margin-top:14px;
  padding:14px;
  border-radius:22px;
  background:linear-gradient(145deg,#fff,var(--yv3-card-tint));
  border:1px solid color-mix(in srgb,var(--yv3-purple-300) 36%,transparent);
  box-shadow:0 10px 24px color-mix(in srgb,var(--yv3-purple-900) 8%,transparent);
}
.yanchi-v3-shell .yv3-data-transfer-card h3{
  margin:0 0 6px;
  font-size:15px;
  font-weight:900;
  color:var(--yv3-purple-900);
}
.yanchi-v3-shell .yv3-data-transfer-card p{
  margin:0 0 12px;
  font-size:12.5px;
  line-height:1.45;
  color:var(--yv3-text-soft);
}
.yanchi-v3-shell .yv3-settings-data-card{
  margin:16px 0 12px;
}
.yanchi-v3-shell .yv3-profile-btn{
  overflow:hidden;
}
.yanchi-v3-shell .yv3-profile-btn img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:inherit;
  display:block;
}
.yanchi-v3-shell.yv3-mode-dark .yv3-data-transfer-card{
  background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.04));
  border-color:rgba(255,255,255,.12);
}
.yanchi-v3-shell.yv3-mode-dark .yv3-data-transfer-card h3{
  color:#fff;
}


/* v3.4.24 — auth theme color chooser, no ad placeholders, and +25% banner height */
.yanchi-v3-shell .yv3-ad-card{
  display:none!important;
}
.yanchi-v3-shell .yv3-hero{
  min-height:198px!important;
  padding:calc(21px + env(safe-area-inset-top)) 12px 24px!important;
  border-radius:0 0 34px 34px!important;
}
.yanchi-v3-shell .yv3-quote-card,
.yanchi-v3-shell .yv3-hourly-quote{
  min-height:85px!important;
  margin-top:17px!important;
  padding:17px 15px!important;
  border-radius:25px!important;
}
.yanchi-v3-shell .yv3-quote-card h2,
.yanchi-v3-shell .yv3-hourly-quote h2{
  font-size:clamp(13.5px,3.95vw,17px)!important;
  line-height:1.34!important;
}
.yanchi-v3-shell .yv3-auth-theme-card{
  margin:16px 0 6px!important;
  padding:12px!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.66)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)!important;
}
.yanchi-v3-shell .yv3-auth-theme-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-bottom:10px!important;
}
.yanchi-v3-shell .yv3-auth-theme-head strong{
  font-size:13px!important;
  font-weight:900!important;
  color:var(--yv3-purple-900)!important;
}
.yanchi-v3-shell .yv3-auth-theme-head small{
  max-width:150px!important;
  text-align:right!important;
  font-size:10px!important;
  line-height:1.25!important;
  color:var(--yv3-muted)!important;
}
.yanchi-v3-shell .yv3-auth-theme-swatches{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:7px!important;
}
.yanchi-v3-shell .yv3-auth-color{
  appearance:none!important;
  border:1px solid rgba(95,25,63,.12)!important;
  background:rgba(255,255,255,.78)!important;
  border-radius:16px!important;
  padding:7px 3px 6px!important;
  min-height:54px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  cursor:pointer!important;
  box-shadow:none!important;
  color:var(--yv3-ink-soft)!important;
}
.yanchi-v3-shell .yv3-auth-color span{
  width:20px!important;
  height:20px!important;
  border-radius:999px!important;
  display:block!important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.72),0 4px 10px rgba(40,10,24,.12)!important;
}
.yanchi-v3-shell .yv3-auth-color small{
  font-size:8.2px!important;
  line-height:1.05!important;
  font-weight:800!important;
  color:inherit!important;
}
.yanchi-v3-shell .yv3-auth-color.active{
  border-color:var(--yv3-purple-600)!important;
  background:color-mix(in srgb,var(--yv3-purple-300) 22%,#fff 78%)!important;
  color:var(--yv3-purple-900)!important;
  transform:translateY(-1px)!important;
}
.yanchi-v3-shell .yv3-auth-color-pink span{background:linear-gradient(135deg,#a61d6c,#f768ad,#ffc0df)!important;}
.yanchi-v3-shell .yv3-auth-color-purple span{background:linear-gradient(135deg,#35105f,#8c52ff,#dbc8ff)!important;}
.yanchi-v3-shell .yv3-auth-color-peach span{background:linear-gradient(135deg,#904339,#ee8b69,#ffd4bf)!important;}
.yanchi-v3-shell .yv3-auth-color-blue-indigo span{background:linear-gradient(135deg,#14215c,#3b82f6,#bfdbfe)!important;}
.yanchi-v3-shell .yv3-auth-color-yellow span{background:linear-gradient(135deg,#6f3d05,#e8a51d,#fde68a)!important;}
.yanchi-v3-shell .yv3-auth-theme-card p{
  margin:9px 0 0!important;
  font-size:10.8px!important;
  line-height:1.35!important;
  color:var(--yv3-muted)!important;
}
.yanchi-v3-shell.yv3-mode-dark .yv3-auth-theme-card{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.13)!important;
}
.yanchi-v3-shell.yv3-mode-dark .yv3-auth-color{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.14)!important;
}
.yanchi-v3-shell.yv3-mode-dark .yv3-auth-color.active{
  background:rgba(255,255,255,.14)!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-hero{min-height:186px!important;padding-left:10px!important;padding-right:10px!important;}
  .yanchi-v3-shell .yv3-quote-card,
  .yanchi-v3-shell .yv3-hourly-quote{min-height:78px!important;padding:15px 12px!important;margin-top:15px!important;}
  .yanchi-v3-shell .yv3-quote-card h2,
  .yanchi-v3-shell .yv3-hourly-quote h2{font-size:12.8px!important;line-height:1.32!important;}
  .yanchi-v3-shell .yv3-auth-theme-swatches{gap:5px!important;}
  .yanchi-v3-shell .yv3-auth-color{min-height:50px!important;border-radius:14px!important;}
  .yanchi-v3-shell .yv3-auth-color small{font-size:7.6px!important;}
}
@media(min-width:760px){
  .yanchi-v3-shell .yv3-hero{min-height:216px!important;padding:26px 22px 30px!important;}
  .yanchi-v3-shell .yv3-quote-card,
  .yanchi-v3-shell .yv3-hourly-quote{max-width:640px!important;margin:20px auto 0!important;min-height:96px!important;padding:20px 24px!important;}
}


/* v3.4.24 — mobile home polish and testing daily limit
   - Match Deep Reflection dashboard to the other cards
   - Tighten dashboard container gaps / red marked spaces
   - Enlarge dashboard cards slightly while keeping the 2×2 layout clean
   - Center quote card vertically inside the banner */
.yanchi-v3-shell .yv3-hero{
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-height:198px!important;
  padding:calc(16px + env(safe-area-inset-top)) 14px 20px!important;
}
.yanchi-v3-shell .yv3-toprow{
  flex:0 0 auto!important;
}
.yanchi-v3-shell .yv3-quote-card,
.yanchi-v3-shell .yv3-hourly-quote{
  flex:0 0 auto!important;
  min-height:82px!important;
  margin:0!important;
  padding:16px 16px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.yanchi-v3-shell .yv3-quote-card h2,
.yanchi-v3-shell .yv3-hourly-quote h2{
  margin:0!important;
  text-align:center!important;
}
.yanchi-v3-shell .yv3-quote-author{
  font-size:.58em!important;
  opacity:.78!important;
  margin-left:5px!important;
  white-space:nowrap!important;
}
.yanchi-v3-shell .yv3-screen{
  gap:8px!important;
  padding-top:8px!important;
}
.yanchi-v3-shell .yv3-home-screen{
  gap:8px!important;
}
.yanchi-v3-shell .yv3-life-tools-first,
.yanchi-v3-shell .yv3-life-tools{
  padding:14px 13px 14px!important;
  margin-top:-2px!important;
  margin-bottom:2px!important;
  border-radius:24px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid,
.yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{
  gap:12px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card,
.yanchi-v3-shell .yv3-tool-card.yv3-planner-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-cycle-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-talk-dashboard{
  min-height:134px!important;
  padding:14px 13px!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 18% 12%,rgba(255,255,255,.22),transparent 26%),
    radial-gradient(circle at 95% 88%,color-mix(in srgb,var(--yv3-purple-300) 42%,transparent),transparent 38%),
    linear-gradient(145deg,var(--yv3-purple-900) 0%,var(--yv3-purple-700) 52%,var(--yv3-purple-500) 100%)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.28)!important;
  box-shadow:0 12px 24px color-mix(in srgb,var(--yv3-purple-900) 18%,transparent)!important;
}
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard .yv3-tool-icon{
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.22)!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-tool-icon{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  margin-bottom:13px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card small{
  font-size:9px!important;
  margin-bottom:7px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{
  font-size:15px!important;
  line-height:1.12!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-compact-text{
  font-size:11px!important;
  line-height:1.2!important;
  -webkit-line-clamp:2!important;
}
.yanchi-v3-shell .yv3-home-cta{
  margin:6px 0 8px!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-home-tool-grid,
  .yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{gap:9px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card{min-height:126px!important;padding:12px 10px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-tool-icon{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{font-size:13px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-compact-text{font-size:10px!important;}
}


/* v3.4.26 — final home spacing, quote centering, and dashboard parity */
.yanchi-v3-shell .yv3-hero{
  display:grid!important;
  grid-template-rows:auto 1fr!important;
  align-items:stretch!important;
  row-gap:10px!important;
  min-height:184px!important;
  padding:calc(14px + env(safe-area-inset-top)) 14px 14px!important;
  margin-bottom:0!important;
}
.yanchi-v3-shell .yv3-toprow{
  margin:0!important;
  align-self:start!important;
}
.yanchi-v3-shell .yv3-quote-card,
.yanchi-v3-shell .yv3-hourly-quote{
  align-self:center!important;
  justify-self:stretch!important;
  width:100%!important;
  max-width:100%!important;
  min-height:88px!important;
  margin:0 auto!important;
  padding:14px 16px!important;
}
.yanchi-v3-shell .yv3-quote-card h2,
.yanchi-v3-shell .yv3-hourly-quote h2{
  font-size:clamp(12px,3.8vw,20px)!important;
  line-height:1.34!important;
}
.yanchi-v3-shell .yv3-quote-author{
  font-size:.62em!important;
}
.yanchi-v3-shell .yv3-screen,
.yanchi-v3-shell .yv3-home-screen{
  gap:6px!important;
  padding-top:2px!important;
}
.yanchi-v3-shell .yv3-life-tools-first,
.yanchi-v3-shell .yv3-life-tools{
  margin-top:-8px!important;
  margin-bottom:0!important;
  padding:10px!important;
  border-radius:24px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid,
.yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{
  gap:8px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card,
.yanchi-v3-shell .yv3-tool-card.yv3-planner-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-cycle-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-talk-dashboard,
.yanchi-v3-shell.yv3-theme-pink .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-purple .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-peach .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-yellow .yv3-tool-card.yv3-inner-dashboard{
  min-height:144px!important;
  padding:14px 12px!important;
  border-radius:21px!important;
  background:
    radial-gradient(circle at 18% 12%,rgba(255,255,255,.22),transparent 26%),
    radial-gradient(circle at 95% 88%,color-mix(in srgb,var(--yv3-purple-300) 42%,transparent),transparent 38%),
    linear-gradient(145deg,var(--yv3-purple-900) 0%,var(--yv3-purple-700) 52%,var(--yv3-purple-500) 100%)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.28)!important;
  box-shadow:0 12px 24px color-mix(in srgb,var(--yv3-purple-900) 18%,transparent)!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-tool-icon,
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard .yv3-tool-icon{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  margin-bottom:12px!important;
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.22)!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card small,
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong,
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-compact-text{
  color:#fff!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card small{
  font-size:9px!important;
  margin-bottom:6px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{
  font-size:15px!important;
  line-height:1.1!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-compact-text{
  font-size:11px!important;
  line-height:1.2!important;
  -webkit-line-clamp:2!important;
}
.yanchi-v3-shell .yv3-home-cta{
  margin:6px 0 8px!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-hero{min-height:176px!important;padding:calc(12px + env(safe-area-inset-top)) 12px 12px!important;row-gap:8px!important;}
  .yanchi-v3-shell .yv3-quote-card,
  .yanchi-v3-shell .yv3-hourly-quote{min-height:80px!important;padding:12px 12px!important;}
  .yanchi-v3-shell .yv3-life-tools-first,
  .yanchi-v3-shell .yv3-life-tools{margin-top:-6px!important;padding:8px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid,
  .yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{gap:7px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card{min-height:136px!important;padding:12px 10px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{font-size:13px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-compact-text{font-size:10px!important;}
}


/* v3.4.26 — natural container spacing and compact dashboard cards
   Priority: clean mobile rhythm, no cramped overlaps, no excessive empty blocks. */
.yanchi-v3-shell .yv3-screen,
.yanchi-v3-shell .yv3-home-screen{
  gap:12px!important;
  padding-top:8px!important;
}
.yanchi-v3-shell .yv3-hero{
  margin-bottom:4px!important;
}
.yanchi-v3-shell .yv3-life-tools-first,
.yanchi-v3-shell .yv3-life-tools{
  margin-top:0!important;
  margin-bottom:4px!important;
  padding:12px!important;
  border-radius:24px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid,
.yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{
  gap:10px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card,
.yanchi-v3-shell .yv3-tool-card.yv3-planner-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-cycle-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-talk-dashboard,
.yanchi-v3-shell.yv3-theme-pink .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-purple .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-peach .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-yellow .yv3-tool-card.yv3-inner-dashboard{
  min-height:108px!important;
  padding:12px 12px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-compact-text,
.yanchi-v3-shell .yv3-tool-card .yv3-compact-text{
  display:none!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-tool-icon,
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard .yv3-tool-icon{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  margin-bottom:9px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card small{
  font-size:8px!important;
  letter-spacing:.14em!important;
  margin-bottom:5px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{
  font-size:14px!important;
  line-height:1.14!important;
}
.yanchi-v3-shell .yv3-home-cta{
  margin:4px 0 6px!important;
}
.yanchi-v3-shell .yv3-recent-card{
  margin-top:0!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-screen,
  .yanchi-v3-shell .yv3-home-screen{gap:10px!important;padding-top:7px!important;}
  .yanchi-v3-shell .yv3-life-tools-first,
  .yanchi-v3-shell .yv3-life-tools{padding:10px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid,
  .yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{gap:8px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card{min-height:102px!important;padding:10px 9px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-tool-icon{width:31px!important;height:31px!important;min-width:31px!important;min-height:31px!important;margin-bottom:8px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{font-size:12.5px!important;}
}


/* v3.4.27 — larger dashboard gaps, active tab visibility, and compact date sort */
.yanchi-v3-shell .yv3-home-tool-grid,
.yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{
  gap:20px!important;
}
.yanchi-v3-shell .yv3-tabs{
  scroll-behavior:auto!important;
  scroll-padding-inline:12px!important;
}
.yanchi-v3-shell .yv3-tab.active{
  scroll-margin-inline:12px!important;
}
.yanchi-v3-shell .yv3-recent-card{
  padding:14px!important;
}
.yanchi-v3-shell .yv3-search-row{
  margin-bottom:10px!important;
}
.yanchi-v3-shell .yv3-sort-panel{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  padding:10px 12px!important;
  margin:0 0 14px!important;
  border:1px solid var(--yv3-line)!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--yv3-card-tint) 70%,#fff 30%)!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-sort-label{
  margin:0!important;
  color:var(--yv3-purple-900)!important;
  font-size:13px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.yanchi-v3-shell .yv3-sort-date-input{
  min-height:44px!important;
  height:44px!important;
  padding:9px 12px!important;
  border-radius:14px!important;
  font-size:14px!important;
  color:var(--yv3-ink)!important;
  background:#fff!important;
}
.yanchi-v3-shell .yv3-sort-panel + .yv3-input{
  margin-top:0!important;
}
.yanchi-v3-shell .yv3-recent-card > .yv3-input[data-field="search"]{
  margin-bottom:14px!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-home-tool-grid,
  .yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{
    gap:16px!important;
  }
  .yanchi-v3-shell .yv3-recent-card{padding:12px!important;}
  .yanchi-v3-shell .yv3-sort-panel{gap:9px!important;padding:9px 10px!important;}
  .yanchi-v3-shell .yv3-sort-date-input{font-size:13px!important;}
}


/* v3.4.28 — centered, wider, lower-profile Home dashboards */
.yanchi-v3-shell .yv3-life-tools-first,
.yanchi-v3-shell .yv3-life-tools{
  padding:8px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid,
.yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{
  width:calc(100% + 8px)!important;
  margin-inline:-4px!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card,
.yanchi-v3-shell .yv3-tool-card.yv3-planner-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-cycle-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-talk-dashboard{
  min-height:82px!important;
  height:82px!important;
  padding:8px 8px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-tool-icon,
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard .yv3-tool-icon{
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  min-height:28px!important;
  margin:0 auto 5px!important;
  font-size:14px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card small{
  width:100%!important;
  margin:0 0 3px!important;
  text-align:center!important;
  font-size:7.5px!important;
  line-height:1.05!important;
  letter-spacing:.12em!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{
  width:100%!important;
  margin:0!important;
  text-align:center!important;
  font-size:13px!important;
  line-height:1.08!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-life-tools-first,
  .yanchi-v3-shell .yv3-life-tools{padding:7px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid,
  .yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{
    width:calc(100% + 6px)!important;
    margin-inline:-3px!important;
    gap:7px!important;
  }
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card{
    min-height:78px!important;
    height:78px!important;
    padding:7px 6px!important;
  }
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card .yv3-tool-icon{
    width:26px!important;
    height:26px!important;
    min-width:26px!important;
    min-height:26px!important;
    margin-bottom:4px!important;
  }
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card small{font-size:7px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card strong{font-size:12px!important;}
}


/* v3.4.29 — force exact Deep Reflection dashboard visual parity */
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-pink .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-purple .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-peach .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-yellow .yv3-tool-card.yv3-inner-dashboard{
  background:
    radial-gradient(circle at 18% 12%,rgba(255,255,255,.22),transparent 26%),
    radial-gradient(circle at 95% 88%,rgba(255,255,255,.16),transparent 38%),
    linear-gradient(140deg,var(--yv3-purple-900) 0%,var(--yv3-purple-700) 55%,var(--yv3-purple-500) 100%)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.24)!important;
  box-shadow:0 12px 24px color-mix(in srgb,var(--yv3-purple-900) 18%,transparent)!important;
  filter:none!important;
  opacity:1!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card.yv3-inner-dashboard:after,
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard:after{
  background:rgba(255,255,255,.16)!important;
}
.yanchi-v3-shell .yv3-home-tool-grid .yv3-tool-card.yv3-inner-dashboard .yv3-tool-icon,
.yanchi-v3-shell .yv3-tool-card.yv3-inner-dashboard .yv3-tool-icon{
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.20)!important;
  box-shadow:none!important;
}

/* v3.4.30 — uniform dashboards, install guide, top-scroll navigation, and mobile polish */
.yanchi-v3-shell .yv3-home-tool-grid,
.yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{
  grid-auto-rows:84px!important;
  align-items:stretch!important;
  gap:10px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform,
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-pink .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-purple .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-peach .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-yellow .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard{
  box-sizing:border-box!important;
  height:84px!important;
  min-height:84px!important;
  max-height:84px!important;
  block-size:84px!important;
  min-block-size:84px!important;
  max-block-size:84px!important;
  align-self:stretch!important;
  overflow:hidden!important;
  padding:8px 8px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  background:
    radial-gradient(circle at 18% 12%,rgba(255,255,255,.22),transparent 26%),
    radial-gradient(circle at 98% 98%,rgba(255,255,255,.16),transparent 38%),
    linear-gradient(140deg,var(--yv3-purple-900) 0%,var(--yv3-purple-700) 55%,var(--yv3-purple-500) 100%)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.24)!important;
  box-shadow:0 10px 22px color-mix(in srgb,var(--yv3-purple-900) 17%,transparent)!important;
  opacity:1!important;
  filter:none!important;
}
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform:after,
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard:after{
  width:86px!important;
  height:86px!important;
  right:-32px!important;
  bottom:-36px!important;
  background:rgba(255,255,255,.16)!important;
}
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform .yv3-tool-icon,
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard .yv3-tool-icon{
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  min-height:26px!important;
  margin:0 auto 4px!important;
  border-radius:10px!important;
  font-size:13px!important;
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform small{
  width:100%!important;
  margin:0 0 3px!important;
  color:rgba(255,255,255,.82)!important;
  font-size:7.3px!important;
  line-height:1!important;
  letter-spacing:.14em!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform strong{
  width:100%!important;
  margin:0!important;
  color:#fff!important;
  font-size:13px!important;
  line-height:1.08!important;
  text-align:center!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
}

/* Banner rhythm */
.yanchi-v3-shell .yv3-hero{
  min-height:176px!important;
  padding:calc(13px + env(safe-area-inset-top)) 14px 14px!important;
  display:grid!important;
  grid-template-rows:auto 1fr!important;
  row-gap:9px!important;
  align-items:stretch!important;
}
.yanchi-v3-shell .yv3-toprow{margin:0!important;align-self:start!important;}
.yanchi-v3-shell .yv3-quote-card,
.yanchi-v3-shell .yv3-hourly-quote{
  min-height:82px!important;
  height:auto!important;
  margin:0!important;
  padding:13px 15px!important;
  align-self:center!important;
}
.yanchi-v3-shell .yv3-quote-card h2,
.yanchi-v3-shell .yv3-hourly-quote h2{
  font-size:clamp(13px,3.7vw,18px)!important;
  line-height:1.3!important;
  letter-spacing:-.025em!important;
}
.yanchi-v3-shell .yv3-quote-author{font-size:.58em!important;margin-left:5px!important;}

/* Natural page rhythm and typography */
.yanchi-v3-shell .yv3-screen{
  gap:14px!important;
  padding:12px var(--yv3-page-pad) 24px!important;
}
.yanchi-v3-shell .yv3-screen > .yv3-card,
.yanchi-v3-shell .yv3-card{
  padding:17px!important;
  border-radius:25px!important;
}
.yanchi-v3-shell .yv3-section-title{
  font-size:clamp(25px,7vw,31px)!important;
  line-height:1.06!important;
  margin-bottom:12px!important;
}
.yanchi-v3-shell .yv3-card h2:not(.yv3-section-title){
  font-size:clamp(19px,5.4vw,24px)!important;
  line-height:1.16!important;
  margin:16px 0 10px!important;
}
.yanchi-v3-shell .yv3-card h3{font-size:16px!important;line-height:1.22!important;margin:12px 0 7px!important;}
.yanchi-v3-shell .yv3-subtitle,
.yanchi-v3-shell .yv3-card p,
.yanchi-v3-shell .yv3-card li{
  font-size:13.5px!important;
  line-height:1.5!important;
}
.yanchi-v3-shell .yv3-input,
.yanchi-v3-shell .yv3-select,
.yanchi-v3-shell .yv3-textarea{font-size:15px!important;}

/* Recent Journals spacing */
.yanchi-v3-shell .yv3-recent-card{
  padding:14px 14px 20px!important;
}
.yanchi-v3-shell .yv3-recent-card .yv3-search-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 84px!important;
  align-items:center!important;
  gap:10px!important;
  margin:0 0 10px!important;
}
.yanchi-v3-shell .yv3-recent-card .yv3-pill-title,
.yanchi-v3-shell .yv3-recent-card .yv3-sort-btn{
  min-height:48px!important;
  height:48px!important;
  margin:0!important;
  font-size:15px!important;
}
.yanchi-v3-shell .yv3-recent-card > .yv3-input{
  min-height:52px!important;
  margin:10px 0 12px!important;
}
.yanchi-v3-shell .yv3-recent-card .yv3-sort-panel{
  margin:0 0 12px!important;
  padding:10px!important;
  border-radius:18px!important;
}
.yanchi-v3-shell .yv3-recent-card .yv3-journal-list{display:grid!important;gap:10px!important;}
.yanchi-v3-shell .yv3-recent-card .yv3-empty{margin-top:10px!important;padding:24px 16px!important;}

/* Install entry and guide */
.yanchi-v3-shell .yv3-install-entry{
  width:100%!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 20px!important;
  align-items:center!important;
  gap:11px!important;
  margin:0 0 16px!important;
  padding:13px!important;
  text-align:left!important;
  border:1px solid color-mix(in srgb,var(--yv3-purple-600) 18%,var(--yv3-line))!important;
  background:linear-gradient(135deg,var(--yv3-card),var(--yv3-card-tint))!important;
  border-radius:19px!important;
  color:var(--yv3-ink)!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-install-entry-icon{
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,var(--yv3-purple-900),var(--yv3-purple-500))!important;
  color:#fff!important;
  font-size:20px!important;
  font-weight:900!important;
}
.yanchi-v3-shell .yv3-install-entry h3{margin:0 0 3px!important;font-size:15px!important;color:var(--yv3-ink)!important;}
.yanchi-v3-shell .yv3-install-entry p{margin:0!important;font-size:12px!important;line-height:1.35!important;color:var(--yv3-muted)!important;}
.yanchi-v3-shell .yv3-install-screen{padding-bottom:34px!important;}
.yanchi-v3-shell .yv3-install-hero .yv3-help-badge{margin-top:12px!important;}
.yanchi-v3-shell .yv3-install-now{width:100%!important;margin-top:14px!important;}
.yanchi-v3-shell .yv3-install-status{
  margin-top:14px!important;
  padding:12px 14px!important;
  border-radius:16px!important;
  background:color-mix(in srgb,var(--yv3-success) 10%,#fff)!important;
  color:var(--yv3-success)!important;
  font-size:13px!important;
  font-weight:850!important;
}
.yanchi-v3-shell .yv3-install-platform-head{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin-bottom:10px!important;
}
.yanchi-v3-shell .yv3-install-platform-head > span{
  min-width:62px!important;
  padding:7px 9px!important;
  border-radius:999px!important;
  text-align:center!important;
  background:var(--yv3-card-tint)!important;
  color:var(--yv3-purple-800)!important;
  font-size:10px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.yanchi-v3-shell .yv3-install-platform-head h2{margin:0!important;font-size:19px!important;}
.yanchi-v3-shell .yv3-install-notes h2{margin-top:0!important;}

/* Legal/help/settings content readability */
.yanchi-v3-shell .yv3-legal-card{padding:18px!important;}
.yanchi-v3-shell .yv3-legal-section{margin-top:18px!important;}
.yanchi-v3-shell .yv3-legal-section h2{font-size:19px!important;margin-bottom:8px!important;}
.yanchi-v3-shell .yv3-legal-section li{margin-bottom:7px!important;}
.yanchi-v3-shell .yv3-compliance-links{gap:8px!important;margin-top:16px!important;}
.yanchi-v3-shell .yv3-compliance-links button{min-height:50px!important;padding:12px 14px!important;}
.yanchi-v3-shell .yv3-help-services{display:grid!important;gap:12px!important;}
.yanchi-v3-shell .yv3-help-service{padding:14px!important;border-radius:19px!important;}
.yanchi-v3-shell .yv3-help-service-head{gap:10px!important;}
.yanchi-v3-shell .yv3-help-step{gap:10px!important;}
.yanchi-v3-shell .yv3-help-step p{margin:0!important;}
.yanchi-v3-shell .yv3-settings-data-card{margin-top:16px!important;}

@media(max-width:380px){
  .yanchi-v3-shell .yv3-home-tool-grid,
  .yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{grid-auto-rows:80px!important;gap:8px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform,
  .yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard{
    height:80px!important;min-height:80px!important;max-height:80px!important;block-size:80px!important;min-block-size:80px!important;max-block-size:80px!important;
  }
  .yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform strong{font-size:12px!important;}
  .yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform small{font-size:6.8px!important;}
  .yanchi-v3-shell .yv3-hero{min-height:168px!important;padding-inline:12px!important;}
  .yanchi-v3-shell .yv3-quote-card,
  .yanchi-v3-shell .yv3-hourly-quote{min-height:76px!important;padding:12px!important;}
  .yanchi-v3-shell .yv3-screen{gap:12px!important;padding-top:10px!important;}
  .yanchi-v3-shell .yv3-screen > .yv3-card,
  .yanchi-v3-shell .yv3-card{padding:15px!important;}
  .yanchi-v3-shell .yv3-recent-card .yv3-search-row{grid-template-columns:minmax(0,1fr) 76px!important;gap:8px!important;}
  .yanchi-v3-shell .yv3-install-entry{grid-template-columns:38px minmax(0,1fr) 18px!important;padding:11px!important;}
  .yanchi-v3-shell .yv3-install-entry-icon{width:38px!important;height:38px!important;}
}


/* v3.4.31 — airier dashboard grid with 20% lower cards
   Keep text and icon scale unchanged while improving card/content proportion. */
.yanchi-v3-shell .yv3-home-tool-grid,
.yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{
  grid-auto-rows:68px!important;
  column-gap:16px!important;
  row-gap:16px!important;
  align-items:stretch!important;
}
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform,
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-pink .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-purple .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-peach .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-blue-indigo .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard,
.yanchi-v3-shell.yv3-theme-yellow .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard{
  height:68px!important;
  min-height:68px!important;
  max-height:68px!important;
  block-size:68px!important;
  min-block-size:68px!important;
  max-block-size:68px!important;
  padding:5px 7px!important;
  justify-content:center!important;
}
/* Preserve the existing content scale exactly. */
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform .yv3-tool-icon,
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard .yv3-tool-icon{
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  min-height:26px!important;
  margin:0 auto 3px!important;
  font-size:13px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform small,
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard small{
  font-size:7.3px!important;
  line-height:1!important;
  margin:0 0 2px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform strong,
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard strong{
  font-size:13px!important;
  line-height:1.05!important;
  margin:0!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-home-tool-grid,
  .yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{
    grid-auto-rows:66px!important;
    column-gap:13px!important;
    row-gap:13px!important;
  }
  .yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform,
  .yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard{
    height:66px!important;
    min-height:66px!important;
    max-height:66px!important;
    block-size:66px!important;
    min-block-size:66px!important;
    max-block-size:66px!important;
    padding:4px 5px!important;
  }
}


/* v3.4.32 — edge-aligned dashboard grid without outer card */
.yanchi-v3-shell .yv3-home-screen > .yv3-life-tools-first,
.yanchi-v3-shell .yv3-home-screen > .yv3-life-tools{
  width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.yanchi-v3-shell .yv3-home-tool-grid,
.yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{
  width:100%!important;
  margin:0!important;
  padding:0!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-auto-rows:76px!important;
  column-gap:16px!important;
  row-gap:16px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform,
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard{
  width:100%!important;
  height:76px!important;
  min-height:76px!important;
  max-height:76px!important;
  block-size:76px!important;
  min-block-size:76px!important;
  max-block-size:76px!important;
  padding:6px 8px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform .yv3-tool-icon,
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard .yv3-tool-icon{
  margin:0 auto 6px!important;
}
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform small,
.yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard small{
  margin:0 0 2px!important;
}
.yanchi-v3-shell .yv3-home-cta{
  width:100%!important;
  margin:16px 0 10px!important;
}
.yanchi-v3-shell .yv3-home-cta .yv3-primary{
  width:100%!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-home-tool-grid,
  .yanchi-v3-shell .yv3-grid.two.yv3-tool-grid.yv3-home-tool-grid{
    grid-auto-rows:74px!important;
    column-gap:13px!important;
    row-gap:13px!important;
  }
  .yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform,
  .yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard{
    height:74px!important;
    min-height:74px!important;
    max-height:74px!important;
    block-size:74px!important;
    min-block-size:74px!important;
    max-block-size:74px!important;
    padding:5px 6px!important;
  }
  .yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-dashboard-uniform .yv3-tool-icon,
  .yanchi-v3-shell .yv3-home-tool-grid > .yv3-tool-card.yv3-inner-dashboard .yv3-tool-icon{
    margin-bottom:5px!important;
  }
}

/* v3.4.33 — uncropped featured journal images and 10-image detail gallery */
.yanchi-v3-shell .yv3-journal-card .yv3-featured-thumb{
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  margin:14px 14px 0!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:transparent!important;
  display:block!important;
}
.yanchi-v3-shell .yv3-journal-card .yv3-featured-thumb img{
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
  border-radius:18px!important;
  background:var(--yv3-card-soft)!important;
}
.yanchi-v3-shell .yv3-journal-card .yv3-featured-thumb .yv3-thumb-fallback{
  display:none!important;
}
.yanchi-v3-shell .yv3-journal-card .yv3-featured-thumb.yv3-broken-thumb{
  min-height:180px!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(135deg,var(--yv3-card-tint),var(--yv3-bg2))!important;
}
.yanchi-v3-shell .yv3-journal-card .yv3-featured-thumb.yv3-broken-thumb .yv3-thumb-fallback{
  display:grid!important;
}
.yanchi-v3-shell .yv3-detail-gallery{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:start!important;
  margin:14px 0 20px!important;
}
.yanchi-v3-shell .yv3-detail-image{
  margin:0!important;
  min-width:0!important;
  border-radius:16px!important;
  overflow:hidden!important;
  border:1px solid var(--yv3-line)!important;
  background:var(--yv3-card-soft)!important;
}
.yanchi-v3-shell .yv3-detail-gallery .yv3-detail-image img,
.yanchi-v3-shell .yv3-detail-gallery img{
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
  border:0!important;
  border-radius:16px!important;
  background:var(--yv3-card-soft)!important;
}
.yanchi-v3-shell .yv3-upload-limit{
  display:inline-flex!important;
  align-items:center!important;
  min-height:38px!important;
  padding:8px 12px!important;
  border-radius:999px!important;
  background:var(--yv3-card-tint)!important;
  color:var(--yv3-purple-700)!important;
  font-size:12px!important;
  font-weight:900!important;
}
.yanchi-v3-shell .yv3-image-preview{
  position:relative!important;
}
.yanchi-v3-shell .yv3-featured-label{
  position:absolute!important;
  left:7px!important;
  bottom:7px!important;
  padding:5px 8px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.94)!important;
  color:var(--yv3-purple-700)!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:950!important;
  box-shadow:0 4px 12px rgba(90,14,58,.12)!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-journal-card .yv3-featured-thumb{margin:11px 11px 0!important;border-radius:15px!important;}
  .yanchi-v3-shell .yv3-journal-card .yv3-featured-thumb img{border-radius:15px!important;}
  .yanchi-v3-shell .yv3-detail-gallery{gap:9px!important;}
  .yanchi-v3-shell .yv3-detail-image,
  .yanchi-v3-shell .yv3-detail-gallery .yv3-detail-image img{border-radius:13px!important;}
}


/* v3.4.34 — compact Recent Journals cards, pagination, and top-aligned detail page */
.yanchi-v3-shell .yv3-recent-card > .yv3-input[data-field="search"]{
  margin-bottom:6px!important;
}
.yanchi-v3-shell .yv3-recent-card .yv3-blog-list,
.yanchi-v3-shell .yv3-recent-card .yv3-journal-list{
  margin-top:4px!important;
  gap:10px!important;
}
.yanchi-v3-shell .yv3-recent-card .yv3-journal-card{
  margin:0!important;
  padding:0!important;
}
.yanchi-v3-shell .yv3-recent-card .yv3-journal-card .yv3-featured-thumb{
  margin:6px 6px 0!important;
  border-radius:16px!important;
}
.yanchi-v3-shell .yv3-recent-card .yv3-journal-card .yv3-featured-thumb img{
  border-radius:16px!important;
}
.yanchi-v3-shell .yv3-recent-card .yv3-journal-card .yv3-list-body{
  padding:8px 10px 10px!important;
  gap:7px!important;
}
.yanchi-v3-shell .yv3-recent-card .yv3-journal-card h3{
  margin:0!important;
}
.yanchi-v3-shell .yv3-show-more-journals{
  width:100%!important;
  min-height:46px!important;
  margin:4px 0 0!important;
  padding:11px 16px!important;
  border:1px solid color-mix(in srgb,var(--yv3-purple-600) 24%,var(--yv3-line))!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,var(--yv3-card),var(--yv3-card-tint))!important;
  color:var(--yv3-purple-700)!important;
  font-size:14px!important;
  font-weight:900!important;
  box-shadow:none!important;
}
.yanchi-v3-shell .yv3-journal-detail-screen{
  padding-top:0!important;
}
.yanchi-v3-shell .yv3-journal-detail-card{
  padding:16px!important;
}
.yanchi-v3-shell .yv3-journal-detail-card > .yv3-section-title{
  margin-top:0!important;
}
.yanchi-v3-shell .yv3-journal-detail-card > .yv3-subtitle{
  margin-top:6px!important;
}
@media(max-width:380px){
  .yanchi-v3-shell .yv3-recent-card .yv3-journal-card .yv3-featured-thumb{margin:5px 5px 0!important;border-radius:14px!important;}
  .yanchi-v3-shell .yv3-recent-card .yv3-journal-card .yv3-featured-thumb img{border-radius:14px!important;}
  .yanchi-v3-shell .yv3-recent-card .yv3-journal-card .yv3-list-body{padding:7px 8px 9px!important;}
  .yanchi-v3-shell .yv3-journal-detail-card{padding:14px!important;}
}
