/* Fever Fishing · sign-in, account and invite screens */
.ffa-lock{overflow:hidden}
.ffa-overlay{position:fixed;inset:0;z-index:2000;background:rgba(6,22,36,.55);display:flex;align-items:flex-end;justify-content:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:ffaIn .2s ease}
@keyframes ffaIn{from{opacity:0}to{opacity:1}}
.ffa-sheet{position:relative;width:100%;max-width:520px;max-height:100%;overflow-y:auto;background:#fbf8f3;border-radius:22px 22px 0 0;padding:0 0 calc(22px + env(safe-area-inset-bottom));box-shadow:0 -10px 40px rgba(0,0,0,.25);font:16px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,sans-serif;color:#10243f;animation:ffaUp .25s ease}
@keyframes ffaUp{from{transform:translateY(30px)}to{transform:none}}
.ffa-sheet.ffa-full{min-height:100%;border-radius:0;background:#fbf8f3}
@media(min-width:560px){.ffa-overlay{align-items:center}.ffa-sheet,.ffa-sheet.ffa-full{border-radius:22px;min-height:0;max-height:94vh}}
.ffa-hero{position:relative;height:min(52vh,400px);color:#fff;overflow:hidden;background:#17405a}
.ffa-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%}
.ffa-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,28,48,.35) 0%,rgba(8,28,48,0) 30%,rgba(8,28,48,.2) 55%,rgba(8,28,48,.85) 100%)}
.ffa-brand{position:absolute;z-index:1;top:calc(18px + env(safe-area-inset-top));left:18px;display:flex;align-items:center;gap:10px}
.ffa-brand img{width:48px;height:48px;border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.3)}
.ffa-brand b{display:block;font:800 22px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.02em;text-shadow:0 1px 6px rgba(0,0,0,.35)}
.ffa-brand small{display:block;font-size:10px;letter-spacing:.22em;text-transform:uppercase;margin-top:4px;text-shadow:0 1px 6px rgba(0,0,0,.4)}
.ffa-hero-copy{position:absolute;z-index:1;left:18px;right:18px;bottom:18px}
.ffa-hero-copy h1{margin:0 0 6px;font:400 30px/1.08 Georgia,"Times New Roman",serif;text-shadow:0 2px 10px rgba(0,0,0,.4)}
.ffa-hero-copy p{margin:0;font-size:15px;color:#e8f1f6;text-shadow:0 1px 6px rgba(0,0,0,.5)}
.ffa-top{display:flex;justify-content:space-between;align-items:center;padding:12px 12px 0;min-height:44px}
.ffa-sheet.ffa-full .ffa-top{position:absolute;top:calc(6px + env(safe-area-inset-top));right:0;left:auto;z-index:3;padding:12px}
.ffa-sheet.ffa-full .ffa-top>span{display:none}
.ffa-back,.ffa-x{width:40px;height:40px;border:0;border-radius:50%;background:#eef2f4;color:#17405a;display:grid;place-items:center;font-size:17px;cursor:pointer}
.ffa-sheet.ffa-full .ffa-x{background:rgba(255,255,255,.85)}
.ffa-back svg{width:22px;height:22px}
.ffa-body{padding:6px 20px 4px}
.ffa-sheet.ffa-full .ffa-body{padding-top:18px}
.ffa-body h2{margin:4px 0 6px;font:400 27px/1.15 Georgia,"Times New Roman",serif;color:#10243f}
.ffa-sub{margin:0 0 16px;color:#4d6676;font-size:15px}
.ffa-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:54px;margin:0 0 10px;border:1.5px solid #d3dee4;border-radius:14px;background:#fff;color:#10243f;font:650 16px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;text-decoration:none;box-sizing:border-box;padding:0 14px}
.ffa-btn svg{width:22px;height:22px;flex:0 0 auto}
.ffa-btn.primary{background:linear-gradient(160deg,#f2a64a,#d9692f);border-color:transparent;color:#fff;box-shadow:0 6px 16px rgba(217,105,47,.3)}
.ffa-btn.apple{background:#000;border-color:#000;color:#fff}
.ffa-btn.google{background:#fff}
.ffa-btn.ghost{background:transparent}
.ffa-btn.sm{min-height:44px;font-size:14.5px;margin:0}
.ffa-btn:disabled{opacity:.7}
.ffa-spin{width:20px;height:20px;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:ffaSpin .8s linear infinite}
.ffa-btn:not(.primary) .ffa-spin{border-color:#c9d6dd;border-top-color:#17405a}
@keyframes ffaSpin{to{transform:rotate(360deg)}}
.ffa-later,.ffa-link{display:block;margin:6px auto 0;border:0;background:none;color:#2a6f88;font:600 15px -apple-system,BlinkMacSystemFont,sans-serif;padding:10px;cursor:pointer}
.ffa-legal{margin:8px 0 2px;font-size:12.5px;color:#6a7f8c;text-align:center}
.ffa-legal a,.ffa-check a{color:#17405a;font-weight:650}
.ffa-test{margin:0 0 14px;padding:8px 12px;border-radius:10px;background:#fff4dc;color:#8a5a12;font-size:13px;font-weight:650;text-align:center}
.ffa-testcode{margin:0 0 14px;padding:12px;border-radius:12px;background:#fff4dc;color:#6b4710;font-size:14px;text-align:center}
.ffa-testcode b{font-size:20px;letter-spacing:.12em;color:#10243f}
.ffa-phone{display:flex;gap:8px;margin-bottom:10px}
.ffa-phone select{flex:0 0 108px;height:56px;border:1.5px solid #d3dee4;border-radius:14px;background:#fff;font:16px -apple-system,sans-serif;padding:0 10px;color:#10243f}
.ffa-phone input,.ffa-input{flex:1;width:100%;height:56px;border:1.5px solid #d3dee4;border-radius:14px;background:#fff;font:18px -apple-system,BlinkMacSystemFont,sans-serif;padding:0 14px;color:#10243f;box-sizing:border-box}
select.ffa-input{font-size:16px}
.ffa-phone input:focus,.ffa-input:focus,.ffa-code:focus{outline:none;border-color:#2a8fa8;box-shadow:0 0 0 3px rgba(42,143,168,.18)}
.ffa-code{display:block;width:100%;height:68px;margin:0 0 12px;border:1.5px solid #d3dee4;border-radius:14px;background:#fff;text-align:center;font:600 32px/1 ui-monospace,Menlo,monospace;letter-spacing:.35em;color:#10243f;box-sizing:border-box}
.ffa-err{margin:0 0 10px;padding:9px 12px;border-radius:10px;background:#fde8e4;color:#9b2c1f;font-size:14px}
.ffa-label{display:block;margin:0 0 12px;font-weight:650;font-size:14px;color:#2c4a63}
.ffa-label .ffa-input{margin-top:6px;font-size:17px;height:52px}
.ffa-label small{display:block;font-weight:400;color:#6a7f8c;margin-top:4px;font-size:12.5px}
.ffa-label .sub{font-weight:400;color:#6a7f8c}
.ffa-at{display:flex;align-items:center;margin-top:6px;border:1.5px solid #d3dee4;border-radius:14px;background:#fff;padding-left:14px}
.ffa-at span{color:#6a7f8c;font-size:17px}
.ffa-at .ffa-input{margin:0;border:0;height:50px;padding-left:4px;box-shadow:none!important}
.ffa-at:focus-within{border-color:#2a8fa8;box-shadow:0 0 0 3px rgba(42,143,168,.18)}
.ffa-avatar{margin-bottom:12px}
.ffa-avatar .ffc-field{max-width:none}.ffa-avatar .ffc-add{max-width:130px}
.ffa-check{display:flex;gap:10px;align-items:flex-start;margin:4px 0 14px;font-size:14px;color:#2c4a63}
.ffa-check input{width:22px;height:22px;margin:0;flex:0 0 auto}
.ffa-big{width:64px;height:64px;margin:4px 0 10px;border-radius:50%;background:#e6f0f3;color:#17405a;display:grid;place-items:center}
.ffa-big svg{width:32px;height:32px}
.ffa-big.ok{background:#e3f4ea;color:#2f7a4a}
.ffa-found{list-style:none;margin:0 0 16px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ffa-found li{display:flex;flex-direction:column;gap:2px;padding:12px;border-radius:12px;background:#fff;border:1px solid #e3e9ec}
.ffa-found b{font:400 26px Georgia,serif;color:#17405a}
.ffa-found span{font-size:13.5px;color:#4d6676}
.ffa-small{font-size:12.5px;color:#6a7f8c;margin:6px 0 0}
.ffa-preview{margin:4px 0 14px;padding:12px;border-radius:14px;background:#e9f2f5}
.ffa-preview b{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#4d6676;margin-bottom:4px}
.ffa-preview p{margin:0;font-size:14.5px}
.ffa-preview span{color:#2a6f88;word-break:break-all;font-size:13px}
.ffa-row3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 10px}
.ffa-join-head{text-align:center;margin-bottom:14px}
.ffa-join-head .ffa-big{margin:4px auto 8px}
.ffa-join-head small{display:block;color:#4d6676;font-size:14px}
.ffa-join-head h2{margin:2px 0 4px}
.ffa-join-head .ffa-sub{margin:0 0 8px}
.ffa-role{display:inline-block;padding:5px 11px;border-radius:999px;background:#e6f0f3;color:#17405a;font-size:13px;font-weight:700}
.ffa-role.org{background:#fff4dc;color:#8a5a12}
.ffa-iam{display:flex;flex-direction:column;gap:8px;margin:0 0 14px}
.ffa-iam label{display:flex;gap:10px;align-items:center;padding:12px;border-radius:12px;background:#fff;border:1.5px solid #e3e9ec;font-size:15.5px}
.ffa-iam label:has(input:checked){border-color:#2a8fa8;background:#eef7f9}
.ffa-iam input{width:20px;height:20px;margin:0}
.ffa-iam small{color:#6a7f8c}
.ffa-toast{position:fixed;left:50%;bottom:calc(100px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:2100;background:#10243f;color:#fff;padding:11px 18px;border-radius:999px;font:600 14.5px -apple-system,sans-serif;box-shadow:0 6px 20px rgba(0,0,0,.25);transition:opacity .4s}
.ffa-toast.out{opacity:0}
/* Profile account card */
.ffa-card{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0 4px;padding:14px;border-radius:16px;background:#fff;border:1px solid #e3e9ec}
.ffa-card-ic{width:44px;height:44px;border-radius:50%;background:#fff4dc;color:#d9692f;display:grid;place-items:center;flex:0 0 auto}
.ffa-card-ic svg{width:24px;height:24px}
.ffa-card-copy{flex:1;min-width:170px;display:flex;flex-direction:column;gap:2px}
.ffa-card-copy b{font-size:16px}
.ffa-card-copy small{color:#4d6676;font-size:13.5px}
.ffa-card-copy em{color:#8a5a12;font-size:12px;font-style:normal;font-weight:650}
.ffa-card .ffa-btn.sm{width:100%}
.ffa-av{width:48px;height:48px;border-radius:50%;background:#17405a;color:#fff;display:grid;place-items:center;font-weight:800;overflow:hidden;flex:0 0 auto}
.ffa-av img{width:100%;height:100%;object-fit:cover}
.ffa-acc{width:100%;border-top:1px solid #edf1f3;padding-top:8px}
.ffa-acc summary{cursor:pointer;color:#2a6f88;font-weight:650;font-size:14.5px;padding:4px 0}
.ffa-acc button{display:block;width:100%;margin-top:8px;padding:12px;border-radius:12px;border:1.5px solid #d3dee4;background:#fff;font:600 15px -apple-system,sans-serif;color:#10243f}
.ffa-acc button.danger{color:#9b2c1f;border-color:#f0c9c1}
/* Comp invite card */
.ffa-invite .ffa-inv-top{display:flex;gap:10px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}
.ffa-invite h2{margin-bottom:4px}
.ffa-invite p{margin:0 0 12px;color:#4d6676;font-size:14.5px}
.ffa-inv-btn{display:flex!important;align-items:center;justify-content:center;gap:8px;width:100%}
.ffa-inv-btn svg{width:20px;height:20px}
.ffa-joined{margin-top:12px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ffa-joined b{width:100%;font-size:13px;color:#4d6676}
.ffa-joined span{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border-radius:999px;background:#e3f4ea;color:#2f5a3e;font-size:13px;font-weight:650}
.ffa-joined svg{width:14px;height:14px}
.ffa-gate-note{margin:8px 0 0;padding:10px 12px;border-radius:12px;background:#eef3f5;color:#3d5664;font-size:14px}

/* "✓ Saved" confirmation */
.ffdone{position:fixed;z-index:3100;display:flex;align-items:center;gap:7px;padding:8px 15px 8px 9px;border-radius:999px;background:#e3f6ea;color:#1f6b3d;border:1.5px solid #9fd8b4;font:700 15px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:0 6px 18px rgba(16,60,36,.18);opacity:0;transform:translateY(6px) scale(.96);transition:opacity .6s ease,transform .6s ease;pointer-events:none;white-space:nowrap}
.ffdone.in{opacity:1;transform:none}
.ffdone.out{opacity:0;transform:translateY(-6px);transition:opacity .9s ease,transform .9s ease}
.ffdone-tick{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#2f9a5a;color:#fff;font-size:13px}
@media (prefers-reduced-motion:reduce){.ffdone,.ffdone.out{transition:opacity .3s}}
