/* Progressive, accessible task journeys. Legacy workspace remains opt-in. */
html.vj-active body{margin:0!important;padding:0!important;background:#fff!important}
html.vj-active body>:not(#e2m-visual-journey):not(script):not(style):not(link){display:none!important}
#e2m-visual-journey{--ink:#081b33;--blue:#1e63ff;--muted:#526279;min-height:100vh;background:#fff;color:var(--ink);font:16px/1.6 Inter,Arial,sans-serif}
#e2m-visual-journey[hidden],#vj-return[hidden]{display:none!important}
#e2m-visual-journey *{box-sizing:border-box}
#e2m-visual-journey button,#e2m-visual-journey input{font:inherit}
#e2m-visual-journey button{cursor:pointer}
#e2m-visual-journey :focus-visible,#vj-return:focus-visible{outline:3px solid #1e63ff;outline-offset:5px}
#e2m-visual-journey h1:focus{outline:none}
#e2m-visual-journey .vj-header{max-width:1180px;margin:auto;padding:25px 32px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e6ebf2}
#e2m-visual-journey .vj-brand{color:var(--ink);font-size:27px;font-weight:800;text-decoration:none;letter-spacing:-1px}
#e2m-visual-journey .vj-brand>span{color:var(--blue)}
#e2m-visual-journey .vj-brand small{font-size:10px;letter-spacing:1px;margin-left:5px}
#e2m-visual-journey .vj-languages{position:relative;font-size:14px}
#e2m-visual-journey summary{cursor:pointer;min-height:44px;padding:10px 0}
#e2m-visual-journey .vj-languages nav{position:absolute;right:0;z-index:5;background:white;border:1px solid #dbe2eb;border-radius:12px;padding:10px;min-width:150px;box-shadow:0 10px 30px #081b3310}
#e2m-visual-journey .vj-languages a{display:block;padding:9px;color:var(--ink);text-decoration:none}
#e2m-visual-journey .vj-main{max-width:800px;margin:auto;padding:30px 28px 40px}
#e2m-visual-journey .vj-context{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--muted);margin-bottom:36px}
#e2m-visual-journey .vj-kicker{font-size:12px;letter-spacing:1.3px;font-weight:700;color:var(--blue);margin-bottom:10px}
#e2m-visual-journey h1{font-size:clamp(30px,4.3vw,46px);line-height:1.15;letter-spacing:-1.4px;margin:0 0 17px;font-weight:750;color:var(--ink)}
#e2m-visual-journey .vj-lead{font-size:18px;line-height:1.65;color:var(--muted);margin:0 0 30px;max-width:620px}
#e2m-visual-journey .vj-goals{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}
#e2m-visual-journey .vj-goal{display:flex;align-items:center;text-align:left;gap:14px;border:1px solid #dce3ed;border-radius:14px;padding:23px 18px;background:#fff;color:var(--ink);min-height:104px;transition:border-color .15s,background .15s}
#e2m-visual-journey .vj-goal:hover,#e2m-visual-journey .vj-choice:hover{border-color:var(--blue);background:#f5f8ff}
#e2m-visual-journey .vj-goal>span:nth-child(2){flex:1}
#e2m-visual-journey .vj-goal strong{display:block;font-size:18px;line-height:1.35}
#e2m-visual-journey .vj-goal small{display:block;color:var(--muted);font-size:13px;margin-top:5px}
#e2m-visual-journey .vj-letter{flex:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9px;background:#eff4ff;color:var(--blue);font-size:14px;font-weight:700}
#e2m-visual-journey .vj-progress{display:flex;align-items:center;gap:7px;margin:0 0 28px;max-width:200px}
#e2m-visual-journey .vj-progress>span{height:4px;background:#e5ebf4;flex:1;border-radius:4px}
#e2m-visual-journey .vj-progress>span.on{background:var(--blue)}
#e2m-visual-journey .vj-progress small{color:var(--muted);margin-left:8px;white-space:nowrap}
#e2m-visual-journey .vj-options{display:grid;gap:12px;margin:28px 0}
#e2m-visual-journey .vj-choice{display:flex;align-items:center;gap:14px;border:1px solid #dce3ed;border-radius:12px;min-height:78px;padding:17px;cursor:pointer}
#e2m-visual-journey .vj-choice:has(input:checked){border:2px solid var(--blue);padding:16px;background:#f3f7ff}
#e2m-visual-journey input[type=radio],#e2m-visual-journey input[type=checkbox]{width:20px;height:20px;accent-color:var(--blue);flex:none}
#e2m-visual-journey .vj-field{display:block;margin:24px 0}
#e2m-visual-journey .vj-field>span{display:block;margin-bottom:8px;font-size:14px;font-weight:600}
#e2m-visual-journey .vj-field input{display:block;width:100%;min-height:60px;border:1px solid #aebbd0;border-radius:10px;background:white;padding:14px 18px;color:var(--ink)}
#e2m-visual-journey .vj-field input[type=number]{font-size:42px;font-weight:650;max-width:260px;height:92px}
#e2m-visual-journey .vj-primary{display:inline-flex;align-items:center;justify-content:center;min-height:54px;border:0;border-radius:10px;padding:14px 26px;background:var(--blue);color:white;font-size:16px;font-weight:650;text-align:center}
#e2m-visual-journey .vj-primary:hover{background:#154dd0}
#e2m-visual-journey .vj-link{border:0;background:transparent;color:var(--muted);padding:10px 0;min-height:44px;text-align:left;font-size:14px;text-decoration:underline;text-underline-offset:4px}
#e2m-visual-journey .vj-footer{display:flex;gap:24px;flex-wrap:wrap;border-top:1px solid #e6ebf2;margin-top:40px;padding-top:16px}
#e2m-visual-journey .vj-privacy{font-size:12px;color:var(--muted);margin-top:15px}
#e2m-visual-journey .vj-recommendation{position:relative;background:#f3f7ff;border-radius:16px;padding:25px 28px;margin:26px 0}
#e2m-visual-journey .vj-result-mark{display:inline-flex;align-items:center;justify-content:center;color:var(--blue);background:#e3ecff;border-radius:50%;width:34px;height:34px;font-size:20px;margin-bottom:12px}
#e2m-visual-journey h2{font-size:25px;line-height:1.3;letter-spacing:-.5px;margin:0 0 14px;color:var(--ink)}
#e2m-visual-journey .vj-recommendation p{margin:0;color:var(--muted)}
#e2m-visual-journey .vj-answers{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:25px 0}
#e2m-visual-journey dt{font-size:12px;color:var(--muted)}
#e2m-visual-journey dd{margin:5px 0 0;font-weight:650;overflow-wrap:anywhere}
#e2m-visual-journey .vj-number{background:var(--ink);color:white;border-radius:16px;padding:27px;margin:26px 0}
#e2m-visual-journey .vj-number>small,#e2m-visual-journey .vj-number>strong,#e2m-visual-journey .vj-number>span{display:block}
#e2m-visual-journey .vj-number>strong{font-size:clamp(30px,6vw,48px);line-height:1.3;letter-spacing:-1px;margin:12px 0}
#e2m-visual-journey .vj-number>span{font-size:13px;color:#c9d7eb}
#e2m-visual-journey .vj-number p{font-size:14px;color:#d6e1f0}
#e2m-visual-journey .vj-number a{display:block;color:white;font-size:13px;overflow-wrap:anywhere;padding:8px 0}
#e2m-visual-journey .vj-small-title{font-size:18px;margin-top:30px}
#e2m-visual-journey .vj-tasks{padding-left:25px;color:var(--muted)}
#e2m-visual-journey .vj-tasks li{padding:7px 0 7px 7px}
#e2m-visual-journey .vj-tasks li::marker{color:var(--blue);font-weight:bold}
#e2m-visual-journey .vj-note{font-size:14px;color:var(--muted);padding:17px 20px;border-left:3px solid #abc4fa;background:#f7f9fc;margin:24px 0}
#e2m-visual-journey .vj-method{border-top:1px solid #dce3ed;border-bottom:1px solid #dce3ed;margin:22px 0;font-size:14px;color:var(--muted);padding:5px 0}
#e2m-visual-journey .vj-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:26px}
#e2m-visual-journey .vj-consent{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--muted);margin:24px 0}
#e2m-visual-journey #vj-error{color:#a62323;font-size:14px}
#vj-return{position:fixed;bottom:20px;right:20px;z-index:10000;border:1px solid #1e63ff;border-radius:10px;background:#081b33;color:#fff;padding:14px 20px;font:600 14px/1.5 Arial,sans-serif;cursor:pointer;box-shadow:0 4px 20px #081b3325}
@media(max-width:600px){#e2m-visual-journey .vj-header{padding:16px 20px}#e2m-visual-journey .vj-main{padding:22px 20px 30px}#e2m-visual-journey .vj-context{margin-bottom:26px}#e2m-visual-journey .vj-goals{grid-template-columns:1fr;gap:10px}#e2m-visual-journey .vj-goal{min-height:84px;padding:17px}#e2m-visual-journey .vj-answers{grid-template-columns:1fr;gap:12px}#e2m-visual-journey .vj-primary{width:100%}#e2m-visual-journey .vj-footer{gap:15px}#e2m-visual-journey .vj-recommendation{padding:22px}#e2m-visual-journey .vj-actions{gap:16px}#vj-return{bottom:12px;right:12px;max-width:calc(100vw - 24px)}}
@media(prefers-reduced-motion:reduce){#e2m-visual-journey *{transition:none!important;scroll-behavior:auto!important}}
@media print{html.vj-active body{background:white!important}#e2m-visual-journey .vj-main{max-width:none;padding:0}#e2m-visual-journey .vj-actions,#e2m-visual-journey .vj-footer,#e2m-visual-journey .vj-context button,#e2m-visual-journey .vj-languages,#e2m-visual-journey .vj-progress,#e2m-visual-journey .vj-privacy,#vj-return{display:none!important}#e2m-visual-journey .vj-number{background:white;color:#081b33;border:1px solid #aaa}#e2m-visual-journey .vj-number p,#e2m-visual-journey .vj-number a,#e2m-visual-journey .vj-number>span{color:#081b33}#e2m-visual-journey .vj-number,#e2m-visual-journey .vj-recommendation{break-inside:avoid}#e2m-visual-journey h1{font-size:30px}}
/* Visual progress and short task scenes. */
#e2m-visual-journey .vj-game-progress{display:flex;align-items:center;gap:24px;background:#f4f7ff;border:1px solid #e2eaff;border-radius:22px;padding:23px 26px;margin:0 0 32px}
#e2m-visual-journey .vj-ring{width:108px;height:108px;flex:none;display:grid;place-items:center;border-radius:50%;background:conic-gradient(#1e63ff var(--progress),#dfe7f6 0);position:relative}
#e2m-visual-journey .vj-ring:before{content:'';position:absolute;inset:9px;background:#f4f7ff;border-radius:50%}
#e2m-visual-journey .vj-ring b{position:relative;font-size:33px;letter-spacing:-1.5px;font-variant-numeric:tabular-nums;line-height:1}
#e2m-visual-journey .vj-ring small{font-size:16px;letter-spacing:0;margin-left:2px}
#e2m-visual-journey .vj-progress-body{flex:1;min-width:0}
#e2m-visual-journey .vj-progress-body>strong{display:block;font-size:17px;line-height:1.4}
#e2m-visual-journey .vj-progress-body>small{display:block;color:#526279;font-size:12px;line-height:1.5;margin-top:10px}
#e2m-visual-journey .vj-track{height:7px;border-radius:10px;background:#dfe7f6;overflow:hidden;margin:15px 0}
#e2m-visual-journey .vj-track i{display:block;background:#1e63ff;height:100%;border-radius:10px}
#e2m-visual-journey .vj-milestones{list-style:none;padding:0;margin:0;display:flex;justify-content:space-between;gap:10px}
#e2m-visual-journey .vj-milestones li{display:flex;align-items:center;gap:6px;font-size:12px;color:#526279}
#e2m-visual-journey .vj-milestones span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1px solid #b9c8e2;font-size:11px;flex:none}
#e2m-visual-journey .vj-milestones .done{color:#124ebd;font-weight:700}
#e2m-visual-journey .vj-milestones .done span{background:#1e63ff;border-color:#1e63ff;color:white}
#e2m-visual-journey .vj-task-icon{display:grid;place-items:center;width:56px;height:56px;flex:none;color:#1e63ff;background:#eff4ff;border-radius:15px}
#e2m-visual-journey .vj-goal{min-height:120px;border-radius:18px}
#e2m-visual-journey .vj-goal:active{transform:scale(.985)}
#e2m-visual-journey .vj-card-status{display:inline-block;font-size:12px;font-weight:700;color:#124ebd;background:#eaf1ff;padding:2px 9px;border-radius:20px;margin-top:7px}
#e2m-visual-journey .vj-answer-picture{display:flex;align-items:center;gap:20px;padding:22px;border:1px solid #dce5f5;border-radius:18px;margin:24px 0}
#e2m-visual-journey .vj-answer-picture>svg{width:42px;height:42px;color:#1e63ff;flex:none}
#e2m-visual-journey .vj-answer-picture strong{font-size:28px;line-height:1.25;display:block;overflow-wrap:anywhere}
#e2m-visual-journey .vj-answer-picture small{display:block;color:#526279;font-size:13px}
#e2m-visual-journey .vj-unit-grid{margin-left:auto;display:grid;grid-template-columns:repeat(6,9px);gap:5px;flex:none}
#e2m-visual-journey .vj-unit-grid i{height:9px;border-radius:2px;background:#1e63ff}
#e2m-visual-journey .vj-unit-grid small{grid-column:1/-1;text-align:right}
#e2m-visual-journey .vj-recommendation details{font-size:14px;color:#526279}
#e2m-visual-journey .vj-recommendation h2{margin-bottom:4px}
#e2m-visual-journey .vj-scene{animation:vj-arrive .24s ease-out}
@keyframes vj-arrive{from{opacity:.4;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){#e2m-visual-journey .vj-game-progress{padding:18px 14px;gap:14px;border-radius:17px;margin-bottom:26px}#e2m-visual-journey .vj-ring{width:76px;height:76px}#e2m-visual-journey .vj-ring:before{inset:6px}#e2m-visual-journey .vj-ring b{font-size:25px}#e2m-visual-journey .vj-ring small{font-size:12px}#e2m-visual-journey .vj-progress-body>strong{font-size:14px}#e2m-visual-journey .vj-milestones li{display:grid;justify-items:center;font-size:10px;gap:4px}#e2m-visual-journey .vj-track{margin:10px 0}#e2m-visual-journey .vj-goal{min-height:92px}#e2m-visual-journey .vj-task-icon{width:46px;height:46px}#e2m-visual-journey .vj-answer-picture{gap:12px;padding:17px}#e2m-visual-journey .vj-answer-picture strong{font-size:23px}}
@media(prefers-reduced-motion:reduce){#e2m-visual-journey .vj-scene{animation:none}#e2m-visual-journey .vj-goal:active{transform:none}}
@media print{#e2m-visual-journey .vj-game-progress{display:none}#e2m-visual-journey .vj-scene{animation:none}}
/* First-use hierarchy and touch-friendly interactive inputs. */
#e2m-visual-journey .vj-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}
#e2m-visual-journey .vj-main{max-width:860px}
#e2m-visual-journey .vj-home .vj-kicker,#e2m-visual-journey .vj-home h1,#e2m-visual-journey .vj-home .vj-lead{text-align:center}
#e2m-visual-journey .vj-home .vj-lead{max-width:none;font-size:17px;margin-bottom:25px}
#e2m-visual-journey .vj-home .vj-goals{gap:16px;margin-top:24px}
#e2m-visual-journey .vj-home .vj-goal{padding:25px 22px;min-height:128px;box-shadow:0 3px 12px #081b3304;transition:background .15s,border-color .15s,transform .15s}
#e2m-visual-journey .vj-home .vj-goal:hover{transform:translateY(-2px);box-shadow:0 6px 18px #1e63ff12}
#e2m-visual-journey .vj-home .vj-goal strong{font-size:20px}
#e2m-visual-journey .vj-preset-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:28px 0}
#e2m-visual-journey .vj-preset{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:120px;border:2px solid #dce3ed;border-radius:17px;background:white;color:#081b33;transition:background .15s,border-color .15s}
#e2m-visual-journey .vj-preset strong{font-size:36px;font-weight:750;line-height:1.2;letter-spacing:-1px}
#e2m-visual-journey .vj-preset span{font-size:14px;color:#526279}
#e2m-visual-journey .vj-preset:hover{border-color:#1e63ff}
#e2m-visual-journey .vj-preset[aria-pressed=true]{background:#edf3ff;border-color:#1e63ff;color:#124ebd;box-shadow:0 0 0 3px #1e63ff0d}
#e2m-visual-journey .vj-custom-label{display:block;color:#526279;font-size:14px;margin-bottom:12px}
#e2m-visual-journey .vj-counter{display:flex;align-items:center;gap:14px;max-width:310px;margin:0 0 28px}
#e2m-visual-journey .vj-counter button{width:56px;height:56px;flex:none;background:#f0f5ff;border:1px solid #ccd9ee;border-radius:12px;font-size:26px;color:#124ebd}
#e2m-visual-journey .vj-counter input{min-width:0;width:130px;height:62px;padding:8px;text-align:center;border:1px solid #afbed4;border-radius:12px;font-size:28px;color:#081b33;background:white;appearance:textfield;-moz-appearance:textfield}
#e2m-visual-journey .vj-counter input::-webkit-inner-spin-button,#e2m-visual-journey .vj-counter input::-webkit-outer-spin-button{appearance:none;margin:0}
#e2m-visual-journey fieldset.vj-options{padding:0;border:0;min-width:0}
#e2m-visual-journey .vj-choice{min-height:92px;font-size:20px;padding:22px}
#e2m-visual-journey .vj-choice:has(input:checked){padding:21px}
#e2m-visual-journey .vj-selected-mark{margin-left:auto;color:#124ebd;font-size:23px;visibility:hidden}
#e2m-visual-journey .vj-choice:has(input:checked) .vj-selected-mark{visibility:visible}
#e2m-visual-journey .vj-field input::placeholder{font-size:16px;color:#67758a;opacity:1}
#e2m-visual-journey #vj-answer>.vj-primary{width:100%;min-height:60px;font-size:18px}
#e2m-visual-journey .vj-more{font-size:13px;color:#526279;margin-left:auto}
#e2m-visual-journey .vj-more summary{min-height:44px}
#e2m-visual-journey .vj-more .vj-link{display:block}
@media(max-width:600px){#e2m-visual-journey .vj-home .vj-goals{grid-template-columns:1fr 1fr;gap:10px}#e2m-visual-journey .vj-home .vj-goal{display:flex;flex-direction:column;align-items:flex-start;padding:16px 13px;min-height:143px;gap:12px;position:relative}#e2m-visual-journey .vj-home .vj-goal>span:nth-child(2){flex:none}#e2m-visual-journey .vj-home .vj-goal>span:last-child{position:absolute;right:12px;top:24px}#e2m-visual-journey .vj-home .vj-goal strong{font-size:17px;line-height:1.25}#e2m-visual-journey .vj-home .vj-goal small{display:none}#e2m-visual-journey .vj-home .vj-context{margin-bottom:18px}#e2m-visual-journey .vj-home h1{font-size:31px;letter-spacing:-1px}#e2m-visual-journey .vj-home .vj-lead{font-size:15px;line-height:1.5;margin-bottom:18px}#e2m-visual-journey .vj-home .vj-kicker{font-size:10px}#e2m-visual-journey .vj-preset-grid{gap:8px}#e2m-visual-journey .vj-preset{min-height:98px;border-radius:12px}#e2m-visual-journey .vj-preset strong{font-size:28px}#e2m-visual-journey .vj-preset span{font-size:12px}#e2m-visual-journey .vj-choice{font-size:17px;padding:16px;min-height:88px}#e2m-visual-journey .vj-choice:has(input:checked){padding:15px}#e2m-visual-journey .vj-more{margin-left:0}#e2m-visual-journey .vj-more .vj-link{max-width:240px}}
@media(max-width:359px){#e2m-visual-journey .vj-preset-grid{grid-template-columns:1fr 1fr}#e2m-visual-journey .vj-main{padding-left:16px;padding-right:16px}#e2m-visual-journey .vj-home .vj-goal strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){#e2m-visual-journey .vj-home .vj-goal:hover{transform:none}}
