#root{width:100vw;height:100vh;margin:0;padding:0;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.App{position:relative;width:100vw;height:100vh;overflow:hidden}.apple-interaction-ui{position:absolute;top:0;left:0;z-index:10;pointer-events:none}.interaction-trigger-area{position:absolute;top:0;left:0;width:80px;height:80px;pointer-events:auto;cursor:pointer;z-index:1}.interaction-trigger-area:before{content:"";position:absolute;top:20px;left:20px;width:8px;height:8px;background:#ffffffb3;border-radius:50%;transition:all .3s cubic-bezier(.16,1,.3,1);opacity:.4;box-shadow:0 2px 8px #0000001a}.interaction-trigger-area:hover:before{opacity:1;transform:scale(1.3);background:#ffffffe6}.interaction-hint{position:absolute;top:25px;left:25px;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none;z-index:2;animation:hintPulse 2s ease-in-out infinite}.hint-icon{font-size:24px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));animation:hintBounce 1.5s ease-in-out infinite}.hint-text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12px;font-weight:600;color:#ffffffe6;text-shadow:0 1px 2px rgba(0,0,0,.3);letter-spacing:.5px;text-transform:uppercase}@keyframes hintPulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@keyframes hintBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.interaction-container{position:absolute;top:20px;left:20px;display:flex;gap:12px;padding:16px;background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:20px;border:1px solid rgba(255,255,255,.3);box-shadow:0 8px 32px #0000001a,0 2px 8px #0000000d;pointer-events:auto;opacity:0;transform:translateY(-10px) scale(.95);transition:all .4s cubic-bezier(.16,1,.3,1);visibility:hidden}.interaction-container.visible{opacity:1;transform:translateY(0) scale(1);visibility:visible}.apple-button{position:relative;padding:0;border:none;background:none;cursor:pointer;border-radius:16px;overflow:hidden;transition:all .3s cubic-bezier(.16,1,.3,1);min-width:120px;height:48px;display:flex;align-items:center;justify-content:center}.apple-button:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffe6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.4);border-radius:16px;transition:all .3s cubic-bezier(.16,1,.3,1)}.apple-button:hover:before{background:#fffffff2;transform:scale(1.02);box-shadow:0 8px 24px #0000001f,0 4px 12px #00000014}.apple-button:active:before{transform:scale(.98);transition:transform .1s ease}.apple-button.disabled:before{background:#0000000d;border-color:#0000001a;cursor:not-allowed}.apple-button.loading:before{background:#fffc}.button-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:4px;pointer-events:none}.button-icon{font-size:20px;line-height:1;transition:transform .2s ease}.apple-button:hover .button-icon{transform:scale(1.1)}.button-text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12px;font-weight:600;color:#1d1d1f;letter-spacing:-.2px;line-height:1;transition:color .2s ease}.apple-button.disabled .button-text{color:#86868b}.feed-button:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#34c7591a,#30d1581a);border-radius:16px;opacity:0;transition:opacity .3s ease}.feed-button:hover:after{opacity:1}.pet-button:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ff95001a,#ff3b301a);border-radius:16px;opacity:0;transition:opacity .3s ease}.pet-button:hover:after{opacity:1}.buy-button:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#007aff1a,#5856d61a);border-radius:16px;opacity:0;transition:opacity .3s ease}.buy-button:hover:after{opacity:1}.buy-button.no-stripe:after{background:linear-gradient(135deg,#8e8e931a,#6363661a)}.loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid rgba(0,122,255,.2);border-top:2px solid #007AFF;border-radius:50%;animation:spin 1s linear infinite;z-index:2}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.apple-button.loading .button-content{opacity:.3}@media (max-width: 768px){.interaction-trigger-area{width:60px;height:60px}.interaction-trigger-area:before{top:15px;left:15px;width:6px;height:6px}.interaction-hint{top:20px;left:20px}.hint-icon{font-size:20px}.hint-text{font-size:11px}.interaction-container{top:15px;left:15px;padding:12px;gap:8px;border-radius:16px}.apple-button{min-width:100px;height:44px;border-radius:14px}.apple-button:before{border-radius:14px}.button-icon{font-size:18px}.button-text{font-size:11px}}@media (max-width: 480px){.interaction-trigger-area{width:50px;height:50px}.interaction-trigger-area:before{top:12px;left:12px;width:5px;height:5px}.interaction-hint{top:15px;left:15px}.hint-icon{font-size:18px}.hint-text{font-size:10px}.interaction-container{top:10px;left:10px;flex-direction:column;gap:8px;padding:10px}.apple-button{min-width:120px;height:40px}.button-content{flex-direction:row;gap:8px}.button-icon{font-size:16px}.button-text{font-size:12px}}.interaction-ui{position:absolute;top:20px;left:20px;z-index:10;display:flex;gap:10px}.interaction-ui button{padding:10px 20px;font-size:16px;cursor:pointer;background-color:#fff;border:1px solid #cccccc;border-radius:5px}.fallback-banner{position:absolute;top:0;left:0;width:100%;background-color:#ffc107;color:#333;text-align:center;padding:5px 0;z-index:20;font-size:14px}.fish-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fish-modal{background:#fffffff2;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border-radius:24px;width:100%;max-width:600px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 40px #0000001a,0 0 0 1px #fff3;animation:modalSlideIn .4s cubic-bezier(.16,1,.3,1);border:1px solid rgba(255,255,255,.3)}@keyframes modalSlideIn{0%{transform:scale(.95) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.fish-modal-header{display:flex;align-items:center;padding:32px 32px 24px;border-bottom:1px solid rgba(0,0,0,.08);position:relative}.fish-avatar-container{position:relative;margin-right:20px}.fish-avatar{width:72px;height:72px;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:32px;box-shadow:0 8px 16px #0000001a,0 0 0 1px #fff3;position:relative;overflow:hidden}.fish-avatar:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#fff3,#fff0 50%);pointer-events:none}.fish-status-indicator{position:absolute;top:-2px;right:-2px;width:16px;height:16px;background:#34c759;border-radius:50%;border:3px solid rgba(255,255,255,.95);box-shadow:0 2px 4px #0000001a}.fish-header-content{flex:1}.fish-name{margin:0 0 4px;font-size:28px;font-weight:700;color:#1d1d1f;letter-spacing:-.5px;line-height:1.2}.fish-species{margin:0 0 6px;font-size:16px;color:#86868b;font-weight:500}.fish-nickname{margin:0;font-size:18px;color:#007aff;font-weight:600;font-style:italic}.modal-close-btn{background:#0000000d;border:none;cursor:pointer;color:#86868b;padding:12px;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-close-btn:hover{background:#0000001a;color:#1d1d1f;transform:scale(1.05)}.fish-modal-content{padding:0 32px 32px}.modal-section{margin-bottom:32px}.section-header{display:flex;align-items:center;margin-bottom:20px;gap:12px}.section-icon{font-size:24px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#007aff1a;border-radius:12px}.section-header h2{margin:0;font-size:20px;font-weight:600;color:#1d1d1f;letter-spacing:-.3px}.health-stats-grid{display:grid;gap:16px}.health-stat-card{background:#fffc;border-radius:16px;padding:20px;border:1px solid rgba(0,0,0,.06);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.stat-icon{font-size:20px;margin-right:12px}.stat-label{flex:1;font-weight:600;color:#1d1d1f;font-size:16px}.stat-value{font-weight:700;color:#1d1d1f;font-size:16px}.stat-progress{height:8px;background:#00000014;border-radius:4px;overflow:hidden}.stat-progress-fill{height:100%;border-radius:4px;transition:width .6s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 4px #0000001a}.personality-content{display:grid;gap:24px}.primary-personality{background:#fffc;border-radius:16px;padding:20px;border:1px solid rgba(0,0,0,.06);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.personality-label{display:block;font-size:14px;color:#86868b;font-weight:500;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.personality-value{font-size:20px;font-weight:700;color:#1d1d1f;text-transform:capitalize}.personality-traits{background:#fffc;border-radius:16px;padding:20px;border:1px solid rgba(0,0,0,.06);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.traits-label{display:block;font-size:14px;color:#86868b;font-weight:500;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.traits-grid{display:flex;flex-wrap:wrap;gap:8px}.trait-pill{background:linear-gradient(135deg,#007aff,#5856d6);color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:600;text-transform:capitalize;box-shadow:0 2px 8px #007aff4d}.personality-metrics{background:#fffc;border-radius:16px;padding:20px;border:1px solid rgba(0,0,0,.06);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:grid;gap:16px}.personality-metric{display:flex;align-items:center;gap:12px}.metric-label{min-width:100px;font-weight:600;color:#1d1d1f;font-size:14px}.metric-bar{flex:1;height:6px;background:#00000014;border-radius:3px;overflow:hidden}.metric-fill{height:100%;background:linear-gradient(90deg,#007aff,#5856d6);border-radius:3px;transition:width .6s cubic-bezier(.16,1,.3,1)}.metric-value{min-width:45px;text-align:right;font-weight:700;color:#1d1d1f;font-size:14px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.info-card{background:#fffc;border-radius:16px;padding:20px;border:1px solid rgba(0,0,0,.06);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.info-label{display:block;font-size:14px;color:#86868b;font-weight:500;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:18px;font-weight:600;color:#1d1d1f}.history-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.history-card{background:#fffc;border-radius:16px;padding:20px;border:1px solid rgba(0,0,0,.06);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.history-label{display:block;font-size:14px;color:#86868b;font-weight:500;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.history-value{font-size:16px;font-weight:600;color:#1d1d1f}.achievements-container{background:#fffc;border-radius:16px;padding:20px;border:1px solid rgba(0,0,0,.06);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.achievements-grid{display:flex;flex-wrap:wrap;gap:12px}.achievement-badge{background:linear-gradient(135deg,#ff9500,#ff2d92);color:#fff;padding:10px 16px;border-radius:20px;font-size:14px;font-weight:600;box-shadow:0 4px 12px #ff95004d}.no-achievements{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 20px;color:#86868b}.no-achievements-icon{font-size:48px;opacity:.5}.no-achievements-text{font-size:16px;font-weight:500}.bio-content{background:#fffc;border-radius:16px;padding:20px;border:1px solid rgba(0,0,0,.06);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.fish-bio{margin:0;font-size:16px;line-height:1.6;color:#1d1d1f;font-weight:400}.info-item{font-size:14px;color:#555}.info-item strong{color:#333}.fish-history{display:grid;gap:10px}.history-item{font-size:14px;color:#555;display:flex;justify-content:space-between;align-items:center}.history-item strong{color:#333}.achievements{display:flex;flex-wrap:wrap;gap:8px}.achievement-badge{background:#fff3e0;color:#f57c00;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:500;border:1px solid #FFB74D}.no-achievements{color:#999;font-style:italic;font-size:14px}.fish-bio{margin:0;font-size:14px;color:#555;line-height:1.6;background:#f8f9fa;padding:15px;border-radius:10px;border-left:4px solid #4CAF50}@media (max-width: 768px){.fish-modal{margin:10px;max-height:90vh;border-radius:20px}.fish-modal-header{padding:24px 24px 20px}.fish-modal-content{padding:0 24px 24px}.fish-name{font-size:24px}.fish-avatar{width:60px;height:60px;font-size:28px}.info-grid,.history-grid{grid-template-columns:1fr}.personality-metrics{gap:12px}.metric-label{min-width:80px;font-size:13px}.section-header h2{font-size:18px}.section-icon{width:36px;height:36px;font-size:20px}}@media (max-width: 480px){.fish-modal-overlay{padding:10px}.fish-modal{margin:0;border-radius:16px}.fish-modal-header{padding:20px 20px 16px}.fish-modal-content{padding:0 20px 20px}.fish-name{font-size:22px}.fish-avatar{width:52px;height:52px;font-size:24px}.modal-close-btn{width:40px;height:40px;padding:8px}.health-stat-card,.primary-personality,.personality-traits,.personality-metrics,.info-card,.history-card,.achievements-container,.bio-content{padding:16px;border-radius:12px}.trait-pill,.achievement-badge{padding:6px 12px;font-size:13px}}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;padding:0;width:100vw;height:100vh;min-width:320px;overflow:hidden}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
