/* Only the collapsed edge handle is visible until the organizer opens the controls. */
#eucupDemoToggle,#eucupDemoPanel,#eucupQuestGuide{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;box-sizing:border-box;z-index:2147483000}
#eucupDemoToggle{position:fixed;right:0;top:40%;width:43px;height:112px;background:#102b54;border:1px solid #365a89;border-right:0;border-radius:11px 0 0 11px;box-shadow:-2px 2px 16px #071b3240;color:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:8px 5px;transition:transform .25s,right .25s,width .25s;}
#eucupDemoToggle:hover{width:48px;background:#194679}#eucupDemoToggle svg{width:17px;height:17px;transition:transform .2s;flex:0 0 auto}
#eucupDemoToggle .demo-toggle-copy{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;color:#fff;text-transform:uppercase}
#eucupDemoToggle .demo-toggle-text{font-size:10px;font-weight:800;letter-spacing:.08em;writing-mode:vertical-rl;text-orientation:mixed}
#eucupDemoToggle .demo-toggle-sub{font-size:7px;font-weight:700;letter-spacing:.12em;opacity:.72;writing-mode:vertical-rl;text-orientation:mixed;margin-top:3px}
body.eucup-demo-open #eucupDemoToggle{right:min(360px,calc(100vw - 43px));}body.eucup-demo-open #eucupDemoToggle svg{transform:rotate(180deg)}
#eucupDemoPanel{position:fixed;right:0;top:0;bottom:0;width:min(360px,100vw);background:#fff;color:#142a46;box-shadow:-9px 0 40px rgba(8,24,46,.15);border-left:1px solid #dfe8f1;transform:translateX(101%);transition:transform .28s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;font-size:13px;text-align:left;visibility:hidden;}
body.eucup-demo-open #eucupDemoPanel{transform:translateX(0);visibility:visible}
#eucupDemoPanel *{box-sizing:border-box}#eucupDemoPanel button,#eucupDemoPanel select,#eucupDemoPanel input{font:inherit}#eucupDemoPanel .demo-header{background:#102b54;color:#fff;padding:25px 23px 22px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
#eucupDemoPanel .demo-title{font-family:'Barlow Condensed',Inter,sans-serif;font-size:26px;font-weight:800;letter-spacing:.03em;margin:5px 0 0;line-height:1.1}#eucupDemoPanel .demo-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:700;opacity:.65}#eucupDemoPanel .demo-close{width:32px;height:32px;border:1px solid #ffffff4a;background:#ffffff15;color:white;border-radius:8px;cursor:pointer;font-size:21px}
#eucupDemoPanel .demo-body{padding:23px;overflow:auto;flex:1;min-height:0}#eucupDemoPanel .demo-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
#eucupDemoPanel .demo-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#8796aa;font-weight:800;margin:0 0 8px}#eucupDemoPanel .demo-mode{font-size:17px;font-weight:800;color:#142a46}#eucupDemoPanel .demo-status{font-size:10px;padding:5px 8px;border-radius:20px;background:#f3f5f8;color:#728397;font-weight:800;letter-spacing:.03em}#eucupDemoPanel .demo-status.running{color:#086544;background:#dff5ec}
#eucupDemoPanel .demo-time{font:800 38px/1.2 'Barlow Condensed',Inter,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:#102b54;margin:19px 0 4px}#eucupDemoPanel .demo-progress{width:100%;height:7px;accent-color:#2874ac;cursor:pointer;margin:10px 0 5px}#eucupDemoPanel .demo-small{font-size:11px;color:#7b8ba0;line-height:1.55}
#eucupDemoPanel .demo-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:17px 0}#eucupDemoPanel .demo-button{border:1px solid #dce5ef;border-radius:9px;padding:11px 9px;min-height:39px;cursor:pointer;color:#21436a;background:#f9fbfd;font-weight:700;line-height:1.25}
#eucupDemoPanel .demo-button:hover{border-color:#8eafcf;background:#f0f6fc}#eucupDemoPanel .demo-button.primary{background:#102b54;border-color:#102b54;color:#fff}#eucupDemoPanel .demo-button.primary:hover{background:#1d487a}#eucupDemoPanel .demo-button:disabled{opacity:.35;cursor:not-allowed}
#eucupDemoPanel .demo-section{padding:20px 0;border-top:1px solid #e7edf3}#eucupDemoPanel .demo-select{border:1px solid #dce5ef;background:#fff;border-radius:9px;padding:9px;color:#1a3552;width:100%;min-height:39px;cursor:pointer}
#eucupDemoPanel .demo-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 0}#eucupDemoPanel .demo-count{padding:13px 8px 11px;background:#f4f7fb;border-radius:8px;text-align:center}#eucupDemoPanel .demo-count strong{display:block;font:800 25px 'Barlow Condensed',Inter,sans-serif;font-variant-numeric:tabular-nums;color:#102b54}#eucupDemoPanel .demo-count span{font-size:9px;color:#7a8da5;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
#eucupDemoPanel .demo-link-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}#eucupDemoPanel .demo-link{border:1px solid #e3eaf1;border-radius:8px;background:#fff;color:#16446e;text-decoration:none;padding:10px;font-weight:700;font-size:11px;text-align:center}#eucupDemoPanel .demo-link:hover{background:#f3f7fb}
#eucupDemoPanel .demo-reset{background:none;border:0;color:#b64642;padding:9px 0;cursor:pointer;font-weight:700}#eucupDemoPanel .demo-reset:hover{text-decoration:underline}
#eucupDemoPanel .demo-footer{border-top:1px solid #e7edf3;padding:14px 23px 17px;color:#8897aa;font-size:10px;line-height:1.45}#eucupDemoPanel .demo-footer strong{color:#667b92}
#eucupDemoPanel :focus-visible,#eucupDemoToggle:focus-visible{outline:3px solid #4ca1ed;outline-offset:3px}

