/* BYP Balance: photo/icon-first, swipeable, audio-accessible, zero AI usage. */
#bypLifeView.byp-day-active .byp-day{max-width:850px;margin:auto}
#bypLifeView .byp-balance-card{
 display:block;overflow:hidden;max-width:680px;margin:0 auto;border-radius:25px;
 border:1px solid rgba(185,94,255,.45);background:#0b0c14;
 box-shadow:0 16px 50px #0007;touch-action:pan-y;
}
#bypLifeView .byp-balance-art{
 position:relative;width:100%;height:clamp(210px,39vw,335px);display:grid;place-items:center;overflow:hidden;
 background:radial-gradient(circle at 50% 28%,rgba(247,38,192,.32),transparent 45%),
 linear-gradient(125deg,#301449 0%,#160d32 48%,#061c43 100%);
}
#bypLifeView .byp-balance-card.g .byp-balance-art{
 background:radial-gradient(circle at 50% 25%,rgba(70,239,139,.29),transparent 48%),linear-gradient(130deg,#17241e,#092727,#081628);
}
#bypLifeView .byp-balance-card.e .byp-balance-art{
 background:radial-gradient(circle at 50% 25%,rgba(13,206,242,.32),transparent 47%),linear-gradient(120deg,#0b2442,#111739,#2c0b42);
}
#bypLifeView .byp-balance-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(1.1)}
#bypLifeView .byp-balance-icon{position:relative;z-index:1;font-size:clamp(104px,14vw,156px);line-height:1;filter:drop-shadow(0 14px 22px #0009)}
#bypLifeView .byp-balance-icon.has-photo{position:absolute;bottom:11px;left:13px;font-size:35px;padding:8px;border:1px solid #fff4;border-radius:16px;background:#090e17b9}
#bypLifeView .byp-balance-body.byp-day-content{
 display:block;min-height:0;border:0;box-shadow:none;padding:clamp(16px,3vw,28px);background:#0a0c13;
}
#bypLifeView .byp-balance-card .byp-balance-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
#bypLifeView .byp-balance-top>span{font:850 11px/1.3 system-ui;letter-spacing:.12em;color:#d3c4ee}
#bypLifeView .byp-balance-top [data-balance-hear]{
 display:flex;align-items:center;justify-content:center;min-width:95px;min-height:45px;padding:7px 14px;
 border:1px solid #6ddde9;border-radius:24px;background:#103846;color:white;font:900 11px system-ui;cursor:pointer
}
#bypLifeView .byp-balance-body h1{font-size:clamp(31px,6vw,52px);line-height:1.09;letter-spacing:-.045em;margin:14px 0 7px;color:#fff}
#bypLifeView .byp-balance-body>p{font-size:clamp(16px,2.2vw,19px);line-height:1.5;color:#f0e8f9;max-width:600px;margin:0}
#bypLifeView .byp-balance-nav{display:grid;grid-template-columns:52px 1fr 52px;align-items:center;gap:10px;margin-top:14px}
#bypLifeView .byp-balance-nav>span{text-align:center;font:800 11px system-ui;color:#dfd6e8;letter-spacing:.08em}
#bypLifeView .byp-balance-nav button{min-width:48px;min-height:48px;border-radius:16px;border:1px solid #ffffff4d;background:#2c1c43;color:#fff;font:900 29px system-ui;cursor:pointer}
#bypLifeView .byp-balance-card .byp-day-choice{margin:16px 0 0}
#bypLifeView .byp-balance-card [data-day-do],#bypLifeView .byp-balance-card [data-day-pick]{
 width:100%;min-height:56px;border-radius:15px;font-size:14px;letter-spacing:.03em;
}
#bypLifeView .byp-balance-card .byp-day-taskbox{margin-top:15px;padding-top:13px}
#bypLifeView .byp-balance-card .byp-day-check{min-height:58px;align-items:center}
#bypLifeView .byp-balance-more{margin-top:15px;border-radius:14px;border:1px solid #ffffff29;padding:12px 15px;background:#ffffff07}
#bypLifeView .byp-balance-more summary{color:#dcd1e7;font:850 12px system-ui;cursor:pointer}
#bypLifeView .byp-balance-more .byp-day-choice{margin:11px 0}
#bypLifeView .byp-balance-advance{margin-top:12px;min-height:50px;width:100%;border-radius:12px}
#bypLifeView .byp-balance-remain{margin-top:12px!important;color:#a2eec0!important;font-weight:700}
#bypLifeView .byp-balance-map{
 margin:18px 0 16px;border:1px solid #ffffff27;border-radius:19px;
 background:linear-gradient(130deg,#121125,#090e19);padding:18px 15px 20px
}
#bypLifeView .byp-balance-map>b{display:block;text-align:center;font-size:16px;letter-spacing:.08em;color:#fff}
#bypLifeView .byp-balance-map>small{display:block;text-align:center;color:#aeabc3;font-size:11px;margin-top:4px}
#bypLifeView .byp-balance-trunk{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:15px}
#bypLifeView .byp-balance-trunk button{display:grid;justify-items:center;gap:7px;min-height:84px;padding:9px 6px;
 border-radius:15px;border:1px solid #ffffff33;background:#151122;color:white;font:900 10px system-ui;cursor:pointer}
