html,body{height:100%;padding:0;margin:0;overflow:hidden}#root,.scene-container{width:100%;height:100%;height:100dvh}.scene-container canvas{display:block;width:100%;height:100%;touch-action:none}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;background:#efdcc5;color:#24160f;font-family:Courier New,Courier,monospace}.loading-panel{width:min(520px,76vw);text-align:center}.loading-title{margin-bottom:18px;font-size:clamp(24px,5vw,44px);font-weight:900;letter-spacing:.08em;text-shadow:3px 3px 0 #ff7043}.loading-bar{height:38px;padding:5px;border:5px solid #24160f;background:#fff5e9;box-shadow:8px 8px #24160f;box-sizing:border-box;overflow:hidden}.loading-bar-fill{height:100%;background:repeating-linear-gradient(90deg,#ff7043 0,#ff7043 24px,#24160f 24px,#24160f 28px);transition:width .12s steps(4,end)}.loading-percentage{margin-top:18px;font-size:20px;font-weight:900}.point{position:absolute;top:50%;left:50%;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.point .text{position:absolute;padding:20px;border-radius:4px;width:200px;background:#00000080;color:#fff;font-family:Helvetica,Arial,Helvetica,sans-serif;text-align:center;font-weight:100;font-size:14px;opacity:0;transition:opacity 1s;pointer-events:none}.point .label:hover+.text{opacity:1}.point.overlay .text{opacity:0}.point.visible .label{transform:scale(1);pointer-events:auto}.point .label{position:absolute;top:-50px;left:-20px;width:40px;height:40px;border-radius:50%;background:#00000080;color:#fff;font-family:Helvetica,Arial,Helvetica,sans-serif;text-align:center;line-height:40px;font-weight:100;font-size:14px;cursor:help;transform:scale(0);transition:transform .3s}.point.overlay{background:#00000090;color:#fff;font-family:Helvetica,Arial,Helvetica,sans-serif;position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;height:100dvh;z-index:100;overflow-x:hidden;transform:none!important;pointer-events:auto}.info{opacity:0;pointer-events:none}.point.overlay .info{top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:clamp(20px,3vh,36px) clamp(48px,10vw,170px) clamp(32px,5vh,56px);opacity:1;color:#fff;font-family:Helvetica,Arial,Helvetica,sans-serif;position:absolute;font-size:18px;line-height:1.5;text-shadow:-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,1px 1px 0 #000;max-height:none;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;box-sizing:border-box;pointer-events:auto;-webkit-user-select:text;-moz-user-select:text;user-select:text}a{text-decoration:none;font-weight:500;color:#add8e6;text-shadow:-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,1px 1px 0 #000}strong a{font-weight:900!}img{border-radius:10px}.info img{max-width:100%;height:auto}.info>img{display:block}.face-morph-table{width:100%;max-width:640px;table-layout:fixed}.face-morph-table td{padding:0 8px}.face-morph-table img{display:block;width:100%;max-width:300px;margin-inline:auto}.smaller{height:20%;width:20%}.company{color:orange}.topic{color:#6ec6a4}.projects{color:#add8e6}.question{color:#fff}button{background-color:#add8e6;border-radius:10px;color:#000;text-align:center;text-decoration:none;display:inline-block}.large{padding:10px;font-size:16px;margin:4px 2px}.exit-button-top{display:block;margin-left:auto}.small{margin:2px 1px;padding:5px;font-size:12px}@media (max-width: 720px){.loading-panel{width:calc(100vw - 48px)}.loading-title{font-size:clamp(22px,8vw,34px);text-shadow:2px 2px 0 #ff7043}.loading-bar{height:34px;border-width:4px;box-shadow:6px 6px #24160f}.point .text{left:50%;width:min(180px,calc(100vw - 48px));padding:12px;transform:translate(-50%)}.point .label{top:-48px;width:44px;height:44px;line-height:44px}.point.overlay .info{padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));font-size:16px;line-height:1.55}.point.overlay .info h1{margin-top:20px;font-size:32px}.point.overlay .info h2{font-size:22px;line-height:1.25}.point.overlay .info a{overflow-wrap:anywhere}.point.overlay .info ul,.point.overlay .info ol{padding-left:24px}.point.overlay .info hr{margin-block:28px}.face-morph-table,.face-morph-table tbody,.face-morph-table tr,.face-morph-table td{display:block;width:100%}.face-morph-table td{padding:0 0 16px}.face-morph-table img{width:min(100%,300px)}.smaller{width:min(100%,360px);height:auto}.exit-button{min-width:72px;min-height:44px;padding:10px 14px;font-size:16px;touch-action:manipulation}}@media (hover: none) and (pointer: coarse){.point.visible:not(.overlay) .text{opacity:1}}
