/* The profile shares the scene's palette; numbers are observations, not a rating. */
.living-opening .hp-balance{position:absolute;top:max(8px,var(--safe-top));left:14px;z-index:5;display:flex;align-items:center;gap:7px;height:44px;padding:0 12px 0 9px;border:1px solid #f1dbaf35;border-radius:24px;background:#25302ad9;backdrop-filter:blur(10px);color:#fff3d8;font-size:14px;font-weight:500;white-space:nowrap;font-variant-numeric:tabular-nums}
.hp-balance svg{width:20px;height:20px;fill:none;stroke:#dec28d;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.living-opening .lo-heading{top:calc(max(8px,var(--safe-top)) + 52px);left:18px}
.living-opening .lo-topshade{height:145px;background:linear-gradient(#17201fa6,transparent)}
.living-opening .lo-top-controls{left:auto;right:10px;gap:3px;top:max(8px,var(--safe-top))}
.living-opening .hp-trigger{padding:3px;border:1px solid #f1dbaf8c;background:#28322bd9}
.hp-avatar{display:block;width:36px;height:36px;border-radius:50%;overflow:hidden;position:relative;background:#475048}
.hp-avatar img{position:absolute;max-width:none;width:292.6%;height:auto;left:-96.3%;top:0}
.living-opening .hp-dialog{position:fixed;inset:auto 0 0;box-sizing:border-box;margin:0 auto;width:min(calc(100vw - 16px),calc(100dvh * .667));max-width:none;max-height:calc(100dvh - max(8px,var(--safe-top)));padding:0;border:1px solid #e9d6af45;border-bottom:0;border-radius:28px 28px 0 0;background:linear-gradient(150deg,#303a32fa,#202b25fc);color:#fbf4e7;font:inherit;overflow:hidden;box-shadow:0 -16px 60px #0c171b70;outline:none}
.hp-dialog::backdrop{background:#111c216b;backdrop-filter:blur(2px)}
.hp-dialog[open]{animation:hp-enter .24s cubic-bezier(.2,.7,.2,1)}
.hp-sheet{padding:18px 20px max(18px,var(--safe-bottom));display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.hp-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.hp-header>div{min-width:0}.hp-eyebrow{display:block;font-size:9px;font-weight:500;letter-spacing:.16em;line-height:1.4;color:#d6c29c}
.hp-header h2{font-size:23px;font-weight:450;line-height:1.15;margin:4px 0 0;overflow-wrap:anywhere}
.living-opening .hp-close{flex:none;width:44px;height:44px;min-height:44px;border:1px solid #e8d9bd26;border-radius:50%;background:#ffffff07;color:#f6e5c6;font-size:27px;font-weight:300}
.hp-dream{padding:12px 14px;border:1px solid #e6ce9d28;border-radius:16px;background:linear-gradient(110deg,#dbc18b12,transparent)}
.hp-dream p{font-size:20px;font-weight:400;line-height:1.25;letter-spacing:-.02em;margin:6px 0 0;overflow-wrap:anywhere}
.hp-guide{min-width:0}.hp-period{font-size:11px;letter-spacing:.04em;color:#bcbfb4;margin:0 0 8px}
.hp-tabs{display:grid;grid-template-columns:1fr 1fr;padding:3px;border:1px solid #e8d9bd24;border-radius:15px;background:#11231a33;gap:3px;margin-bottom:10px}
.living-opening .hp-tabs button{min-height:44px;border:0;border-radius:11px;background:transparent;color:#c9cabe;font-size:13px;padding:6px;line-height:1.25}
.living-opening .hp-tabs [aria-selected=true]{background:#d9c19920;color:#fff2d7;box-shadow:inset 0 0 0 1px #e5cfaa44}
.hp-content{position:relative;min-height:264px}
.hp-list{display:grid;grid-template-columns:minmax(0,1fr)}
.living-opening .hp-stat{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;min-height:44px;padding:8px 3px;border:0;border-bottom:1px solid #e9dfc713;background:transparent;color:#eeeede;text-align:left;font-size:15px;line-height:1.25;border-radius:5px}
.hp-stat-end{display:flex;align-items:center;gap:9px;flex:none}.hp-stat strong{font-size:17px;font-weight:500;font-variant-numeric:tabular-nums;color:#f1d6a7;min-width:15px;text-align:center}.hp-info{border:1px solid #c6c4b14d;color:#b9bba9;width:14px;height:14px;display:grid;place-items:center;border-radius:50%;font:10px Georgia,serif}
.hp-definition{padding:15px 3px}.hp-definition h3{font-size:22px;font-weight:400;margin:10px 0;outline:none}.hp-definition p{font-size:16px;line-height:1.5;color:#e1e3d5;margin:0 0 12px}.living-opening .hp-definition-back{border:1px solid #e6ce9d45;background:#dac49c10;border-radius:14px;padding:10px 15px;font-size:14px;min-height:44px}
.hp-open .lo-thought,.hp-open .lo-dream,.hp-open .lo-visual{animation-play-state:paused}
@keyframes hp-enter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@media(max-width:350px){.living-opening .hp-balance{left:10px;padding-right:10px;font-size:13px;gap:5px}.living-opening .lo-top-controls{right:7px;gap:0}.hp-sheet{padding:12px 14px max(12px,var(--safe-bottom));gap:10px}.hp-header h2{font-size:21px}.hp-dream p{font-size:18px}.hp-stat{font-size:14px!important}}
@media(max-height:650px) and (orientation:portrait){
 .hp-sheet{gap:10px;padding-top:12px}.hp-dream{padding:9px 12px}.hp-dream p{font-size:18px;margin-top:4px}.hp-header h2{font-size:20px}
 .hp-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px}.living-opening .hp-stat{font-size:13px;min-height:52px;padding:7px 2px}.hp-stat-end{gap:4px}.hp-info{display:none}.hp-content{min-height:164px}.hp-tabs{margin-bottom:7px}.hp-period{margin-bottom:5px}.hp-definition{padding:5px 2px}.hp-definition h3{font-size:19px;margin:6px 0}.hp-definition p{font-size:14px;line-height:1.35;margin-bottom:8px}
}
@media(orientation:landscape) and (max-height:600px){
 .living-opening .lo-top-controls{left:calc(48% - 142px);right:auto;gap:2px;top:max(6px,var(--safe-top))}
 .living-opening .hp-balance{top:max(6px,var(--safe-top));left:12px;padding:0 8px;font-size:12px;gap:4px}
 .living-opening .lo-heading{top:calc(max(6px,var(--safe-top)) + 49px);left:16px}.living-opening .lo-heading h2{font-size:16px}
 .living-opening .hp-dialog{width:min(800px,calc(100vw - 20px));max-height:calc(100dvh - max(8px,var(--safe-top)));border-radius:23px 23px 0 0}
 .hp-sheet{grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);grid-template-rows:auto 1fr;gap:12px 20px;padding:14px 18px max(14px,var(--safe-bottom))}
 .hp-header{grid-column:1;align-items:flex-start;padding-right:0;position:relative}.hp-header>div{padding-right:48px}.hp-header h2{font-size:20px}.living-opening .hp-close{position:absolute;top:0;right:0}
 .hp-dream{grid-column:1;align-self:start;padding:10px 12px}.hp-dream p{font-size:18px}.hp-guide{grid-column:2;grid-row:1 / 3;padding-top:3px}.hp-period{margin-right:0;margin-bottom:12px}
 .hp-tabs{margin-bottom:6px}.hp-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px}.hp-content{min-height:164px}.living-opening .hp-stat{font-size:13px;min-height:52px;padding:6px 2px}.hp-stat-end{gap:4px}.hp-info{display:none}
 .hp-definition{padding:4px 2px}.hp-definition h3{font-size:18px;margin:6px 0}.hp-definition p{font-size:14px;line-height:1.35;margin-bottom:8px}
}
@media(prefers-reduced-motion:reduce){.hp-dialog[open]{animation:none}}

@media(orientation:landscape) and (max-height:360px){
 .hp-sheet{padding-top:10px;gap:10px 18px}.hp-period{line-height:1.2;margin-bottom:6px}.hp-tabs{margin-bottom:4px}.hp-list{gap:2px 10px}.hp-content{min-height:148px}.living-opening .hp-stat{min-height:48px}.hp-header h2{font-size:18px}.hp-definition .hp-eyebrow{display:none}.hp-definition h3{margin-top:0}.hp-definition p{font-size:13px;line-height:1.3}.hp-dream p{font-size:16px}
}