#bypLifeView .byp-balance-trunk button span{font-size:30px;line-height:1.3}
#bypLifeView .byp-balance-trunk [data-balance-map-major=wellness]{border-color:#db5cbb}
#bypLifeView .byp-balance-trunk [data-balance-map-major=growth]{border-color:#52b37b}
#bypLifeView .byp-balance-trunk [data-balance-map-major=enjoyment]{border-color:#51b0f8}
#bypLifeView .byp-balance-trunk button[aria-expanded=true]{background:#3a174d}
#bypLifeView .byp-balance-branches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:13px;padding-top:13px;border-top:1px solid #ffffff21}
#bypLifeView .byp-balance-branches button{display:grid;justify-items:center;gap:4px;align-content:center;min-height:76px;padding:7px 6px;
 border:1px solid #ffffff2b;border-radius:12px;background:#171827;color:white;cursor:pointer}
#bypLifeView .byp-balance-branches button span{font-size:28px}
#bypLifeView .byp-balance-branches button b{font:800 11px/1.25 system-ui;word-break:normal}
#bypLifeView .byp-balance-map button:focus-visible,#bypLifeView .byp-balance-nav button:focus-visible{outline:3px solid #6aeaff;outline-offset:2px}
@media(max-width:620px){
 #bypLifeView.byp-day-active .byp-day{padding:9px 10px 55px}
 #bypLifeView .byp-balance-art{height:clamp(185px,58vw,245px)}
 #bypLifeView .byp-balance-icon{font-size:107px}
 #bypLifeView .byp-balance-card{border-radius:20px}
 #bypLifeView .byp-balance-map{padding:12px 9px 15px}
 #bypLifeView .byp-balance-trunk{gap:5px}
 #bypLifeView .byp-balance-trunk button{font-size:9px;min-height:76px}
 #bypLifeView .byp-balance-branches{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
}
@media(prefers-reduced-motion:reduce){#bypLifeView .byp-balance-card *{scroll-behavior:auto!important;animation:none!important}}

/* Complex topics: Twin delivers real registered products, not scripted chat. */
#bypLifeView .bl-balance-solutions{max-width:870px;margin:0 auto;padding-bottom:45px}
#bypLifeView .bl-balance-entry,#bypLifeView .bl-twin-delivery{
  display:grid;gap:18px;padding:clamp(19px,3.5vw,30px);
  margin:20px 0 16px;border:1px solid #a957e85e;border-radius:24px;
  background:radial-gradient(circle at 0 0,#ff2ec419,transparent 35%),linear-gradient(120deg,#150c23,#0a1623);
  color:#fff
}
#bypLifeView .bl-balance-entry{grid-template-columns:88px 1fr;align-items:center}
#bypLifeView .bl-balance-entry-mark{font-size:58px;line-height:1;text-align:center}
#bypLifeView .bl-balance-entry h2,#bypLifeView .bl-twin-delivery h2{
  font-size:clamp(27px,4vw,38px);letter-spacing:-.04em;line-height:1.1;margin:8px 0 10px
}
#bypLifeView .bl-balance-entry p,#bypLifeView .bl-twin-delivery p{font-size:14px;line-height:1.55;color:#e1dbea;margin:0 0 15px}
#bypLifeView .bl-balance-entry .bl-btn{min-height:52px;font-size:13px}
#bypLifeView .bl-twin-delivery-head{display:flex;gap:17px;align-items:center}
#bypLifeView .bl-twin-delivery-portrait{position:relative;width:100px;height:108px;flex:none;border:2px solid #ac6fff;border-radius:20px;overflow:hidden;background:linear-gradient(#3f2461,#152b4d)}
#bypLifeView .bl-twin-silhouette-head{position:absolute;top:8px;left:33%;height:34px;width:34px;border-radius:50%;background:#d5beed}
#bypLifeView .bl-twin-silhouette-body{position:absolute;bottom:-8px;left:10%;height:65px;width:80%;border-radius:46% 46% 0 0;background:#3653a6}
#bypLifeView .bl-twin-delivery-portrait img{position:absolute;top:72px;left:40%;width:21px;height:21px;object-fit:contain}
#bypLifeView .bl-twin-delivery-head .bl-priority-label{color:#a7ebfa;font-weight:900;font-size:10px;letter-spacing:.12em}
#bypLifeView .bl-twin-delivery-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
#bypLifeView .bl-twin-delivery-action{
  border:1px solid #9b67de7d;border-radius:15px;background:#281b40;color:white;text-align:left;
  padding:16px 13px;min-height:67px;font:800 12px/1.35 system-ui;cursor:pointer
}
#bypLifeView .bl-twin-delivery-action:hover,#bypLifeView .bl-twin-delivery-action:focus-visible{outline:2px solid #33c9fb;background:#38215a}
#bypLifeView .bl-twin-delivery-status{margin:0!important;font-size:11px!important;color:#c6bed5!important}
#bypLifeView .bl-twin-all-options{margin-top:14px;border:1px solid #ffffff35;border-radius:17px;background:#0b0d15;overflow:hidden}
#bypLifeView .bl-twin-all-options>summary{padding:17px 18px;cursor:pointer;font:900 12px system-ui;color:#ede4fa}
#bypLifeView .bl-twin-all-content{padding:14px;display:grid;gap:15px}
#bypLifeView .bl-twin-all-content .bl-primary-wrap{margin:0}
#bypLifeView .bl-balance-solutions [data-bl-dynamic] .bl-list-group{margin:11px 0 16px}
@media(max-width:620px){
 #bypLifeView .bl-balance-entry{grid-template-columns:1fr;text-align:center}
 #bypLifeView .bl-twin-delivery-head{align-items:flex-start}
 #bypLifeView .bl-twin-delivery-portrait{width:75px;height:92px}
 #bypLifeView .bl-twin-delivery-portrait img{top:58px;left:37%;height:20px;width:20px}
 #bypLifeView .bl-twin-silhouette-head{width:27px;height:27px}
 #bypLifeView .bl-twin-delivery-actions{grid-template-columns:1fr}
}