/* The quest uses its own collapsible right-side panel; no help markers or page annotations. */
#eucupQuestGuide,#eucupQuestToggle,#eucupQuestSpotlight{box-sizing:border-box;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;}
#eucupQuestGuide[hidden],#eucupQuestToggle[hidden],#eucupQuestSpotlight[hidden]{display:none!important}
#eucupQuestGuide{position:fixed;top:0;bottom:0;right:0;width:min(370px,calc(100vw - 44px));max-height:100dvh;display:flex;flex-direction:column;z-index:2147483003;background:#fff;border-left:1px solid #d6e2ef;box-shadow:-12px 0 48px rgba(8,24,46,.2);color:#142a46;transform:translateX(101%);visibility:hidden;transition:transform .32s cubic-bezier(.2,.8,.2,1),visibility .32s;}
#eucupQuestGuide.is-open{transform:translateX(0);visibility:visible}
#eucupQuestToggle{position:fixed;top:20%;right:0;width:43px;height:117px;z-index:2147483004;background:#175c9f;border:1px solid #477eb4;border-right:0;border-radius:11px 0 0 11px;color:#fff;cursor:pointer;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;box-shadow:-3px 4px 18px rgba(14,40,81,.17);padding:7px;transition:right .32s cubic-bezier(.2,.8,.2,1),background .2s ease}
#eucupQuestToggle .quest-toggle-name{writing-mode:vertical-rl;text-orientation:mixed;font-size:10px;font-weight:800;letter-spacing:.11em}
#eucupQuestToggle svg{height:15px;width:15px;flex-shrink:0;transition:transform .25s}
#eucupQuestToggle:hover{background:#2175bf}
body.demo-quest-open #eucupQuestToggle{right:min(370px,calc(100vw - 44px))}
body.demo-quest-open #eucupQuestToggle svg{transform:rotate(180deg)}
/* When quest is open, the simulator's edge handle remains accessible. */
body.demo-quest-open:not(.eucup-demo-open) #eucupDemoToggle{right:min(370px,calc(100vw - 44px))}
#eucupQuestGuide .quest-guide-head{background:#102b54;color:#fff;padding:30px 24px 24px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex:0 0 auto}
#eucupQuestGuide .quest-guide-kicker{font-size:10px;letter-spacing:.15em;font-weight:800;text-transform:uppercase;color:#a7c8ef;margin:0 0 9px}
#eucupQuestGuide h3{font:800 30px/1 'Barlow Condensed',Inter,sans-serif;letter-spacing:.01em;color:#fff;margin:0}
#eucupQuestGuide #questGuideSection{font-size:12px;color:#b4cbe9;margin:8px 0 0}
#eucupQuestGuide .quest-guide-hide{border:1px solid #ffffff50;background:#ffffff16;color:#fff;width:32px;height:32px;border-radius:9px;cursor:pointer;font-size:23px;line-height:1}
#eucupQuestGuide .quest-guide-body{padding:28px 24px;min-height:0;overflow-y:auto;flex:1;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0}
#eucupQuestGuide .quest-guide-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
#eucupQuestGuide #questGuideStep{font-size:11px;color:#6684a7;text-transform:uppercase;letter-spacing:.1em;font-weight:800}
#eucupQuestGuide .quest-guide-link{background:transparent;border:0;color:#19599b;cursor:pointer;font-size:12px;font-weight:700;padding:2px}
#eucupQuestGuide .quest-guide-progress{width:100%;background:#e6edf5;height:5px;border-radius:9px;overflow:hidden;margin-bottom:30px}
#eucupQuestGuide #questGuideProgress{display:block;width:0;height:100%;background:#257ccc;border-radius:9px;transition:width .22s ease}
#eucupQuestGuide h4{font:800 24px/1.12 'Barlow Condensed',Inter,sans-serif;color:#102b54;margin:0 0 13px}
#eucupQuestGuide #questGuideText{font-size:14px;line-height:1.65;color:#4e6b8b;margin:0}
#eucupQuestGuide .quest-guide-note{margin-top:30px;border-top:1px solid #e8eef6;padding-top:14px;font-size:11px;color:#859bb4;line-height:1.5}
#eucupQuestGuide .quest-guide-actions{display:flex;gap:12px;justify-content:space-between;padding:18px 24px 28px;border-top:1px solid #eaf0f5;flex:0 0 auto}
#eucupQuestGuide .quest-guide-btn{border:0;border-radius:9px;min-height:42px;padding:11px 18px;cursor:pointer;font:700 12px/1 Inter,sans-serif}
#eucupQuestGuide .quest-guide-btn.primary{background:#102b54;color:#fff;min-width:105px}#eucupQuestGuide .quest-guide-btn.primary:hover{background:#1d487a}
#eucupQuestGuide .quest-guide-btn.ghost{background:#f0f5fa;color:#23517f}
#eucupQuestGuide .quest-guide-btn:disabled{opacity:.35;cursor:not-allowed}
#eucupQuestSpotlight{position:fixed;z-index:2147482998;pointer-events:none;outline:3px solid #268af0;outline-offset:0;border-radius:8px;box-shadow:0 0 0 9999px rgba(11,35,67,.27),0 0 0 7px rgba(26,124,235,.25),0 0 28px 6px rgba(35,137,248,.35),inset 0 0 0 1px rgba(255,255,255,.75);animation:eucupQuestGlow 2.2s ease-in-out infinite}
#eucupQuestSpotlight::after{position:absolute;left:0;top:-29px;content:'CURRENT FIELD';background:#1971c2;color:#fff;border-radius:6px;padding:5px 8px;font-size:9px;line-height:1;font-weight:800;letter-spacing:.09em;white-space:nowrap}
#eucupQuestSpotlight.label-inside::after{top:6px;left:6px}
@keyframes eucupQuestGlow{0%,100%{outline-color:#2d8cec;box-shadow:0 0 0 9999px rgba(11,35,67,.27),0 0 0 6px rgba(26,124,235,.24),0 0 24px 4px rgba(35,137,248,.32)}50%{outline-color:#85c5ff;box-shadow:0 0 0 9999px rgba(11,35,67,.27),0 0 0 10px rgba(26,124,235,.16),0 0 35px 12px rgba(35,137,248,.35)}}
#eucupQuestGuide :focus-visible,#eucupQuestToggle:focus-visible{outline:3px solid #61b4fc;outline-offset:3px}
@media(max-width:640px){#eucupQuestGuide{width:min(335px,calc(100vw - 40px))}body.demo-quest-open #eucupQuestToggle,body.demo-quest-open:not(.eucup-demo-open) #eucupDemoToggle{right:min(335px,calc(100vw - 40px))}#eucupQuestGuide .quest-guide-head{padding:22px 18px}#eucupQuestGuide .quest-guide-body{padding:22px 18px}#eucupQuestGuide .quest-guide-actions{padding:16px 18px 24px}}
@media(prefers-reduced-motion:reduce){#eucupQuestGuide,#eucupQuestToggle,#eucupQuestToggle svg,#eucupQuestSpotlight{transition:none;animation:none}}
