@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Outfit:wght@400;500;600;700;800&display=swap');
:root{--ink:#18294b;--muted:#687491;--violet:#6938da;--violet2:#8a5cf1;--line:#e9e5f2;--bg:#faf9fe;--white:#fff;--sun:#ffd857;--coral:#ee745d;--shadow:0 18px 55px rgba(30,28,71,.07)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:var(--violet)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Outfit,'DM Sans',sans-serif;letter-spacing:-.035em;line-height:1.12}h1{font-size:clamp(35px,4vw,56px);margin:10px 0 12px}h2{font-size:27px}h3{font-size:21px}p{color:#5e6b85}#app{min-height:100vh;display:flex}.sidebar{width:252px;position:sticky;top:0;height:100vh;padding:26px 15px 18px 20px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;flex:none;z-index:2}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:var(--ink);font-family:Outfit,sans-serif;font-size:23px;font-weight:800;line-height:.95;letter-spacing:-.06em;padding:7px 6px 28px}.brandmark{width:35px;height:35px;background:var(--violet);border-radius:12px;color:#fff;display:grid;place-items:center;font-size:23px;transform:rotate(-10deg)}.branddot{color:var(--coral)}.brand small{display:block;font:700 9px 'DM Sans',sans-serif;letter-spacing:.18em;color:var(--violet);margin-top:6px}.rolebox{border:1px solid #eae3ff;background:#f7f4ff;border-radius:16px;padding:12px;margin-bottom:23px}.eyebrow,.navlabel{font-size:10px;font-weight:800;letter-spacing:.16em;color:var(--violet)}.rolebox select,.filters select,.field input,.field select,.field textarea{width:100%;border:1px solid #dedaeb;background:white;border-radius:10px;padding:10px 12px;color:var(--ink);outline-color:var(--violet)}.rolebox select{font-weight:700;margin:7px 0}.mini{font-size:11px}.muted{color:var(--muted)}.navlabel{padding:0 14px 7px;color:#a3a4b4}.sidebar nav{display:grid;gap:4px}.navitem{background:none;border:0;text-align:left;display:flex;align-items:center;gap:13px;width:100%;padding:10px 12px;border-radius:12px;color:#59647f;font-weight:700}.navitem:hover,.navitem.active{background:#f3edff;color:#5424ba}.navitem span{font-size:20px;line-height:1;width:24px;text-align:center}.navitem b{margin-left:auto;background:var(--violet);color:#fff;border-radius:20px;padding:1px 8px;font-size:11px}.sidebottom{margin-top:auto;display:grid;gap:9px;padding:12px 5px}.sidebottom a,.subtle{font-size:12px;color:#667391}.subtle{background:none;border:0;text-align:left;padding:0}.freepill{background:#fff7db;border-radius:10px;padding:9px;color:#785a11;font-weight:800;font-size:11px}.main{min-width:0;flex:1;display:flex;flex-direction:column}.topbar{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:0 clamp(22px,4vw,70px);background:#fff}.demoBadge{font-size:10px;letter-spacing:.11em;color:#8d75c3;font-weight:800}.avatar{border:1px solid #e5dcff;background:#f2ecff;color:var(--violet);width:36px;height:36px;border-radius:50%;font-size:19px}.mobilebrand,.mobileNav{display:none}main{width:min(1160px,100%);padding:48px clamp(22px,4vw,70px) 76px;margin:auto;flex:1}.pageintro{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:34px}.pageintro p{max-width:640px;font-size:16px;line-height:1.65;margin:0}.pageintro>.button{flex:none}.button{border:1px solid var(--violet);background:var(--violet);color:white;display:inline-flex;justify-content:center;align-items:center;gap:8px;border-radius:12px;padding:12px 17px;font-weight:800;text-decoration:none;white-space:nowrap;box-shadow:0 7px 16px rgba(105,56,218,.12)}.button:hover{filter:brightness(1.08)}.button.outline{background:#fff;color:var(--violet);box-shadow:none}.button.sm{padding:8px 12px;font-size:12px;border-radius:9px}.discoverLayout{display:grid;grid-template-columns:minmax(0,560px) minmax(220px,1fr);gap:40px;align-items:start}.deck{max-width:560px;width:100%;margin:auto}.filters{display:flex;gap:10px;margin-bottom:16px}.filters select{max-width:190px;font-weight:700}.filter{border:1px solid #e6dafa;background:#fff;color:#685097;border-radius:10px;font-size:12px;font-weight:700;padding:8px 12px}.filter.picked{background:#f2e9ff;color:var(--violet)}.datingCard,.miniCard,.panel,.smallbox,.asidebox,.featureTile{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);overflow:hidden}.datingCard{border-radius:25px}.art{height:300px;position:relative;overflow:hidden;display:grid;place-items:center;isolation:isolate}.art.peach{background:linear-gradient(145deg,#ffe8d3,#ffc8ae)}.art.lilac{background:linear-gradient(145deg,#eddbff,#dbc2ff)}.art.mint{background:linear-gradient(145deg,#d8f5e6,#9fddc1)}.art.butter{background:linear-gradient(145deg,#fff3c9,#ffe39b)}.art.rose{background:linear-gradient(145deg,#ffe4ec,#f8b5cb)}.art.sky{background:linear-gradient(145deg,#d4efff,#add9ed)}.art.sand{background:linear-gradient(145deg,#f6ecd7,#e6cda8)}.art.lavender{background:linear-gradient(145deg,#dfe2ff,#bfbeec)}.artorb{position:absolute;border-radius:50%;background:#fff7;z-index:-1}.artorb.one{width:270px;height:270px;top:-110px;right:-30px}.artorb.two{width:230px;height:230px;bottom:-100px;left:-40px}.animalEmoji{font-size:158px;filter:drop-shadow(0 24px 12px #59436a35);line-height:1;transform:rotate(-8deg);transition:transform .25s}.datingCard:hover .animalEmoji{transform:rotate(2deg) scale(1.04)}.artlabel{position:absolute;bottom:15px;left:18px;background:#fffdf7;padding:7px 12px;border-radius:20px;color:#564974;font-size:11px;font-weight:800}.cardBody{padding:22px 25px 25px}.cardTop{display:flex;justify-content:space-between;gap:10px;align-items:center}.cardTop h2{font-size:36px;margin:5px 0}.cardTop h2 small{font:600 13px 'DM Sans',sans-serif;color:var(--muted);letter-spacing:0}.status{font-size:11px;color:#357e66;background:#e8f8ef;border-radius:20px;padding:6px 9px;white-space:nowrap}.headline{font-size:16px;margin:5px 0 16px;color:#41516e}.chips{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0}.chips span{background:#f7f3ff;border:1px solid #e9e1fb;border-radius:30px;color:#6f4eaf;padding:6px 10px;font-size:11px;font-weight:700}.textlink{border:0;padding:0;background:none;color:var(--violet);font-size:12px;font-weight:800;text-align:left;text-decoration:none}.textlink:hover{text-decoration:underline}.swipeActions{display:flex;justify-content:center;gap:25px;margin:22px}.swipeActions button{width:60px;height:60px;background:#fff;border:1px solid var(--line);border-radius:50%;font-size:30px;box-shadow:0 8px 20px #25185410}.swipeActions .roundpass{color:#7f8aa2}.swipeActions .roundhelp{color:var(--violet)}.swipeActions .roundsave{color:#fa6785}.swipeActions button:hover{transform:translateY(-3px)}.underdeck{text-align:center;font-size:9px;font-weight:800;letter-spacing:.07em;color:#9ba1b3}.underdeck span{padding:0 7px}.discoverAside{display:grid;gap:17px;padding-top:56px}.asidebox{padding:27px;background:linear-gradient(155deg,#fff,#f9f5ff)}.asidebox h3{font-size:28px;margin:19px 0 8px}.asidebox p{font-size:14px}.sticker{font-size:10px;letter-spacing:.13em;font-weight:800;color:#a27ad4}.step{border-top:1px solid var(--line);padding:12px 0;font-size:12px;color:var(--violet)}.step strong{color:var(--ink);margin-left:10px}.smallbox{padding:23px;box-shadow:none}.smallbox p{font-size:13px;margin-bottom:0}.smallbox h3{margin-bottom:7px}.smallbox .textlink{margin-top:10px}.cardGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.miniArt{height:180px}.miniArt .animalEmoji{font-size:95px}.miniBody{padding:18px}.miniBody h3{margin:6px 0}.miniBody p{font-size:12px;min-height:53px}.miniactions{display:flex;justify-content:space-between;gap:7px;align-items:center}.iconbutton{border:0;background:#f5f1fa;border-radius:9px;color:var(--violet);padding:6px 10px;font-size:18px}.banner{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#f0eaff;border:1px solid #e6dcff;border-radius:20px;padding:23px 28px;margin-top:24px}.banner strong{font:700 23px Outfit,sans-serif}.banner p{margin:5px 0 0;font-size:13px}.twoCols{display:grid;grid-template-columns:1fr 1fr;gap:20px}.threeCols{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.panel{padding:26px;overflow:visible}.panel h2{margin:7px 0 14px}.spaced{margin-top:20px}.checkrow{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:11px 0;font-size:13px;font-weight:700;cursor:pointer}.checkrow input{accent-color:var(--violet);width:17px;height:17px}.checkrow.done span{text-decoration:line-through;color:#8992a6}.quest{display:grid;grid-template-columns:repeat(2,1fr);column-gap:27px}.familyRow,.rescueRow,.activity,.need,.event,.record,.memory{display:flex;align-items:start;gap:12px;border-top:1px solid var(--line);padding:15px 0}.familyRow small,.rescueRow small,.activity small,.need small,.event small,.patient small,.record small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.familyEmoji,.rescueEmoji{font-size:28px;flex:none}.vote{display:flex;gap:7px;margin-top:8px}.vote button{border:1px solid #e8dff8;background:#fff;border-radius:8px;color:#654a94;padding:5px 8px;font-size:10px}.vote button.selected{background:#e7d8ff;border-color:var(--violet)}.notice{background:#f0eaff;border:1px solid #e4d9ff;color:#5b4d7d;border-radius:13px;padding:14px 16px;margin-bottom:20px;font-size:13px}.notice button{border:0;background:none;color:var(--violet);font-weight:800}.field{display:block;font-weight:700;font-size:12px;color:#4c5873;margin:11px 0}.field input,.field select,.field textarea{display:block;margin-top:5px;font-weight:500}.field textarea{height:76px;resize:vertical}.field input[type=file]{font-size:11px}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:12px}.patient{display:flex;gap:12px;align-items:center;background:#f9f5ff;padding:13px;border-radius:13px;margin:15px 0}.patient>span{font-size:36px}.sectionhead{display:flex;align-items:center;justify-content:space-between}.counter{background:#f4effe;padding:5px 10px;border-radius:20px;color:var(--violet);font-size:11px}.recordIcon{display:grid;place-items:center;flex:none;background:#f2e9ff;color:var(--violet);width:38px;height:38px;border-radius:11px}.recordText p{margin:7px 0;font-size:13px}.foreverHero{display:flex;align-items:center;gap:26px;background:linear-gradient(110deg,#fff,#f6efff);border:1px solid var(--line);border-radius:24px;padding:20px 30px 20px 20px;margin-bottom:20px}.foreverArt{width:220px;height:170px;flex:none;border-radius:18px}.foreverArt .animalEmoji{font-size:115px}.foreverHero h2{font-size:34px;margin:8px 0}.foreverHero p{margin-bottom:5px}.featureTile{text-align:left;padding:22px;min-height:180px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:none}.featureTile>span{font-size:29px;color:var(--violet)}.featureTile strong{font:700 21px Outfit,sans-serif;margin-top:8px}.featureTile small{color:var(--muted);margin:8px 0}.featureTile em{font-size:11px;color:var(--violet);font-style:normal;font-weight:800;margin-top:auto}.detailrow{display:flex;justify-content:space-between;gap:13px;border-bottom:1px solid var(--line);padding:12px 0;font-size:12px}.detailrow span{color:var(--muted)}.detailrow strong{text-align:right}.memory span{color:#fa6582;font-size:24px}.memory p{font-size:12px;margin:3px 0}.statrow{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.statrow>div{background:#fff;border:1px solid var(--line);border-radius:17px;padding:18px}.statrow strong{font:700 31px Outfit,sans-serif;color:var(--violet);display:block}.statrow span{font-size:11px;color:var(--muted)}.rescueRow{align-items:center}.rescueRow>div{flex:1}.rescueEmoji{width:39px;height:39px;border-radius:11px;display:grid;place-items:center;background:#f5efff}.activity span,.need>span{font-size:22px;color:var(--violet)}.need{align-items:center}.need>div{flex:1}.need .button{white-space:nowrap}.eventdate{display:grid;place-items:center;background:#f2ebff;border-radius:12px;color:var(--violet);font-size:11px;font-weight:800;padding:8px;min-width:50px}.eventdate span{font-size:21px}.event p{font-size:12px;margin:9px 0}.toggleRow{display:flex;gap:10px;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--line)}.toggleRow strong,.toggleRow small{display:block}.toggleRow small{color:var(--muted);font-size:11px;margin-top:5px}.toggleRow input{accent-color:var(--violet);width:20px;height:20px;flex:none}.external{display:block;margin-top:13px}.reset{border:0;background:none;color:#b4475f;text-decoration:underline;margin:30px 0;padding:0}.empty{text-align:center;background:#fff;border:1px dashed #d9ccef;border-radius:20px;padding:50px 18px;color:var(--muted)}.empty>span{font-size:45px;color:#f37892}.empty .button{margin:10px}.empty.compact{padding:25px;font-size:13px}.foot{border-top:1px solid var(--line);text-align:center;font-size:11px;color:#8991a4;padding:20px}.overlay{position:fixed;inset:0;z-index:20;display:grid;place-items:center;background:#1b173d99;padding:18px}.modal{width:min(640px,100%);max-height:min(88vh,900px);overflow:auto;background:#fff;border-radius:23px;padding:29px;position:relative;box-shadow:0 30px 90px #1b173d55}.modal h2{font-size:32px;margin:0 35px 20px 0}.modal p{line-height:1.6}.close{position:absolute;right:20px;top:19px;width:33px;height:33px;border:0;border-radius:50%;background:#f4effe;color:var(--violet);font-size:23px}.modalAnimal{display:flex;gap:20px;align-items:center}.modalArt{width:180px;height:165px;border-radius:15px;flex:none}.modalArt .animalEmoji{font-size:95px}.modalAnimal h3{margin:9px 0}.modalSections{display:grid;gap:10px;margin:18px 0}.modalSections>div{background:#f9f7fe;padding:13px;border-radius:11px}.modalSections p{font-size:12px;margin:3px 0}.modalButtons{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.helpChoices{display:grid;grid-template-columns:1fr 1fr;gap:9px}.helpChoices button{border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px;text-align:left}.helpChoices button span{font-size:20px;color:var(--violet);float:left;margin-right:10px}.helpChoices small{display:block;color:var(--muted)}.menuList{display:grid}.menuList button{border:0;border-bottom:1px solid var(--line);background:none;text-align:left;padding:13px;color:var(--violet);font-weight:800}.timeline{border-left:2px solid #e8d9fc;padding-left:17px}.timeline p{margin-bottom:18px}#toast{position:fixed;bottom:25px;right:25px;z-index:30;background:#332064;color:#fff;border-radius:12px;padding:12px 18px;box-shadow:0 14px 35px #20134f44;max-width:360px;opacity:0;transform:translateY(20px);pointer-events:none;transition:.2s}#toast.show{opacity:1;transform:translateY(0)}.modalOpen{overflow:hidden}
@media(max-width:1100px){.sidebar{width:215px}.discoverLayout{grid-template-columns:minmax(0,1fr) 240px;gap:20px}.cardGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.sidebar{display:none}.topbar{justify-content:space-between;padding:0 20px;height:62px}.mobilebrand{display:block;border:0;background:none;color:var(--violet);font-size:22px}.mobilebrand strong{color:var(--ink);font-family:Outfit;letter-spacing:-.05em}.demoBadge{margin-left:auto;font-size:8px}.mobileNav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);z-index:5;justify-content:space-around;padding:6px 3px max(6px,env(safe-area-inset-bottom))}.mobileNav button{border:0;background:none;color:#74809a;font-size:9px;font-weight:700;display:grid;justify-items:center;gap:2px;min-width:55px}.mobileNav button span{font-size:22px;line-height:1}.mobileNav button.on{color:var(--violet)}main{padding:30px 20px 100px}.foot{padding-bottom:95px}.discoverLayout{grid-template-columns:1fr}.discoverAside{grid-template-columns:1fr 1fr;padding:0}.twoCols{grid-template-columns:1fr}.pageintro{align-items:start}.pageintro .button{font-size:11px}.modal{padding:22px}}
@media(max-width:550px){.pageintro{display:block}.pageintro .button{margin-top:16px}.pageintro p{font-size:14px}.discoverAside,.threeCols,.statrow,.cardGrid,.quest{grid-template-columns:1fr}.statrow{grid-template-columns:1fr 1fr}.art{height:270px}.animalEmoji{font-size:135px}.cardTop h2{font-size:32px}.cardBody{padding:19px}.underdeck{font-size:7px}.foreverHero{display:block}.foreverArt{width:100%;margin-bottom:19px}.banner{display:block}.banner .button{margin-top:15px}.modalAnimal{display:block}.modalArt{width:100%;height:155px;margin-bottom:15px}.modalButtons .button{white-space:normal}.formrow{grid-template-columns:1fr}.helpChoices{grid-template-columns:1fr}.demoBadge{font-size:7px;letter-spacing:0}.topbar{gap:7px}}
