:root{--sand-50:#fcf8f0;--sand-100:#f2e8d5;--sand-line:#e2d6bf;--ink-900:#13303a;--ink-600:#4b6670;--paper:#fff;--karst:#2f3b36;--lagon:#0e9f9a;--plage:#d9a441;--recif:#e2557a;--jungle:#2f7a4a;--tortue:#5baf8e;--clown:#ff7a1a;--sunset:#ff9f5a;--sunset-dark:#d9773a;--sunset-soft:#ffe3ce;--sunset-ink:#8a3d0a;--deep:#0b5c8a;--alert:#d63b2f;--night:#1e3f4b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{color:var(--ink-900);-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;background:#e9e1d2;margin:0;font:14px/1.4 Plus Jakarta Sans,system-ui,sans-serif}#root{justify-content:center;min-height:100dvh;display:flex}.app{background:var(--sand-50);flex-direction:column;width:100%;max-width:430px;min-height:100dvh;display:flex;position:relative;overflow-x:hidden}@media (width>=600px){.app{box-shadow:0 0 40px #13303a26}}.app.night{background:var(--ink-900)}a{color:var(--deep)}a:hover{color:var(--ink-900)}button{color:inherit;font-family:inherit}:focus-visible{outline:3px solid var(--deep);outline-offset:2px}.fredoka{font-family:Fredoka,sans-serif;font-weight:700}.caveat{font-family:Caveat,cursive;font-weight:700}.muted{color:var(--ink-600)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}h1,h2,p{margin:0}.h2{font-family:Fredoka,sans-serif;font-size:18px;font-weight:600}.btn{cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;height:52px;text-decoration:none;transition:transform .1s,box-shadow .1s;display:flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--sunset);color:var(--ink-900);box-shadow:0 3px 0 var(--sunset-dark);font:700 18px Fredoka,sans-serif}.btn-primary:active:not(:disabled){box-shadow:0 1px 0 var(--sunset-dark);transform:translateY(2px)}.btn-dark{background:var(--ink-900);color:#fff;font:700 17px Fredoka,sans-serif}.btn-outline{border:2px solid var(--deep);color:var(--deep);background:#fff;padding:0 18px;font-size:15px;font-weight:700}.btn-white{height:44px;color:var(--ink-900);background:#fff;border-radius:12px;padding:0 14px;font-size:14px;font-weight:700}.input{border:2px solid var(--sand-line);height:48px;color:var(--ink-900);background:#fff;border-radius:12px;width:100%;min-width:0;padding:0 14px;font:600 16px Plus Jakarta Sans,sans-serif}.input:focus{border-color:var(--lagon);outline:none}.spot-face{width:100px;height:140px;color:var(--ink-900);background:#fff;border:3px solid;border-radius:10px;flex-direction:column;gap:3px;padding:3px 5px 5px;display:flex;overflow:hidden}.spot-photo{border-radius:4px;align-items:flex-end;gap:2px;height:40px;padding:3px;display:flex;position:relative;overflow:hidden}.creature-dot{background:#fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex;position:relative;box-shadow:0 1px 2px #00000038}.spot-mission{border-top:1px dashed var(--sand-line);border-bottom:1px dashed var(--sand-line);align-items:center;gap:1px;height:20px;display:flex}.req-dot{background:var(--sand-100);border-radius:50%;justify-content:center;align-items:center;width:11px;height:11px;display:inline-flex}.dest-tag{background:var(--ink-900);color:#fff;border-radius:3px;flex-shrink:0;padding:0 3px;font-weight:700}.card-back{background:var(--karst);border:3px solid #fff;border-radius:10px;width:100px;height:140px;position:relative;overflow:hidden}.polaroid{width:140px;height:100px;color:var(--ink-900);background:#fff;border-radius:3px;flex-direction:column;padding:6px 6px 0;display:flex;box-shadow:0 2px 4px #13303a29,0 6px 14px #13303a1a}.polaroid-photo{background:var(--sunset);border-radius:2px;justify-content:center;align-items:center;gap:4px;height:62px;display:flex;position:relative;overflow:hidden}.polaroid-name{text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px;line-height:14px;display:-webkit-box;overflow:hidden}.pk-flip{animation:.3s ease-in-out both pk-flip}@keyframes pk-flip{0%{transform:rotateY(90deg)}}.pk-pop{animation:.6s ease-out both pk-pop}@keyframes pk-pop{0%{opacity:0;transform:translate(-50%,8px)scale(.6)}60%{opacity:1;transform:translate(-50%,-4px)scale(1.1)}to{transform:translate(-50%)scale(1)}}.pk-fade{animation:.35s cubic-bezier(.2,.8,.2,1) both pk-fade}@keyframes pk-fade{0%{opacity:0;transform:translateY(12px)}}.pk-swim{animation:3.2s ease-in-out infinite pk-swim}@keyframes pk-swim{0%,to{transform:translateY(0)rotate(-4deg)}50%{transform:translateY(-6px)rotate(4deg)}}.pk-sail{animation:6s ease-in-out infinite alternate pk-sail}@keyframes pk-sail{0%{transform:translate(-20px)}to{transform:translate(20px)}}.hscroll{scrollbar-width:none;display:flex;overflow-x:auto}.hscroll::-webkit-scrollbar{display:none}.pier{background:#b98a5a repeating-linear-gradient(90deg,#0000 0 46px,#8a5a3b 46px 48px);border-radius:3px;height:10px;margin:0 16px}.chip{background:#fff;border-radius:999px;align-items:center;gap:3px;padding:4px 8px;font-size:13px;font-weight:700;display:inline-flex}.empty-slot{border:2px dashed var(--sand-line);border-radius:8px;flex-shrink:0;width:60px;height:84px}.overlay{z-index:50;background:#13303a8c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--sand-50);width:100%;max-width:430px;padding:10px 16px calc(20px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;flex-direction:column;gap:14px;max-height:92dvh;animation:.3s cubic-bezier(.2,.8,.2,1) both pk-fade;display:flex;overflow-y:auto}.sheet-grip{background:var(--sand-line);border-radius:3px;flex-shrink:0;align-self:center;width:40px;height:5px}.toast{background:var(--ink-900);color:#fff;z-index:60;border-radius:12px;max-width:90vw;padding:10px 16px;font-size:14px;font-weight:600;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #00000040}.toast.error{background:var(--alert)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}}
