/* Approved v28 copy and proportions. Loaded after the existing phone layer. */
html[data-mode="journey"][data-intake="welcome"] .psy-welcome-layout{
 grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);
 gap:clamp(28px,4vw,64px);align-items:start;min-height:0;
}
html[data-mode="journey"][data-intake="welcome"] .psy-welcome-copy{
 padding-bottom:0;min-width:0;display:grid;
 grid-template-columns:minmax(0,1fr) fit-content(48%);
 /* v34: retain the story-before-entry order; recover space through spacing. */
 grid-template-areas:"eyebrow eyebrow" "title title" "intro intro" "tags tags" "label label" "name start" "hint hint" "guide guide";
 column-gap:14px;
}
/* v30: keep the native name input and start action together from first paint.
   The neutral nickname div has no box; its label/input/hint share this grid. */
html[data-mode="journey"][data-intake="welcome"] .psy-welcome-copy>.psy-eyebrow{grid-area:eyebrow;margin-bottom:12px}
html[data-mode="journey"][data-intake="welcome"] .psy-welcome-copy>h1{grid-area:title}
html[data-mode="journey"][data-intake="welcome"] .psy-welcome-copy>.psy-intro{grid-area:intro}
html[data-mode="journey"][data-intake="welcome"] .psy-welcome-copy>.wisdom-tags{grid-area:tags}
html[data-mode="journey"][data-intake="welcome"] .psy-welcome-copy>.welcome-guide{grid-area:guide}
html[data-mode="journey"][data-intake="welcome"] .psy-nickname{display:contents}
html[data-mode="journey"][data-intake="welcome"] .psy-nickname label{grid-area:label;margin:14px 0 6px}
html[data-mode="journey"][data-intake="welcome"] .psy-nickname input{
 grid-area:name;min-width:0;max-width:100%;min-height:52px;align-self:stretch;
}
html[data-mode="journey"][data-intake="welcome"] .psy-nickname small{grid-area:hint;margin-top:5px}
html[data-mode="journey"][data-intake="welcome"] .psy-welcome .psy-controls{
 grid-area:start;display:flex;align-items:stretch;min-width:0;margin:0;gap:0;
}
html[data-mode="journey"][data-intake="welcome"] .psy-welcome .psy-controls .primary{
 width:100%;min-width:0;min-height:52px;justify-content:center;
 padding:12px 18px;line-height:1.5;text-align:center;white-space:normal;overflow-wrap:anywhere;
}
html[data-mode="journey"][data-intake="welcome"] .psy-welcome h1{
 font-size:clamp(34px,3.5vw,49px);line-height:1.35;max-width:100%;
 letter-spacing:.015em;text-wrap:balance;overflow-wrap:break-word;
}
html[data-mode="journey"][data-intake="welcome"] .psy-welcome .psy-intro{
 font-size:15px;line-height:1.7;white-space:pre-line;max-width:38rem;
 color:#d2c8bc;margin:14px 0 0;text-shadow:none;
}
.psy-welcome .wisdom-tags:empty,.psy-welcome .welcome-guide:empty{display:none}
html[data-mode="journey"] .psy-welcome-art:has(.oraclys-orbit-home){
 /* v32: lift the whole square scene, including its empty upper orbit space. */
 width:100%;max-width:700px;align-self:start;margin:clamp(-56px,-4vw,-28px) auto 0;
}
.oraclys-orbit-home .oraclys-crystal-core{width:46%;filter:drop-shadow(-12px 18px 24px #000b)}
.oraclys-orbit-home .oraclys-crystal-core .earth-canvas{filter:saturate(.85) contrast(1.18) brightness(1.03)}
.oraclys-orbit-home .oraclys-crystal-glass{
 background:radial-gradient(ellipse at 69% 22%,#f6f8ff9c 0%,#d9e6ff38 5%,transparent 20%),radial-gradient(ellipse at 78% 34%,#b8d4ff16,transparent 40%),radial-gradient(ellipse at 22% 82%,#09051765,transparent 53%);
 box-shadow:inset -2px 3px 5px #d9e9ff80,inset 12px -14px 24px #02030da3,inset 1px -1px 3px #c5a6e073,0 0 18px #adc9ef1a;
}
.oraclys-orbit-home .oraclys-orbit-node{--node-size:clamp(40px,4.5vw,60px)}
.oraclys-orbit-home .oraclys-orbit-hint{font-size:11px;color:#c0b0c8}
.journey-guidance .journey-beacon:not(:disabled):not([aria-disabled="true"]){
 --journey-glow-rest:inset 0 0 12px #fff0c833,0 4px 16px #06040a30,0 0 0 1px #b8894c8c,0 0 16px 2px #edc77b40;
 --journey-glow-bright:inset 0 0 22px #fff3cf99,0 5px 20px #06040a38,0 0 0 2px #dca64bb3,0 0 28px 6px #e8b9648c,0 0 48px 10px #f2ca7d38;
 box-shadow:var(--journey-glow-rest);
 animation:journey-breathe 2.4s ease-in-out infinite;
}
@keyframes journey-breathe{
 0%,100%{box-shadow:var(--journey-glow-rest)}
 50%{box-shadow:var(--journey-glow-bright)}
}
/* Hover/focus holds a clear highlight instead of freezing an arbitrary dim frame. */
.journey-guidance .journey-beacon:not(:disabled):not([aria-disabled="true"]):is(:hover,:focus-visible){animation:none;box-shadow:var(--journey-glow-bright)}
/* v36: complete the birth form where the fields end, inside the same panel. */
.guided-screen[data-guide-key="birth"] .journey-birth-actions{
 display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;margin-top:16px;
}
.guided-screen[data-guide-key="birth"] .journey-birth-actions>.primary{
 display:flex;align-items:center;justify-content:center;gap:10px;
 background:linear-gradient(110deg,#ead2a8,#c7a578);color:#28202f;
 border:1px solid #ecd8b4;border-radius:12px;font-weight:600;
 min-width:180px;max-width:100%;min-height:48px;margin:0;padding:14px 24px;
 font-size:15px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;
}
.guided-screen[data-guide-key="birth"] .journey-birth-actions>.birth-secondary{margin:0;text-align:left}
html[data-mode="journey"]:not([data-intake="welcome"]) .guided-screen[data-guide-key="birth"] .guide-dock{
 display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 20px;
}
html[data-mode="journey"]:not([data-intake="welcome"]) .guided-screen[data-guide-key="birth"] .guide-dock>.secondary{width:auto;max-width:100%}
.journey-free-action{margin:24px 0 28px;padding:24px 26px;border:1px solid #b9a17966;border-radius:14px;background:#f2ece2;color:#44384a}
.guide-panel .journey-free-action h3{margin:0 0 10px;color:#49344d;font-size:20px;line-height:1.5}
.guide-panel .journey-free-action p{margin:0;color:#514354;font-size:16px;line-height:1.85}
.oraclys-veil-invitation .oraclys-veil-benefits{display:grid;gap:9px;list-style:none;padding:0;margin:22px auto 0;max-width:32rem;text-align:left}
.oraclys-veil-benefits li{display:flex;gap:10px;font-size:14px;line-height:1.8;color:#ddd0bd}
.oraclys-veil-benefits li:before{content:'✧';flex:none;color:#dbbf8b}
@media(min-width:961px),(min-width:761px) and (min-height:501px){
 html[data-mode="journey"][data-intake="welcome"] .psy-welcome{padding-top:20px}
}
@media(max-width:1000px) and (min-width:761px){
 html[data-mode="journey"][data-intake="welcome"] .psy-welcome-layout{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:24px}
 html[data-mode="journey"][data-intake="welcome"] .psy-welcome h1{font-size:36px}
}
@media(max-width:760px),(max-width:960px) and (max-height:500px){
 html[data-mode="journey"][data-intake="welcome"] .psy-welcome-layout{display:flex;flex-direction:column;gap:12px}
 html[data-mode="journey"][data-intake="welcome"] .psy-welcome-copy{column-gap:10px}
 html[data-mode="journey"][data-intake="welcome"] .psy-nickname label{margin-top:14px}
 html[data-mode="journey"][data-intake="welcome"] .psy-welcome .psy-controls .primary{padding-inline:12px}
 html[data-mode="journey"][data-intake="welcome"] .psy-welcome h1{font-size:clamp(30px,8vw,40px);line-height:1.4}
 html[data-mode="journey"][data-intake="welcome"] .psy-welcome .psy-intro{font-size:15px;line-height:1.75;margin-top:14px}
 html[data-mode="journey"] .psy-welcome-art:has(.oraclys-orbit-home){width:min(380px,100%);max-width:100%;margin:0 auto;order:-1}
 .oraclys-orbit-home .oraclys-orbit-node{--node-size:38px}
 .oraclys-orbit-home .oraclys-orbit-hint{font-size:10px;margin-top:0}
 .journey-free-action{padding:20px 18px;margin-block:20px;border-radius:12px}
 .guide-panel .journey-free-action h3{font-size:19px}
 .oraclys-veil-invitation .oraclys-veil-benefits{margin-top:18px}
 .guided-screen[data-guide-key="birth"] .journey-birth-actions{gap:8px}
 .guided-screen[data-guide-key="birth"] .journey-birth-actions>.primary{width:100%;min-width:0;padding:12px 18px;font-size:14px}
 .guided-screen[data-guide-key="birth"] .journey-birth-actions>.birth-secondary{width:100%}
}
@media(prefers-reduced-motion:reduce){.journey-guidance .journey-beacon:not(:disabled):not([aria-disabled="true"]){animation:none}}
html[data-motion="off"] .journey-beacon:not(:disabled):not([aria-disabled="true"]){animation:none}
@media print{.journey-beacon{animation:none!important}.journey-free-action{background:white;border-color:#888;break-inside:avoid}}
