:root {
  --bg:#050816;
  --bg2:#0b1029;
  --panel:rgba(12,17,42,.72);
  --panel-strong:rgba(8,12,31,.92);
  --line:rgba(255,255,255,.14);
  --text:#f7f2e9;
  --muted:#b8bfd4;
  --gold:#ffd997;
  --gold2:#fff0c7;
  --violet:#d9a7ff;
  --blue:#9bc9ff;
  --teal:#9debd5;
  --danger:#ffb7bd;
  --shadow:0 30px 90px rgba(0,0,0,.45);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}
body{min-height:100svh}
button,input,textarea{font:inherit}
button{cursor:pointer}
#galaxyCanvas{position:fixed;inset:0;width:100%;height:100%;z-index:0;background:radial-gradient(circle at 50% 85%,#13214a 0%,#080d22 38%,#03050d 100%)}
.nebula-layer{position:fixed;inset:-20%;z-index:1;pointer-events:none;background:
radial-gradient(ellipse at 18% 38%,rgba(105,51,178,.22),transparent 27%),
radial-gradient(ellipse at 80% 28%,rgba(74,98,211,.17),transparent 30%),
radial-gradient(ellipse at 62% 80%,rgba(28,142,154,.10),transparent 26%);filter:blur(45px);animation:nebulaFloat 18s ease-in-out infinite alternate}
@keyframes nebulaFloat{to{transform:translate3d(2%,-1%,0) scale(1.04)}}
.app-shell{position:relative;z-index:2;min-height:100svh}
.screen{display:none;min-height:100svh;width:100%;position:relative;padding:96px 24px 42px;animation:screenIn .55s ease both}
.screen.active{display:flex}
@keyframes screenIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.hidden{display:none!important}
.topbar{position:fixed;z-index:20;left:0;right:0;top:0;height:72px;padding:14px clamp(16px,4vw,42px);display:flex;align-items:center;gap:12px;background:linear-gradient(to bottom,rgba(2,4,13,.82),rgba(2,4,13,.2));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.icon-btn{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.05);color:var(--gold);font-size:18px}
.brand-mini{display:flex;flex-direction:column;line-height:1.05}.brand-mini strong{font-family:Georgia,serif;font-weight:500;letter-spacing:.03em}.brand-mini span{font-size:10px;letter-spacing:.19em;color:var(--muted);margin-top:4px}.sky-progress{margin-left:auto;display:flex;gap:8px;color:#6e7895;font-size:20px}.sky-progress span.done{color:var(--gold);text-shadow:0 0 16px var(--gold)}
.landing{align-items:center;justify-content:center;text-align:center;overflow:hidden}.landing::after{content:"";position:absolute;left:50%;bottom:-32vh;transform:translateX(-50%);width:125vw;height:55vh;border-radius:50%;background:radial-gradient(ellipse at 50% 0%,rgba(255,214,144,.28),rgba(22,32,65,.25) 22%,rgba(5,8,22,0) 65%);border-top:1px solid rgba(255,229,177,.28);pointer-events:none}.landing-inner{max-width:780px;position:relative;z-index:2}.eyebrow,.section-kicker{font-size:11px;letter-spacing:.25em;color:var(--gold);font-weight:700}.landing h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(54px,10vw,110px);line-height:.95;margin:18px 0 8px;background:linear-gradient(180deg,#fff8ea,#e7b974);-webkit-background-clip:text;color:transparent;text-shadow:0 7px 35px rgba(255,204,128,.08)}.subtitle{font-family:Georgia,serif;letter-spacing:.32em;font-size:clamp(13px,2vw,21px);color:#dce4f6}.ornament{display:flex;align-items:center;justify-content:center;gap:14px;margin:24px auto;width:min(260px,65vw);color:var(--gold)}.ornament span{height:1px;background:linear-gradient(90deg,transparent,rgba(255,217,151,.7));flex:1}.ornament span:last-child{transform:scaleX(-1)}.lead{font-family:Georgia,serif;font-size:clamp(20px,3vw,29px);line-height:1.45;color:#f4eadc;margin:0 auto 30px}.landing-hint{position:absolute;bottom:22px;font-size:12px;color:#8691ad;left:50%;transform:translateX(-50%);width:90%;z-index:3}.primary-btn,.secondary-btn,.text-btn,.mode-btn,.back-btn{border:0;color:var(--text);transition:.2s ease}.primary-btn{padding:14px 20px;border-radius:14px;background:linear-gradient(135deg,#f1c47b,#bd8650);color:#1d1320;font-weight:800;box-shadow:0 10px 34px rgba(230,175,102,.2);min-height:50px}.primary-btn:hover{transform:translateY(-1px);box-shadow:0 14px 40px rgba(230,175,102,.28)}.primary-btn:disabled{opacity:.38;cursor:not-allowed;transform:none}.glow-btn{box-shadow:0 0 0 1px rgba(255,226,169,.25),0 0 44px rgba(255,203,126,.18)}.secondary-btn{padding:13px 18px;border-radius:14px;background:rgba(255,255,255,.055);border:1px solid var(--line);font-weight:700}.secondary-btn:disabled{opacity:.35;cursor:not-allowed}.text-btn,.back-btn{background:transparent;color:var(--muted);padding:12px}.text-btn:hover,.back-btn:hover{color:var(--text)}
.content-card{width:min(700px,100%);margin:auto;background:linear-gradient(180deg,rgba(19,25,59,.76),rgba(7,11,28,.82));border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:clamp(24px,5vw,46px);box-shadow:var(--shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.intro{align-items:center}.intro-card h2,.reflection-card h2,.naming-card h2,.about-card h2,.summary-head h2,.connect-panel h2,.explore-ui h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(31px,5vw,50px);margin:12px 0 16px;line-height:1.08}.content-card p{line-height:1.7}.muted{color:var(--muted)}
.hub{flex-direction:column;align-items:center;justify-content:center;text-align:center}.hub-copy{max-width:700px}.hub-copy h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(30px,5vw,52px);margin:10px 0}.hub-copy p{color:var(--muted)}.orbit-menu{width:min(620px,92vw);aspect-ratio:1/1;position:relative;margin:18px auto}.orbit-menu::before,.orbit-menu::after{content:"";position:absolute;border:1px solid rgba(203,213,255,.16);border-radius:50%;inset:15%;box-shadow:inset 0 0 35px rgba(119,111,255,.05)}.orbit-menu::after{inset:28%;border-style:dashed;animation:spin 25s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.orbit-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:116px;height:116px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(circle,rgba(247,213,156,.15),rgba(20,25,52,.56) 55%,rgba(7,10,25,.78));border:1px solid rgba(255,224,174,.22);box-shadow:0 0 50px rgba(242,197,121,.12);z-index:2}.orbit-core span{font-size:10px;letter-spacing:.18em;color:var(--muted)}.orbit-core b{font-family:Georgia,serif;color:var(--gold2);font-size:24px;margin-top:5px}.orbit-node{position:absolute;width:146px;min-height:116px;padding:14px;border-radius:22px;border:1px solid rgba(255,255,255,.12);background:rgba(8,12,31,.56);color:var(--text);backdrop-filter:blur(12px);box-shadow:0 15px 45px rgba(0,0,0,.25);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:3}.orbit-node:hover{transform:scale(1.035);border-color:rgba(255,221,164,.28)}.orbit-node strong{font-family:Georgia,serif;font-size:18px;font-weight:400}.orbit-node small{font-size:11px;color:var(--muted);margin-top:5px}.node-star{font-size:29px;margin-bottom:8px;filter:drop-shadow(0 0 12px currentColor)}.node-within{left:50%;top:0;transform:translateX(-50%);color:var(--gold)}.node-within:hover{transform:translateX(-50%) scale(1.035)}.node-around{left:0;top:50%;transform:translateY(-50%);color:var(--violet)}.node-around:hover{transform:translateY(-50%) scale(1.035)}.node-beside{right:0;top:50%;transform:translateY(-50%);color:var(--blue)}.node-beside:hover{transform:translateY(-50%) scale(1.035)}.node-ahead{left:50%;bottom:0;transform:translateX(-50%);color:var(--teal)}.node-ahead:hover{transform:translateX(-50%) scale(1.035)}.orbit-node.done{background:rgba(15,19,42,.82);border-color:currentColor;box-shadow:0 0 32px color-mix(in srgb,currentColor 24%,transparent)}.orbit-node.done .node-star{animation:pulseStar 2s ease-in-out infinite}@keyframes pulseStar{50%{transform:scale(1.18);filter:drop-shadow(0 0 24px currentColor)}}.hub-actions{height:54px}
.reflection{align-items:center}.reflection-card{position:relative}.reflection-icon{font-size:48px;color:var(--gold);filter:drop-shadow(0 0 20px currentColor);margin-top:10px}.reflection-helper{color:var(--muted);line-height:1.65}.chips{display:flex;flex-wrap:wrap;gap:9px;margin:20px 0}.chip{border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.045);color:#dbe3f5;border-radius:999px;padding:9px 12px;font-size:13px}.chip:hover,.chip.selected{border-color:rgba(255,220,163,.5);background:rgba(255,214,150,.10);color:#fff4df}.field-label{display:block;font-size:12px;letter-spacing:.08em;font-weight:700;color:#d7def0;margin:16px 0 8px}textarea,input{width:100%;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(3,7,20,.55);color:#f6f1e7;padding:14px 15px;outline:none;resize:vertical}textarea:focus,input:focus{border-color:rgba(255,219,153,.55);box-shadow:0 0 0 3px rgba(255,215,145,.07)}.char-row{display:flex;justify-content:space-between;color:#7f89a6;font-size:11px;margin:7px 2px 18px}.secondary-field{border-top:1px solid var(--line);margin-top:8px;padding-top:6px}
.whisper{align-items:center;justify-content:center;text-align:center}.whisper-center{max-width:650px}.new-star{font-size:100px;line-height:1;color:var(--gold);filter:drop-shadow(0 0 50px rgba(255,218,151,.9));animation:newStar 1.6s cubic-bezier(.2,.8,.2,1) both}@keyframes newStar{0%{opacity:0;transform:scale(.1) rotate(-25deg);filter:drop-shadow(0 0 2px transparent)}55%{opacity:1;transform:scale(1.25) rotate(8deg)}100%{transform:scale(1)}}.whisper h2{font-family:Georgia,serif;font-size:clamp(32px,5vw,54px);font-weight:400;margin:16px 0 10px}.whisper p{font-family:Georgia,serif;font-size:21px;color:#e3e9f5;line-height:1.6;margin-bottom:28px}
.connect{align-items:stretch;justify-content:center;gap:24px;overflow:hidden}.connect-stage{position:relative;flex:1;min-width:0;min-height:520px;isolation:isolate;touch-action:manipulation}.connect-lines{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:visible;pointer-events:none;filter:drop-shadow(0 0 8px rgba(255,220,170,.32))}.connect-line{fill:none;stroke:rgba(255,229,190,.72);stroke-width:2;stroke-linecap:round;stroke-dasharray:900;stroke-dashoffset:900;animation:drawConnectLine .55s ease forwards}@keyframes drawConnectLine{to{stroke-dashoffset:0}}.connect-star{position:absolute;z-index:3;width:112px;height:96px;border:0;background:transparent;color:#eef2ff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.connect-star::before{content:"";position:absolute;inset:5px 13px;border:1px solid color-mix(in srgb,currentColor 28%,transparent);border-radius:50%;transform:rotate(-18deg);box-shadow:0 0 28px color-mix(in srgb,currentColor 18%,transparent);transition:.22s ease}.connect-star::after{content:attr(data-order);position:absolute;right:5px;top:4px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#fff4dc;color:#181126;font-size:11px;font-weight:900;box-shadow:0 0 18px rgba(255,218,151,.28)}.connect-star[data-order=""]::after{display:none}.connect-star-visual{font-family:Georgia,serif;font-size:40px;line-height:1;filter:drop-shadow(0 0 16px currentColor);transition:.22s ease}.connect-star small{position:relative;z-index:2;font-family:Georgia,serif;font-size:12px;color:#e4e8f4}.connect-star:hover .connect-star-visual,.connect-star:focus-visible .connect-star-visual{transform:scale(1.13)}.connect-star:focus-visible{outline:2px solid rgba(255,235,196,.8);outline-offset:2px;border-radius:22px}.connect-star.in-path::before{border-color:color-mix(in srgb,currentColor 60%,transparent);box-shadow:0 0 38px color-mix(in srgb,currentColor 35%,transparent)}.connect-star.current .connect-star-visual{transform:scale(1.22);filter:drop-shadow(0 0 28px currentColor)}.connect-star.current::before{animation:connectOrbitPulse 1.4s ease-in-out infinite}@keyframes connectOrbitPulse{50%{transform:rotate(18deg) scale(1.1);opacity:.7}}.connect-star-within{left:50%;top:6%;transform:translateX(-50%);color:var(--gold)}.connect-star-around{left:9%;top:43%;transform:translateY(-50%);color:var(--violet)}.connect-star-beside{right:9%;top:43%;transform:translateY(-50%);color:var(--blue)}.connect-star-ahead{left:50%;bottom:6%;transform:translateX(-50%);color:var(--teal)}.connect-panel{position:relative;z-index:5;pointer-events:auto;width:min(430px,38vw);align-self:center;background:rgba(6,10,27,.78);border:1px solid var(--line);padding:26px;border-radius:24px;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);box-shadow:var(--shadow)}.connect-panel p{color:var(--muted);line-height:1.55}.connect-purpose{display:flex;gap:10px;align-items:flex-start;margin:14px 0 0;padding:11px 12px;border:1px solid rgba(255,217,151,.13);border-radius:14px;background:rgba(255,217,151,.045)}.connect-purpose>span{color:var(--gold);filter:drop-shadow(0 0 10px var(--gold));margin-top:2px}.connect-purpose p{margin:0;font-size:12px;line-height:1.5;color:#cdd5e7}.connect-status{margin:16px 0;padding:12px 14px;border-radius:13px;background:rgba(255,255,255,.055);font-size:13px;line-height:1.45;color:#e8edf8;min-height:46px}.connect-actions{display:flex;gap:10px;flex-wrap:wrap}
.naming{align-items:center}.suggestion-block{margin:18px 0 24px}.suggestion-block>span{display:block;font-size:12px;color:var(--muted);margin-bottom:9px}.name-suggestions{display:flex;flex-wrap:wrap;gap:8px}.name-chip{padding:9px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.04);color:#ece8df}.name-chip:hover{border-color:rgba(255,215,145,.45)}
.reveal{align-items:center;justify-content:center;text-align:center;flex-direction:column}.reveal-copy{max-width:860px}.reveal-copy h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(45px,8vw,90px);margin:13px 0 12px;background:linear-gradient(180deg,#fff8e8,#e5b66e);-webkit-background-clip:text;color:transparent;text-transform:uppercase;letter-spacing:.04em}.reveal-copy p{font-family:Georgia,serif;font-size:21px;color:#dce3f1}.reveal-actions{margin-top:28px}
.summary{align-items:center}.summary-wrap{width:min(900px,100%);margin:auto}.summary-head{text-align:center;max-width:730px;margin:0 auto 30px}.summary-head p{color:#c0c8db;line-height:1.7}.reflection-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.summary-item{display:flex;gap:15px;align-items:flex-start;padding:19px;border:1px solid rgba(255,255,255,.1);border-radius:19px;background:rgba(9,13,33,.62);backdrop-filter:blur(12px)}.summary-item>span{font-size:27px;filter:drop-shadow(0 0 12px currentColor)}.summary-item small{font-size:10px;letter-spacing:.12em;color:#9da7c0}.summary-item p{margin:8px 0 0;line-height:1.5}.summary-item em{display:block;color:#aeb8cf;font-size:12px;margin-top:7px}.s-within>span{color:var(--gold)}.s-around>span{color:var(--violet)}.s-beside>span{color:var(--blue)}.s-ahead>span{color:var(--teal)}.closing-quote{text-align:center;max-width:620px;margin:32px auto;font-family:Georgia,serif;font-size:20px;color:#e8e0d4}.closing-quote span{color:var(--gold)}.summary-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.explore{align-items:flex-end}.explore-ui{width:min(620px,100%);background:rgba(6,9,25,.66);border:1px solid var(--line);border-radius:22px;padding:20px;backdrop-filter:blur(14px)}.explore-ui h2{font-size:36px;margin:8px 0}.explore-ui p{color:var(--muted);font-size:13px;line-height:1.5}.star-inspector{position:fixed;z-index:15;right:24px;top:95px;width:min(330px,calc(100vw - 48px));padding:20px;background:rgba(6,9,24,.9);border:1px solid var(--line);border-radius:20px;backdrop-filter:blur(18px);box-shadow:var(--shadow)}.star-inspector button{float:right;background:transparent;border:0;color:#fff;font-size:24px}.star-inspector small{color:var(--gold);letter-spacing:.12em}.star-inspector h3{font-family:Georgia,serif;font-weight:400;font-size:25px;margin:7px 0}.star-inspector p{line-height:1.6;color:#d4dbeb}
.share{align-items:center}.share-layout{width:min(1160px,100%);margin:auto;display:grid;grid-template-columns:minmax(340px,.9fr) minmax(300px,.7fr);gap:32px;align-items:center}.share-controls{margin:0}.share-controls h2{font-family:Georgia,serif;font-weight:400;font-size:36px}.share-mode{display:flex;gap:7px;margin:20px 0}.mode-btn{flex:1;padding:10px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid var(--line);font-size:12px}.mode-btn.active{border-color:rgba(255,216,153,.52);background:rgba(255,216,153,.10);color:var(--gold2)}.privacy-options{display:grid;gap:9px;margin-bottom:20px}.privacy-options label{display:flex;align-items:center;gap:10px;color:#d7deef;font-size:13px;padding:9px 10px;border-radius:11px;background:rgba(255,255,255,.025)}.privacy-options input{width:auto}.share-buttons{display:flex;gap:9px}.privacy-note{font-size:11px;color:#7f89a5;line-height:1.5!important;margin-bottom:0}.story-preview-wrap{display:flex;justify-content:center}.story-preview-wrap canvas{width:min(360px,84vw);aspect-ratio:9/16;border-radius:22px;box-shadow:0 35px 90px rgba(0,0,0,.6);border:1px solid rgba(255,255,255,.12);background:#050816}.about{align-items:center}.about-card p{color:#c9d1e3}
.toast{position:fixed;left:50%;bottom:24px;z-index:50;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:rgba(8,12,28,.94);border:1px solid rgba(255,255,255,.13);padding:12px 16px;border-radius:999px;color:#f5efe4;box-shadow:var(--shadow);font-size:13px;transition:.25s ease}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:760px){
  .screen{padding:82px 17px 28px}.topbar{height:64px;padding:10px 14px}.brand-mini span{display:none}.landing h1{font-size:58px}.landing .subtitle{letter-spacing:.22em}.landing-hint{font-size:10px}.orbit-menu{width:min(520px,96vw)}.orbit-node{width:116px;min-height:98px;padding:10px}.orbit-node strong{font-size:16px}.orbit-node small{font-size:9.5px}.orbit-core{width:94px;height:94px}.orbit-menu::before{inset:19%}.orbit-menu::after{inset:31%}.reflection-grid{grid-template-columns:1fr}.connect{height:100svh;min-height:100svh;flex-direction:column;align-items:stretch;justify-content:stretch;gap:8px;padding:68px 12px 12px}.connect-stage{width:100%;min-height:0;flex:1 1 auto}.connect-panel{width:100%;align-self:auto;margin:0;padding:16px 18px;border-radius:22px;flex:0 0 auto}.connect-panel h2{font-size:29px;margin:8px 0 9px}.connect-panel>p{font-size:13px;margin:0}.connect-purpose{margin-top:9px;padding:8px 10px}.connect-purpose p{font-size:11px}.connect-status{margin:10px 0;padding:9px 11px;min-height:40px;font-size:12px}.connect-actions{gap:8px}.connect-actions .primary-btn,.connect-actions .secondary-btn{min-height:44px;padding:10px 14px}.connect-star{width:96px;height:82px}.connect-star-visual{font-size:35px}.connect-star::before{inset:5px 12px}.connect-star-within{top:2%}.connect-star-around{left:3%;top:47%}.connect-star-beside{right:3%;top:47%}.connect-star-ahead{bottom:1%}.share-layout{grid-template-columns:1fr}.story-preview-wrap{order:-1}.story-preview-wrap canvas{width:min(300px,72vw)}.share-controls{width:100%}.explore{align-items:flex-end}.explore-ui{padding:17px}.explore-ui h2{font-size:29px}.star-inspector{right:16px;top:auto;bottom:16px;width:calc(100vw - 32px)}
}
@media(max-width:420px){.orbit-menu{margin-top:10px}.orbit-node{width:108px;min-height:92px}.orbit-core{width:82px;height:82px}.orbit-core b{font-size:19px}.orbit-core span{font-size:8px}.hub-copy h2{font-size:31px}.summary-actions,.share-buttons{flex-direction:column}.summary-actions button,.share-buttons button{width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
.explore{pointer-events:none}.explore-ui,.star-inspector{pointer-events:auto}


/* v1.2 — reliable Explore touch targets + Assessment Center branding */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.org-credit{margin-top:12px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#9aa5bf}
.org-footer{text-align:center;margin-top:18px;font-size:10px;letter-spacing:.06em;color:#6f7892}
.counseling-card{margin:28px auto 0;max-width:780px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:17px 18px;border:1px solid rgba(157,235,213,.18);border-radius:18px;background:linear-gradient(135deg,rgba(157,235,213,.07),rgba(155,201,255,.045));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.counseling-icon{font-size:28px;color:var(--teal);filter:drop-shadow(0 0 14px rgba(157,235,213,.5))}
.counseling-card strong{font-family:Georgia,serif;font-size:17px;font-weight:400;color:#eef5f2}
.counseling-card p{margin:5px 0 0;color:#aeb9cf;font-size:12px;line-height:1.5}
.counseling-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 14px;border:1px solid rgba(157,235,213,.28);border-radius:12px;background:rgba(157,235,213,.08);color:#dffbf4;text-decoration:none;font-size:12px;font-weight:800;white-space:nowrap}
.counseling-link:hover{background:rgba(157,235,213,.13);transform:translateY(-1px)}
.share-branding{margin-top:13px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08);font-size:10px;letter-spacing:.05em;color:#7f89a5}
.share-branding a,.about-org a{color:var(--teal);text-decoration:none}
.about-org{margin:22px 0;padding:16px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(255,255,255,.025)}
.about-org strong{font-family:Georgia,serif;font-size:18px;font-weight:400;color:#f2e9da}
.about-org p{font-size:12px!important;margin:8px 0!important;color:#aeb9cf!important}
.about-org small{font-size:10px;color:#768099}

.explore{pointer-events:auto;position:relative;overflow:hidden}
.explore-ui{position:relative;z-index:8;pointer-events:auto}
.explore-hit-layer{position:fixed;inset:0;z-index:6;pointer-events:none}
.explore-star-hit{position:absolute;left:50%;top:50%;width:96px;height:96px;transform:translate(-50%,-50%);border:0;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.07),rgba(255,255,255,.012) 34%,transparent 68%);pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer}
.explore-star-hit::before{content:"";position:absolute;inset:17px;border:1px solid rgba(255,255,255,.12);border-radius:50%;transform:rotate(-18deg) scaleY(.42);opacity:.55;transition:.18s ease;box-shadow:0 0 18px rgba(255,255,255,.05)}
.explore-star-hit::after{content:"";position:absolute;inset:34px;border-radius:50%;background:rgba(255,255,255,.08);filter:blur(5px);opacity:.55;transition:.18s ease}
.explore-star-hit:hover::before,.explore-star-hit:focus-visible::before,.explore-star-hit:active::before{opacity:1;transform:rotate(10deg) scaleY(.52) scale(1.08)}
.explore-star-hit:hover::after,.explore-star-hit:focus-visible::after,.explore-star-hit:active::after{opacity:1;box-shadow:0 0 28px rgba(255,255,255,.22)}
.explore-star-hit:focus-visible{outline:2px solid rgba(255,233,193,.75);outline-offset:2px}
.explore-star-hit[data-explore-key="within"]{color:var(--gold)}
.explore-star-hit[data-explore-key="around"]{color:var(--violet)}
.explore-star-hit[data-explore-key="beside"]{color:var(--blue)}
.explore-star-hit[data-explore-key="ahead"]{color:var(--teal)}
.explore-star-hit::before{border-color:color-mix(in srgb,currentColor 32%,transparent);box-shadow:0 0 22px color-mix(in srgb,currentColor 12%,transparent)}
.star-inspector{z-index:18;pointer-events:auto}
@media(max-width:760px){
  .brand-mini span{display:block;font-size:8px;letter-spacing:.09em;margin-top:3px}
  .counseling-card{grid-template-columns:auto 1fr;margin-top:22px;padding:14px}
  .counseling-link{grid-column:1 / -1;width:100%}
  .explore-star-hit{width:108px;height:108px}
  .explore-ui{padding:16px 17px}.explore-ui p{font-size:12px}
}


/* v1.4 — robust iOS Explore touch, stable gesture layer, persistent Assessment Center brand */
body[data-screen="explore"]{overscroll-behavior:none}
.explore-gesture-layer{position:fixed;inset:0;z-index:5;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab}
.explore-gesture-layer.dragging{cursor:grabbing}
.explore-hit-layer{z-index:7;pointer-events:none}
.explore-star-hit{width:116px;height:116px;z-index:1;pointer-events:auto;touch-action:none}
.explore-star-hit.selected{background:radial-gradient(circle,rgba(255,255,255,.14),rgba(255,255,255,.035) 42%,transparent 72%)}
.explore-star-hit.selected::before{opacity:1;transform:rotate(12deg) scaleY(.54) scale(1.12);box-shadow:0 0 34px color-mix(in srgb,currentColor 28%,transparent)}
.explore-star-hit.selected::after{opacity:1;box-shadow:0 0 34px color-mix(in srgb,currentColor 35%,transparent)}
.explore-star-hit.pressed{background:radial-gradient(circle,rgba(255,255,255,.18),rgba(255,255,255,.045) 44%,transparent 74%)}
.explore-star-hit.pressed::before{opacity:1;transform:rotate(8deg) scaleY(.56) scale(1.16)}
.explore-ui{z-index:9}
.explore-footer-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px}
.explore-branding{display:flex;align-items:center;gap:10px;margin-left:auto;font-size:10px;letter-spacing:.045em;color:#8792ad;white-space:nowrap}
.explore-branding a{display:inline-flex;align-items:center;min-height:34px;padding:7px 10px;border:1px solid rgba(157,235,213,.18);border-radius:999px;color:var(--teal);text-decoration:none;background:rgba(157,235,213,.055);font-weight:800;letter-spacing:.02em}
.star-inspector{z-index:25}
@media(max-width:760px){
  .explore{padding-bottom:calc(12px + env(safe-area-inset-bottom));}
  .explore-star-hit{width:126px;height:126px}
  .explore-ui{width:100%;padding:15px 16px calc(15px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;margin:0 -17px -28px;width:calc(100% + 34px)}
  .explore-ui h2{font-size:28px;margin:7px 0 7px}
  .explore-ui p{margin:0;font-size:12px;line-height:1.42}
  .explore-footer-row{margin-top:10px;align-items:stretch}
  .explore-footer-row .secondary-btn{min-height:42px;padding:9px 14px}
  .explore-branding{flex:1;justify-content:flex-end;gap:7px;font-size:8.5px;white-space:normal;text-align:right}
  .explore-branding a{min-height:38px;font-size:10px;white-space:nowrap}
  .star-inspector{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));width:auto;max-height:min(44svh,360px);overflow:auto;border-radius:22px;padding:18px 18px 20px}
}
@media(max-width:420px){
  .explore-branding span{max-width:112px;line-height:1.25}
}


.explore.active{animation:exploreFadeOnly .32s ease both;transform:none!important}
@keyframes exploreFadeOnly{from{opacity:0}to{opacity:1}}

/* v1.5 — supportive interpretation + connection meaning */
.route-meaning-card{margin:24px auto 0;max-width:820px;padding:24px;border:1px solid rgba(255,217,151,.15);border-radius:22px;background:linear-gradient(145deg,rgba(19,25,59,.72),rgba(7,11,28,.80));box-shadow:0 22px 60px rgba(0,0,0,.22);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.route-meaning-card h3{font-family:Georgia,serif;font-size:26px;font-weight:400;line-height:1.18;margin:8px 0 12px}
.route-path{display:inline-flex;align-items:center;max-width:100%;padding:9px 12px;border-radius:999px;background:rgba(255,217,151,.08);border:1px solid rgba(255,217,151,.16);color:#ffe0a8;font-size:12px;letter-spacing:.035em;line-height:1.35;overflow-wrap:anywhere}
.route-path.compact{margin:2px 0 12px;font-size:11px}
.route-intro,.route-ending{color:#d9dfec;line-height:1.65;font-size:14px}
.route-intro{margin:16px 0 10px}.route-ending{margin:16px 0 6px;color:#eef2f8}
.route-transitions{display:grid;gap:9px;margin:15px 0}
.route-step{display:grid;grid-template-columns:30px 1fr;gap:11px;padding:12px 13px;border-radius:15px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035)}
.route-step>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:rgba(255,217,151,.10);border:1px solid rgba(255,217,151,.18);color:#ffd997;font-size:11px;font-weight:800}
.route-step strong{font-size:12px;color:#f0e5d4}.route-step p{margin:5px 0 0;color:#bfc8da;font-size:12px;line-height:1.55}
.route-note{margin:13px 0 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.08);color:#8995ae!important;font-size:10.5px!important;line-height:1.5!important}

.explore-actions{display:flex;gap:8px;flex-wrap:wrap}.route-btn{min-height:44px;padding:10px 14px;border-radius:14px;border:1px solid rgba(255,217,151,.20);background:rgba(255,217,151,.07);color:#ffe0a8;font-weight:700;cursor:pointer}.route-btn:hover,.route-btn:focus-visible{background:rgba(255,217,151,.12);outline:none;border-color:rgba(255,217,151,.38)}

.star-inspector,.route-inspector{position:fixed;z-index:25;right:24px;top:95px;width:min(390px,calc(100vw - 48px));padding:20px;background:rgba(6,9,24,.94);border:1px solid rgba(255,255,255,.12);border-radius:22px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 26px 80px rgba(0,0,0,.44)}
.star-inspector>button,.route-inspector>button{float:right;background:transparent;border:0;color:#fff;font-size:27px;line-height:1;cursor:pointer}
.star-inspector>small,.route-inspector>small{color:var(--gold);letter-spacing:.13em;font-size:10px}.star-inspector h3,.route-inspector h3{font-family:Georgia,serif;font-weight:400;font-size:27px;margin:8px 0 11px}
.inspector-answer{margin:0 0 10px;padding:12px 14px;border-left:2px solid rgba(255,217,151,.42);border-radius:0 12px 12px 0;background:rgba(255,255,255,.035);font-family:Georgia,serif;font-size:18px;line-height:1.45;color:#f3efe8}
.inspector-detail{margin:0 0 12px;color:#bfc9db;font-size:12px;line-height:1.55}.inspector-detail::before{content:'Langkah kecil / detail: ';color:#8895ae;font-weight:700}
.inspector-section{margin-top:12px;padding:12px 13px;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03)}
.inspector-section strong{display:block;color:#e6ebf5;font-size:11px;letter-spacing:.045em;text-transform:uppercase}.inspector-section p{margin:6px 0 0;color:#c8d0e0;font-size:12px;line-height:1.62}
.supportive-block{border-color:rgba(157,235,213,.14);background:linear-gradient(135deg,rgba(157,235,213,.055),rgba(155,201,255,.03))}.supportive-block strong{color:#bceede}
.relation-block{border-color:rgba(255,217,151,.13)}.relation-block strong{color:#ffe0a8}

.route-inspector{width:min(430px,calc(100vw - 48px));max-height:calc(100svh - 130px);overflow:auto}
.route-inspector>p{color:#c8d0e0;font-size:12px;line-height:1.62}.route-inspector-steps{display:grid;gap:9px;margin:13px 0}.route-inspector-step{padding:11px 12px;border-radius:13px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.075)}.route-inspector-step strong{font-size:11px;color:#f4e4c5}.route-inspector-step p{margin:5px 0 0;color:#bbc5d7;font-size:11.5px;line-height:1.55}.route-inspector-ending{padding:11px 12px;border-radius:13px;background:rgba(157,235,213,.045);border:1px solid rgba(157,235,213,.11);color:#dceae5!important}

@media(max-width:700px){
  .route-meaning-card{padding:18px 16px;border-radius:20px}.route-meaning-card h3{font-size:23px}.route-path{font-size:10.5px;padding:8px 10px}.route-intro,.route-ending{font-size:12.5px}.route-step{grid-template-columns:27px 1fr;padding:10px}.route-step>span{width:25px;height:25px}.route-step p{font-size:11.5px}
  .explore-actions{width:100%}.explore-actions .secondary-btn,.explore-actions .route-btn{flex:1 1 auto}
  .star-inspector,.route-inspector{left:12px;right:12px;top:auto;bottom:calc(12px + env(safe-area-inset-bottom));width:auto;max-height:min(62svh,520px);overflow:auto;border-radius:22px;padding:18px 18px 20px}
  .star-inspector h3,.route-inspector h3{font-size:25px}.inspector-answer{font-size:17px}.inspector-section p,.route-inspector>p{font-size:11.5px}
}
.route-inspector{pointer-events:auto}
