@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600&display=swap');
:root{--ink:#263e34;--green:#3e6255;--muted:#798478;--paper:#f8f8ef;--line:#dce1d4}*{box-sizing:border-box}body{margin:0;background:#e4e9dc;color:var(--ink);font:14px 'DM Sans',Arial,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b98343;outline-offset:3px}#scene,#markers,.vignette{position:fixed;inset:0}#scene canvas{display:block;width:100%;height:100%}#markers{pointer-events:none}.vignette{pointer-events:none;background:linear-gradient(90deg,#e7ebdfbb,transparent 40%,transparent 75%),linear-gradient(0deg,#e7ebdf 0%,transparent 17%)}header{position:fixed;top:0;left:0;right:0;padding:28px 40px;display:flex;align-items:center;justify-content:space-between;z-index:4}.brand{display:flex;gap:12px;text-decoration:none;color:var(--ink);font:30px Georgia,serif;letter-spacing:-1px}.symbol{font:48px Georgia;line-height:40px;color:#547969}.brand small{display:block;font:9px 'DM Sans',Arial;letter-spacing:2.6px;margin-top:5px}nav{display:flex;align-items:center;gap:10px;background:#fafbf3aa;border:1px solid #ffffffaa;border-radius:40px;padding:6px;backdrop-filter:blur(15px)}nav button{border:0;background:transparent;padding:12px 20px;border-radius:30px;font-size:13px}.nav.active{background:var(--green);color:white}.icon{font:italic 18px Georgia!important;padding:10px 17px!important}.intro{position:fixed;top:155px;left:42px;pointer-events:none}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:600}.dot{display:inline-block;width:6px;height:6px;background:#749979;border-radius:50%;margin-right:7px}.intro h1{font:normal clamp(42px,4.3vw,70px)/1.06 Georgia,serif;letter-spacing:-2px;margin:22px 0}.intro h1 em{font-weight:normal;color:#59775b}.intro p{font-size:14px;line-height:1.8;color:#75816e}.intro-tag{font-size:10px;color:#89907e;margin-top:25px;border-top:1px solid #bac6b288;padding-top:15px;width:260px}aside{position:fixed;right:34px;top:130px;width:335px;max-height:calc(100dvh - 225px);overflow:auto;background:#fcfcf4ee;backdrop-filter:blur(20px);border:1px solid #fff;border-radius:22px;padding:24px;box-shadow:0 16px 60px #23392312;z-index:3;scrollbar-width:thin}.panel-top{display:flex;justify-content:space-between;align-items:center}#spot-number{font-size:10px;color:#97a28d}h2{font:normal 29px Georgia,serif;letter-spacing:-.8px;margin:16px 0 7px}aside>p{color:#85907e;font-size:12px;line-height:1.6;margin:0 0 18px}.panel-tabs{display:flex;border-bottom:1px solid var(--line);gap:20px;margin-bottom:18px}.panel-tabs button{border:0;background:none;font-size:12px;color:#8b9386;padding:8px 0 12px}.panel-tabs .selected{color:var(--green);border-bottom:2px solid var(--green)}.field-label{font-size:11px;font-weight:600;display:block;margin:18px 0 8px}.segmented{display:flex;gap:5px}.segmented button{flex:1;background:#edf0e7;border:1px solid transparent;border-radius:7px;font-size:11px;padding:9px 3px}.segmented button.chosen{background:#dce8d6;border-color:#80967c;color:#344d36}.hint{font-size:10px;line-height:1.6;color:#87907c;margin:8px 0}.question-head{display:flex;justify-content:space-between;align-items:center;margin-top:18px;font-size:12px}.question-head span:last-child{font-size:10px;color:#8e977f}.scale{display:flex;gap:5px;margin-top:9px}.scale button{width:20%;border:1px solid #dde2d5;background:#f3f5ec;border-radius:8px;height:31px;font-size:12px}.scale button.chosen{background:var(--green);color:#fff;border-color:var(--green)}.ends{display:flex;justify-content:space-between;font-size:9px;margin-top:5px;color:#8a9481}.emotions{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0}.emotions button{border:1px solid #dce3d2;border-radius:20px;background:transparent;padding:6px 10px;font-size:10px}.emotions button.chosen{background:#e0e8d7;border-color:#8ba17b}textarea{width:100%;resize:vertical;min-height:58px;max-height:120px;border:1px solid var(--line);border-radius:9px;padding:10px;background:#f7f8ef;font-size:11px;color:var(--ink)}.submit{width:100%;padding:12px;background:var(--green);color:#fff;border:0;border-radius:10px;margin-top:12px;font-size:12px}.privacy{font-size:9px;line-height:1.5;color:#8a9380;text-align:center;margin-top:9px}.marker{pointer-events:auto;position:absolute;width:34px;height:34px;border:2px solid #f5f6df;background:#fffef0dd;border-radius:50%;font-size:11px;color:#496647;box-shadow:0 4px 12px #25431c33;transform:translate(-50%,-50%);transition:background .2s}.marker.active{background:#355c48;color:white;box-shadow:0 0 0 7px #ffffff55}.marker:hover{background:#ecedce}.marker-label{position:absolute;top:42px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#fffef0dd;padding:5px 9px;border-radius:6px;font-size:10px;color:#456344;display:none}.marker.active .marker-label{display:block}.scene-caption{position:fixed;left:42px;bottom:142px;font-size:10px;letter-spacing:2px}.caption-line{display:block;width:30px;height:1px;background:#8ca184;margin:13px 0}.scene-caption small{font-size:11px;letter-spacing:0;color:#87917c}.view-tools{position:fixed;bottom:105px;left:50%;display:flex;gap:4px;background:#fbfcf3da;padding:5px;border:1px solid white;border-radius:12px;z-index:4}.view-tools button{background:none;border:0;padding:8px 12px;font-size:19px}.view-tools span{font-size:11px;margin-left:6px}footer{position:fixed;bottom:0;left:0;right:0;padding:24px 40px;display:flex;gap:22px;align-items:center;border-top:1px solid #cbd5bf77;font-size:10px;color:#818d76;z-index:4;background:#e8eddfaa}.divider{margin:0 12px;color:#a5af9b}.mouse{font-size:17px;margin-right:8px}footer button{margin-left:auto;border:0;background:none;font-size:10px}.prototype{font-size:9px;letter-spacing:1px;border:1px solid #c4ceb8;border-radius:5px;padding:6px}.reading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:20px 0;font-size:13px}.reading strong{font:28px Georgia}.demo-badge{font-size:10px;display:inline-block;padding:7px 10px;border-radius:20px;background:#eee7d1;color:#8b7748}.summary-number{font:56px Georgia;margin:25px 0 0}.summary-label{font-size:12px;color:#89917f}select,input[type=password]{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f7f8ee;margin-top:12px}.bar-row{display:flex;gap:10px;align-items:center;font-size:11px;margin:16px 0}.bar-row span{width:75px}.bar{height:5px;background:#e5e9dd;flex:1;border-radius:3px}.bar i{display:block;height:5px;background:#6c9077;border-radius:3px}#loading{position:fixed;inset:0;background:#e7ecde;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10}#loading p{font:26px Georgia}#loading small{color:#829078}dialog{border:1px solid white;border-radius:22px;background:var(--paper);color:var(--ink);padding:32px;width:min(620px,90vw);max-height:80vh;box-shadow:0 30px 100px #263e3433}dialog::backdrop{background:#233c3355;backdrop-filter:blur(6px)}dialog h2{margin:0 0 15px}dialog p{line-height:1.8;font-size:14px}#close-modal{float:right;border:0;background:none;font-size:24px}dialog a{color:var(--green)}#toast{position:fixed;left:50%;bottom:85px;transform:translateX(-50%);background:var(--green);color:white;padding:14px 24px;border-radius:12px;z-index:20;display:none;max-width:90vw}.response{padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.response p{font-size:12px}.notice{background:#edf0e3;padding:12px;border-radius:10px;font-size:11px;line-height:1.6}button:disabled{opacity:.6;cursor:wait}
@media(min-width:1600px){aside{right:50px;width:365px}.intro{top:180px}}@media(max-width:950px){header{padding:20px}.intro{top:110px;left:22px}.intro h1{font-size:43px}.intro p,.intro-tag{display:none}aside{width:295px;right:18px;top:115px;padding:20px}.scene-caption{left:22px}.view-tools{left:30%}footer{padding:18px}footer .divider,footer .prototype{display:none}footer>div{max-width:190px;line-height:1.7}}@media(max-width:650px){header{padding:15px}.brand{font-size:24px}.brand small{font-size:7px}.symbol{font-size:35px}nav{gap:0}nav button{padding:9px 11px;font-size:10px}.nav span,.icon{display:none}.intro{top:97px}.intro h1{font-size:37px;margin-top:13px}.intro .eyebrow{font-size:8px}.scene-caption{display:none}aside{top:auto;bottom:54px;left:12px;right:12px;width:auto;max-height:36dvh;border-radius:18px;padding:18px}aside h2{font-size:24px;margin-top:8px}aside>p{margin-bottom:8px}.panel-tabs{margin-bottom:10px}footer{padding:13px 17px;font-size:9px;height:48px}footer>div{max-width:none}footer>div .mouse{display:none}footer button{font-size:9px}.view-tools{bottom:calc(36dvh + 65px);left:auto;right:12px}.view-tools button{padding:5px 8px}.view-tools span{display:none}.marker{width:29px;height:29px}#toast{bottom:50px}.vignette{background:linear-gradient(0deg,#e7ebdf 3%,transparent 60%)}}
.intro{transition:opacity .35s ease,transform .35s ease}.spot-focused .intro{opacity:0;transform:translateY(-8px)}@media(prefers-reduced-motion:reduce){.intro{transition:none}}
