:root{color-scheme:dark;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f1f6eb;background:#063d48;font-synthesis:none}*{box-sizing:border-box}html,body{margin:0;min-height:100%;overflow:hidden}main{height:100svh;min-height:440px;position:relative;isolation:isolate}#ocean{position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 65% 35%,#287b83,#063d48 75%)}#ocean canvas{display:block;width:100%;height:100%;touch-action:none;outline:none}main:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#042c364d,transparent 60%),linear-gradient(0deg,#032c3766,transparent 22%)}header{position:absolute;top:36px;left:44px;right:44px;display:flex;justify-content:space-between;align-items:center}a{color:inherit;text-decoration:none}.brand{font-weight:800;font-size:29px;letter-spacing:-1.8px;display:flex;align-items:center;gap:18px}.brand span{font-size:10px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;padding-left:18px;border-left:1px solid #d2e9df55}.intro{position:absolute;left:7%;top:23%;pointer-events:none}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:2.5px;display:flex;gap:10px;align-items:center}.eyebrow span{width:5px;height:5px;background:#a8dbc1;border-radius:50%}h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(48px,6.6vw,104px);line-height:1.01;letter-spacing:-3px;margin:27px 0 23px}h1 em{font-weight:400;color:#a4dbc4}.description{font-size:13px;line-height:1.9;color:#dfede5b0}footer{position:absolute;bottom:32px;left:44px;right:44px;display:flex;justify-content:space-between;align-items:center;gap:24px}.hint{display:flex;align-items:center;gap:14px;font-size:11px;color:#d0e5ddaa;line-height:1.8}.hint>span:first-child{font-size:27px;font-weight:200}.hint small{font-size:10px;color:#c0dfd580}.controls{display:flex;border:1px solid #c4e6db30;background:#07384485;backdrop-filter:blur(12px);border-radius:40px;padding:5px;gap:4px}button{font:inherit;color:#eff7ef;border:0;background:transparent;cursor:pointer;font-size:11px;padding:13px 18px;border-radius:30px;min-height:42px;transition:background .2s}button:hover{background:#e1fff018}button:focus-visible,a:focus-visible{outline:2px solid #c0f9d9;outline-offset:5px}button:disabled{opacity:.45;cursor:wait}#rotation{background:#a0d6bf20}#rotation span{margin-right:6px}.signature{font-size:10px;color:#c5dcd17d;letter-spacing:.2px}#loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:16px;font-size:12px;color:#deeee3;white-space:nowrap}.loader{width:28px;height:28px;border:1px solid #c5ebdc33;border-top-color:#b0e5cb;border-radius:50%;animation:turn 1.5s linear infinite}progress{width:120px;height:2px;appearance:none;border:0;background:#bae3d630}progress::-webkit-progress-bar{background:#bae3d630}progress::-webkit-progress-value{background:#b2e2c7}progress::-moz-progress-bar{background:#b2e2c7}#loading[hidden],#error[hidden]{display:none}#error{position:absolute;top:50%;left:65%;transform:translate(-50%,-50%);width:min(360px,85vw);padding:26px;border:1px solid #bce8d544;background:#06323eef;border-radius:16px;font-size:14px;line-height:1.6}#error p{font-size:12px;color:#c2ddd0}#error button{background:#a0d6bf30}.no-script{position:absolute;top:55%;left:55%;padding:24px;background:#06323e}@keyframes turn{to{transform:rotate(360deg)}}@media(max-width:800px){header{top:24px;left:24px;right:24px}.brand{font-size:26px;gap:12px}.brand span{display:none}.intro{top:14%;left:24px}h1{font-size:56px;letter-spacing:-2px;margin:18px 0}.eyebrow{font-size:8px;letter-spacing:1.8px}.description{font-size:11px;line-height:1.7}footer{bottom:20px;left:20px;right:20px;flex-wrap:wrap;gap:14px}.hint{font-size:10px}.hint small{display:none}.signature{display:none}.controls{margin-left:auto}button{padding:11px 13px;font-size:10px}#reset span{display:none}#reset{font-size:18px;min-width:42px}#error{top:61%;left:50%}}@media(prefers-reduced-motion:reduce){.loader{animation:none}*{transition:none!important}}
