.gr-scene{position:relative;min-height:100dvh;overflow:hidden;isolation:isolate;--gr-bg-fallback: #17415c;--gr-ink: #E8F1F5;--gr-line: #78AFC2;background:var(--gr-bg-fallback);color:var(--gr-ink)}.gr-scene__bg-image{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center 80%;pointer-events:none;animation:gr-bg-breathe 100s ease-in-out infinite}@keyframes gr-bg-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.015)}}.gr-scene__texture{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");background-size:180px 180px}.gr-scene__creatures--distant{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none}.gr-scene__creatures--foreground{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none}.gr-creature{position:absolute;will-change:transform;animation-timing-function:ease-in-out;animation-iteration-count:infinite}.gr-creature__art{display:block;width:100%;height:auto}.gr-creature__art--flip{transform:scaleX(-1)}.gr-creature__breathe{animation-timing-function:ease-in-out;animation-iteration-count:infinite}.gr-depth-far{filter:brightness(.78) saturate(.82) contrast(.9)}.gr-depth-mid{filter:brightness(.86) saturate(.9) contrast(.94)}.gr-depth-near{filter:brightness(.92) saturate(.94) contrast(.97)}.gr-anim-drift{animation-name:gr-drift-h-sine}@keyframes gr-drift-h-sine{0%{transform:translate(0)}25%{transform:translate(calc(var(--gr-dx) * .55),calc(var(--gr-dy) * -1))}50%{transform:translate(var(--gr-dx))}75%{transform:translate(calc(var(--gr-dx) * .55),var(--gr-dy))}to{transform:translate(0)}}.gr-anim-cross{animation-name:gr-cross-viewport}@keyframes gr-cross-viewport{0%,4%{transform:translate(-16vw);opacity:0}8%{opacity:var(--gr-peak-opacity, .5)}44%{opacity:var(--gr-peak-opacity, .5)}48%,to{transform:translate(116vw);opacity:0}}.gr-anim-sway{animation-name:gr-sway}@keyframes gr-sway{0%,to{transform:rotate(calc(var(--gr-rotate-max, 2deg) * -1))}50%{transform:rotate(var(--gr-rotate-max, 2deg))}}.gr-anim-breathe{animation-name:gr-breathe}@keyframes gr-breathe{0%,to{transform:scale(1)}50%{transform:scale(calc(1 + var(--gr-breathe-amount, .02)))}}.gr-anim-rise{animation-name:gr-rise-drift}@keyframes gr-rise-drift{0%,to{transform:translate(0)}33%{transform:translate(calc(var(--gr-dx) * -1),calc(var(--gr-dy) * -1))}66%{transform:translate(var(--gr-dx),calc(var(--gr-dy) * -.4))}}@media (max-width: 640px){.gr-creature--hide-mobile{display:none}}.gr-clusters{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.gr-cluster{position:absolute;bottom:calc(var(--nav-height, 60px) - clamp(10px,2.4vh,24px));transform:translate(var(--gr-parallax-x, 0px),var(--gr-parallax-y, 0px));transition:transform .6s var(--ease-out, ease-out)}.gr-cluster--left{left:clamp(-28px,-1.4vw,-6px);width:clamp(170px,min(21vw,38vh),320px)}.gr-cluster--right{right:clamp(-24px,-1.2vw,-6px);width:clamp(140px,min(17vw,33vh),260px)}.gr-cluster__flip{transform:scaleX(-1)}.gr-cluster__art{display:block;width:100%;height:auto;max-width:none;opacity:.9;filter:brightness(.82) saturate(.88) contrast(.94);-webkit-mask-image:linear-gradient(to top,transparent 0%,#000 16%);mask-image:linear-gradient(to top,transparent 0%,#000 16%)}.gr-cluster__kelp{transform-origin:bottom center}@media (max-width: 640px){.gr-cluster--left{width:150px}.gr-cluster--right{width:118px}}.gr-scene__doodles{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3}.gr-visitor-doodle-motion{position:absolute;width:0;height:0;animation:var(--gr-motion-duration, 13s) ease-in-out var(--gr-motion-delay, 0s) infinite;will-change:transform}.gr-visitor-doodle{position:absolute;top:0;left:0;transform:translate(-50%,-50%) rotate(var(--gr-doodle-rotate, 0deg));padding:0;border:0;background:transparent;cursor:pointer;opacity:var(--gr-doodle-opacity, 1)}.gr-visitor-doodle__body{display:block;width:100%;height:100%;animation:var(--gr-body-duration, 10s) ease-in-out var(--gr-motion-delay, 0s) infinite;will-change:transform}.gr-visitor-doodle-motion--fish{animation-name:gr-doodle-swim}.gr-visitor-doodle-motion--fish .gr-visitor-doodle__body{animation-name:gr-doodle-turn}@keyframes gr-doodle-swim{0%{transform:translate(0) rotate(0)}12%{transform:translate(calc(var(--gr-swim-dx) * .2),calc(var(--gr-swim-dy) * -1)) rotate(-1.5deg)}24%{transform:translate(calc(var(--gr-swim-dx) * .5)) rotate(0)}36%{transform:translate(calc(var(--gr-swim-dx) * .8),var(--gr-swim-dy)) rotate(1.5deg)}46%,50%{transform:translate(var(--gr-swim-dx)) rotate(0)}62%{transform:translate(calc(var(--gr-swim-dx) * .8),var(--gr-swim-dy)) rotate(1.5deg)}74%{transform:translate(calc(var(--gr-swim-dx) * .5)) rotate(0)}86%{transform:translate(calc(var(--gr-swim-dx) * .2),calc(var(--gr-swim-dy) * -1)) rotate(-1.5deg)}96%,to{transform:translate(0) rotate(0)}}@keyframes gr-doodle-turn{0%,45%{transform:scaleX(var(--gr-face-out, 1))}50%,95%{transform:scaleX(var(--gr-face-back, -1))}to{transform:scaleX(var(--gr-face-out, 1))}}.gr-visitor-doodle-motion--jellyfish{animation-name:gr-doodle-jelly-drift}.gr-visitor-doodle-motion--jellyfish .gr-visitor-doodle__body{animation-name:gr-doodle-jelly-pulse;transform-origin:50% 30%}@keyframes gr-doodle-jelly-drift{0%,to{transform:translate(0)}30%{transform:translate(6px,-16px)}55%{transform:translate(-4px,-24px)}80%{transform:translate(-7px,-9px)}}@keyframes gr-doodle-jelly-pulse{0%,to{transform:scale(1)}30%{transform:scale(.94,1.05)}60%{transform:scale(1.03,.98)}}.gr-visitor-doodle-motion--star{animation-name:gr-doodle-creep}.gr-visitor-doodle-motion--star .gr-visitor-doodle__body{animation-name:gr-doodle-rock-star}@keyframes gr-doodle-creep{0%,to{transform:translate(0)}50%{transform:translate(9px,-2px)}}@keyframes gr-doodle-rock-star{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}.gr-visitor-doodle-motion--shell{animation-name:gr-doodle-settle}.gr-visitor-doodle-motion--shell .gr-visitor-doodle__body{animation-name:gr-doodle-rock-shell;transform-origin:50% 85%}@keyframes gr-doodle-settle{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes gr-doodle-rock-shell{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}.gr-visitor-doodle-motion--float{animation-name:gr-doodle-float}.gr-visitor-doodle-motion--float .gr-visitor-doodle__body{animation-name:gr-doodle-sway}@keyframes gr-doodle-float{0%,to{transform:translate(0)}35%{transform:translate(4px,-7px)}70%{transform:translate(-3px,-3px)}}@keyframes gr-doodle-sway{0%,to{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}.gr-visitor-doodle-motion:hover,.gr-visitor-doodle-motion:focus-within,.gr-visitor-doodle-motion:hover .gr-visitor-doodle__body,.gr-visitor-doodle-motion:focus-within .gr-visitor-doodle__body{animation-play-state:paused}.gr-visitor-doodle__bubble{position:absolute;top:-22%;right:-22%;bottom:-22%;left:-22%;border-radius:50%;background:radial-gradient(circle,#e8f1f53d,#e8f1f50d 72%);border:1px solid rgba(232,241,245,.32);pointer-events:none;animation:gr-doodle-bubble 5s var(--ease-out, ease-out) both}@keyframes gr-doodle-bubble{0%{opacity:0;transform:scale(.5)}14%{opacity:1;transform:scale(1.06)}24%{opacity:1;transform:scale(1)}76%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.18)}}.gr-visitor-doodle__art{position:relative;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 1px 3px rgba(6,16,26,.32))}.gr-visitor-doodle__art path{vector-effect:non-scaling-stroke}.gr-visitor-doodle--enter{animation:gr-doodle-enter .8s var(--ease-out, ease-out) both}@keyframes gr-doodle-enter{0%{transform:translate(-50%,-50%) rotate(var(--gr-doodle-rotate, 0deg)) scale(.4);opacity:0}to{transform:translate(-50%,-50%) rotate(var(--gr-doodle-rotate, 0deg)) scale(1);opacity:var(--gr-doodle-opacity, 1)}}.gr-doodle-tooltip{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);width:max-content;max-width:180px;padding:var(--space-2) var(--space-3);background:#0b2c42eb;border:1px solid rgba(232,241,245,.2);border-radius:8px;font-size:12px;line-height:1.4;color:var(--gr-ink);pointer-events:none;z-index:20}.gr-doodle-tooltip__message{margin:0 0 2px;font-style:italic}.gr-doodle-tooltip__byline{margin:0;opacity:.7;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase}.gr-particle-field{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none}.gr-particle{position:absolute;border-radius:50%;background:var(--gr-ink);animation-name:gr-particle-drift;animation-timing-function:ease-in-out;animation-iteration-count:infinite}@keyframes gr-particle-drift{0%,to{transform:translate(0)}50%{transform:translate(var(--gr-pdx, 10px),var(--gr-pdy, -14px))}}.gr-easter-eggs{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none}.gr-easter-egg{position:absolute;color:var(--gr-line);opacity:.55}.gr-easter-egg svg{display:block;width:100%;height:100%}.gr-bubble-field{position:absolute;top:0;right:0;bottom:0;left:0;z-index:7;pointer-events:none}.gr-bubble{position:absolute;bottom:4%;border-radius:50%;border:1px solid rgba(232,241,245,.55);background:radial-gradient(circle at 35% 30%,#ffffff59,#ffffff0a);opacity:0;animation-name:gr-bubble-rise;animation-timing-function:ease-in;animation-iteration-count:infinite}@keyframes gr-bubble-rise{0%{transform:translate(0);opacity:0}10%{opacity:var(--gr-bubble-opacity, .4)}85%{opacity:var(--gr-bubble-opacity, .4)}to{transform:translate(var(--gr-bubble-wobble, 8px),calc(var(--gr-rise, 260px) * -1));opacity:0}}.gr-counter{position:absolute;top:calc(var(--nav-height, 70px) + var(--space-4));right:var(--space-5);z-index:10;margin:0;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:#e8f1f58c}@media (max-width: 640px){.gr-counter{top:calc(var(--nav-height, 58px) + var(--space-3));right:var(--space-3)}}.gr-doodle-button{position:fixed;left:50%;bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:50;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:999px;border:1px solid rgba(232,241,245,.3);background:var(--color-ocean);color:#fff;font-family:var(--font-sans);font-size:14px;font-weight:500;cursor:pointer;transition:transform var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.gr-doodle-button:hover,.gr-doodle-button:focus-visible{background:var(--color-ocean-hover);transform:translate(-50%) translateY(-2px)}.gr-doodle-button:focus-visible{outline:2px solid #fff;outline-offset:3px}.gr-doodle-button__plus{font-size:17px;line-height:1}@media (max-width: 640px){.gr-doodle-button{padding:var(--space-3) var(--space-5);font-size:13px}}.gr-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;background:#0b141a99}.gr-modal{position:fixed;z-index:901;left:50%;top:50%;transform:translate(-50%,-50%);width:min(92vw,480px);max-height:88vh;overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-media);box-shadow:0 24px 60px #0b141a59;padding:var(--space-6);color:var(--text-primary)}.gr-modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.gr-modal__title{font-family:var(--font-serif);font-size:var(--text-h4, 20px);margin:0}.gr-modal__close{border:0;background:transparent;color:var(--text-secondary);font-size:22px;line-height:1;cursor:pointer;padding:var(--space-1) var(--space-2)}.gr-modal__close:hover,.gr-modal__close:focus-visible{color:var(--text-primary)}.gr-modal__close:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.gr-toolbar{display:flex;align-items:center;gap:var(--space-1);margin-bottom:var(--space-3)}.gr-toolbar__btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--text-secondary);border-radius:8px;cursor:pointer;transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.gr-toolbar__btn:hover:not(:disabled){color:var(--text-primary);border-color:var(--color-aqua)}.gr-toolbar__btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.gr-toolbar__btn--active{color:var(--color-ocean);border-color:var(--color-ocean);background:var(--accent-subtle)}.gr-toolbar__btn:disabled{opacity:.35;cursor:default}.gr-toolbar__divider{width:1px;height:20px;background:var(--color-border);margin:0 var(--space-1)}.gr-toolbar__group{position:relative;display:inline-flex}.gr-tool-popover{position:absolute;top:calc(100% + var(--space-2));left:0;z-index:10;display:flex;gap:var(--space-2);padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 12px 28px #0b141a2e}.gr-color-swatch{width:20px;height:20px;border-radius:50%;border:1px solid rgba(11,20,26,.12);cursor:pointer;padding:0;transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.gr-color-swatch:hover{transform:scale(1.1)}.gr-color-swatch:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.gr-color-swatch--trigger{width:16px;height:16px;border-color:#0b141a2e;pointer-events:none}.gr-color-swatch--active{box-shadow:0 0 0 2px var(--color-surface),0 0 0 3.5px var(--color-ocean)}.gr-stamp-swatch{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.gr-stamp-swatch:hover{border-color:var(--color-border)}.gr-stamp-swatch:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.gr-stamp-swatch--active{border-color:var(--color-ocean);background:var(--accent-subtle)}.gr-modal__canvas-wrap{width:100%;aspect-ratio:4 / 3;border:1px solid var(--color-border);border-radius:10px;overflow:hidden;background:var(--color-page-background);margin-bottom:var(--space-4)}.gr-doodle-canvas{width:100%;height:100%;display:block;touch-action:none;cursor:crosshair}.gr-modal__fields{display:flex;gap:var(--space-3);margin-bottom:var(--space-3)}.gr-modal__field{flex:1;display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-secondary)}.gr-modal__field--narrow{flex:0 0 110px}.gr-modal__field input{font-family:var(--font-sans);font-size:14px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--text-primary)}.gr-modal__field input:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.gr-modal__notice{margin:0 0 var(--space-3)}.gr-modal__notice--error{padding:var(--space-2) var(--space-3);border-radius:8px;background:var(--status-error-bg);color:var(--status-error);font-size:13px}.gr-modal__actions{display:flex;justify-content:flex-end;gap:var(--space-3)}.gr-btn{font-family:var(--font-sans);font-size:13px;font-weight:500;padding:var(--space-2) var(--space-5);border-radius:999px;cursor:pointer;transition:opacity var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.gr-btn--ghost{border:1px solid var(--color-border);background:transparent;color:var(--text-secondary)}.gr-btn--ghost:hover{color:var(--text-primary);border-color:var(--color-aqua)}.gr-btn--primary{border:1px solid transparent;background:var(--color-ocean);color:#fff}.gr-btn--primary:hover:not(:disabled){background:var(--color-ocean-hover)}.gr-btn--primary:disabled{background:var(--color-border);color:var(--text-muted);cursor:default}.gr-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}@media (max-width: 640px){.gr-modal{left:0;right:0;top:auto;bottom:0;transform:none;width:100%;max-height:92vh;border-radius:20px 20px 0 0;padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px))}.gr-modal__fields{flex-direction:column}.gr-modal__field--narrow{flex:1}}.gr-release{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;pointer-events:none}.gr-release__doodle{position:fixed;transition:top 1.1s cubic-bezier(.22,1,.36,1),left 1.1s cubic-bezier(.22,1,.36,1),width 1.1s cubic-bezier(.22,1,.36,1),height 1.1s cubic-bezier(.22,1,.36,1),opacity .45s ease}.gr-release__doodle svg{width:100%;height:100%}.gr-release__doodle svg path{vector-effect:non-scaling-stroke}.gr-release__doodle--lift{transition:none}.gr-release__bubble{position:fixed;border-radius:50%;border:1px solid rgba(232,241,245,.6);background:#ffffff26;opacity:0;transform:scale(.4);animation:gr-release-bubble .9s ease-out forwards}@keyframes gr-release-bubble{0%{opacity:0;transform:scale(.3) translateY(0)}30%{opacity:.8;transform:scale(1) translateY(-6px)}to{opacity:0;transform:scale(1.3) translateY(-34px)}}.gr-scene--reduced-motion .gr-creature,.gr-scene--reduced-motion .gr-creature__breathe,.gr-scene--reduced-motion .gr-bubble,.gr-scene--reduced-motion .gr-particle,.gr-scene--reduced-motion .gr-cluster__kelp,.gr-scene--reduced-motion .gr-scene__bg-image,.gr-scene--reduced-motion .gr-visitor-doodle,.gr-scene--reduced-motion .gr-visitor-doodle-motion,.gr-scene--reduced-motion .gr-visitor-doodle__body,.gr-scene--reduced-motion .gr-visitor-doodle--enter{animation:none!important}.gr-scene--reduced-motion .gr-cluster{transition:none!important}.gr-scene--reduced-motion .gr-creature.gr-anim-cross{display:none}.gr-scene--paused .gr-creature,.gr-scene--paused .gr-creature__breathe,.gr-scene--paused .gr-bubble,.gr-scene--paused .gr-particle,.gr-scene--paused .gr-cluster__kelp,.gr-scene--paused .gr-scene__bg-image,.gr-scene--paused .gr-visitor-doodle,.gr-scene--paused .gr-visitor-doodle-motion,.gr-scene--paused .gr-visitor-doodle__body,.gr-scene--paused .gr-visitor-doodle__bubble{animation-play-state:paused}@media (prefers-reduced-motion: reduce){.gr-creature,.gr-creature__breathe,.gr-bubble,.gr-particle,.gr-cluster__kelp,.gr-scene__bg-image,.gr-visitor-doodle,.gr-visitor-doodle-motion,.gr-visitor-doodle__body,.gr-visitor-doodle--enter,.gr-doodle-button,.gr-btn,.gr-toolbar__btn,.gr-color-swatch,.gr-stamp-swatch{animation:none!important;transition:none!important}.gr-cluster,.gr-release__doodle{transition:none!important}.gr-creature.gr-anim-cross{display:none}}