/* Each illustrated task can be read aloud independently. */
#bypLifeView .byp-balance-task-row{display:grid;grid-template-columns:minmax(0,1fr) 51px;gap:7px;align-items:stretch}
#bypLifeView .byp-balance-task-row .byp-day-check{align-items:center;margin:0}
#bypLifeView .byp-balance-option-symbol{display:inline-block!important;font-size:26px;line-height:1.2;flex:none}
#bypLifeView .byp-balance-option-voice{min-width:49px;min-height:56px;border-radius:13px;border:1px solid #71dbeb;
 background:#133844;color:#fff;font-size:19px;cursor:pointer}
#bypLifeView .byp-balance-option-voice:focus-visible{outline:3px solid #fff;outline-offset:2px}

/* Founder-approved polish: genuine photo-first cards; compact completed goals. */
#bypLifeView .byp-balance-art::after{content:"";position:absolute;inset:35% 0 0;pointer-events:none;
 background:linear-gradient(0deg,rgba(7,3,20,.42),transparent)}
#bypLifeView .byp-balance-photo{z-index:0;filter:saturate(1.17) contrast(1.05);object-position:50% 38%}
#bypLifeView .byp-balance-icon.has-photo{z-index:2;font-size:28px;left:12px;bottom:11px;
 background:linear-gradient(135deg,#26163be0,#0d2558e0);backdrop-filter:blur(5px)}
#bypLifeView .byp-balance-art.byp-balance-art-missing .byp-balance-icon{left:auto;bottom:auto;
 position:relative;font-size:clamp(104px,15vw,150px);background:transparent;border:0}
#bypLifeView .byp-balance-complete-chip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;
 max-width:680px;margin:8px auto 15px;padding:10px 14px;border:1px solid #64ce9b;border-radius:15px;
 background:linear-gradient(110deg,#103b32,#12152b);color:#fff}
#bypLifeView .byp-balance-complete-chip>span{display:grid;place-items:center;background:#18a66a;
 width:34px;height:34px;flex:none;border-radius:50%;font-weight:950}
#bypLifeView .byp-balance-complete-chip b{font:800 13px/1.25 system-ui;flex:1}
#bypLifeView .byp-balance-complete-chip button{font:850 10px system-ui;padding:9px 11px;
 color:#fff;background:#214a50;border:1px solid #91e1df;border-radius:10px;cursor:pointer}
/* One clear invitation on the existing homepage; entry tiles live on /pop/. */
#entryView .byp-pop-guide-entry{max-width:960px;margin:14px auto 15px;padding:0 15px}
#entryView .byp-pop-guide-entry a{display:flex;gap:13px;align-items:center;justify-content:space-between;
 min-height:76px;padding:18px clamp(16px,3vw,27px);border:2px solid #f725bd;border-radius:20px;
 color:#fff;text-decoration:none;background:linear-gradient(108deg,#321048 0%,#5b1468 34%,#1129ac 100%);
 box-shadow:0 8px 32px #a5299933}
#entryView .byp-pop-guide-entry strong{display:block;font:900 clamp(17px,2.6vw,24px)/1.2 system-ui}
#entryView .byp-pop-guide-entry small{display:block;color:#f0d8fa;font:650 12px/1.35 system-ui;margin-top:5px}
#entryView .byp-pop-guide-entry .byp-pop-arrow{font-size:28px;flex:none}
