.auth-dialog{margin:0;padding:0;border:none;background:transparent;width:100%;max-width:100%;height:100%;max-height:100%;display:flex;align-items:flex-end;justify-content:center}.auth-dialog:not([open]){display:none}.auth-dialog::backdrop{background:#2a23206b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.auth-sheet{position:relative;width:min(430px,100%);max-height:100dvh;overflow-y:auto;padding:16px 20px calc(28px + env(safe-area-inset-bottom));border-radius:26px 26px 0 0;background:var(--paper, #fffdf8);color:var(--ink, #2a2320);box-shadow:0 -8px 30px #2a232040;font-family:"Baloo 2",Arial Rounded MT Bold,system-ui,sans-serif;animation:auth-rise .28s cubic-bezier(.32,.72,0,1)}@keyframes auth-rise{0%{transform:translateY(100%)}}.auth-handle{width:44px;height:5px;margin:0 auto 14px;border-radius:3px;background:#e4ded3}.auth-close{position:absolute;top:12px;right:12px;width:38px;height:38px;border-radius:50%;font-size:26px;line-height:1;color:var(--ink-soft, #6b615a)}.auth-close:hover{background:#2a232014}.auth-sheet h2{font-size:26px;font-weight:800;line-height:1.1;text-align:center;padding:0 26px}.auth-intro{margin-top:8px;font-size:15px;font-weight:600;color:var(--ink-soft, #6b615a);text-align:center}.auth-warn{margin-top:14px;padding:11px 13px;border-radius:14px;background:#fdf3e4;display:flex;gap:9px;align-items:flex-start;font-size:13.5px;font-weight:600;line-height:1.35;color:var(--ink-soft, #6b615a)}.auth-warn>span:first-child{font-size:18px;line-height:1.1}.auth-providers{margin-top:16px;display:flex;flex-direction:column;gap:10px}.auth-provider{display:flex;align-items:center;justify-content:center;gap:10px;height:52px;border-radius:26px;border:1.5px solid #e0d9cd;background:#fff;font-size:17px;font-weight:700}.auth-provider:hover:not(:disabled){background:#faf6ee}.auth-provider.apple{background:#000;color:#fff;border-color:#000}.auth-provider.apple:hover:not(:disabled){background:#1a1a1a}.auth-provider:disabled,.auth-submit:disabled,.auth-guest:disabled{opacity:.5;cursor:not-allowed}.auth-form{margin-top:10px;display:flex;flex-direction:column;gap:10px}.auth-form input{height:52px;padding:0 18px;border-radius:26px;border:1.5px solid #e0d9cd;background:#fff;font:inherit;font-size:16px;font-weight:600;color:var(--ink, #2a2320)}.auth-form input::placeholder{color:#9c948b}.auth-form input:focus-visible{outline:2px solid var(--accent, #e87d3e);outline-offset:1px}.auth-submit{height:54px;margin-top:4px;border-radius:27px;background:var(--accent, #e87d3e);box-shadow:0 4px 0 var(--accent-dark, #c85f22);color:var(--paper, #fffdf8);font-size:19px;font-weight:800}.auth-submit:hover:not(:disabled){background:var(--accent-dark, #c85f22)}.auth-error,.auth-notice{padding:10px 14px;border-radius:12px;font-size:13.5px;font-weight:600;line-height:1.35}.auth-error{background:#fdeceb;color:#97281f}.auth-notice{background:#eaf7ee;color:#1f6b36}.auth-guest{display:block;width:100%;padding:14px 0 4px;font-size:16px;font-weight:700;color:var(--ink-soft, #6b615a)}.auth-guest:hover:not(:disabled){color:var(--ink, #2a2320)}.auth-links{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-top:10px;padding-top:12px;border-top:1px solid rgb(42 35 32 / 10%)}.auth-links button{font-size:14px;font-weight:700;color:var(--accent-dark, #c85f22);text-decoration:underline}@media(prefers-reduced-motion:reduce){.auth-sheet{animation:none}}:root{--ink: #2a2320;--ink-soft: #6b615a;--paper: #fffdf8;--accent: #e87d3e;--accent-dark: #c85f22;--accent-warm: #f5c542;--glass: rgb(255 255 255 / 20%);--glass-shadow: 0 1px 6px rgb(0 0 0 / 6%);--gold: linear-gradient( 45deg, #f6dba5, #ffebc4, #f0be79, #8f653b, #673d22, #ba7f3b, #eebc70 );--gold-light: linear-gradient(135deg, #ffebc4, #f0be79, #ba7f3b, #ffebc4, #eebc70, #f6dba5);--radius: 12px;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:"Baloo 2",Arial Rounded MT Bold,system-ui,sans-serif;color:var(--ink);background:#b9ddc3;min-height:100dvh;overflow-x:hidden}button{font:inherit;color:inherit;cursor:pointer;border:none;background:none}.hero-tagline,.progress-count,.section-head h2,.card-name,.card-soon span{-webkit-text-stroke:4px var(--paper);paint-order:stroke fill}.paysage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;width:100%;height:100%;object-fit:cover;object-position:center 30%;pointer-events:none}.app{min-height:100dvh;display:flex;flex-direction:column}.hero{padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 10px max(14px,env(safe-area-inset-left));display:flex;flex-direction:column;align-items:center;gap:10px}.hero-top{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}.hero-logo{height:46px;width:auto}.hero-tagline{margin-top:-6px;font-size:17px;font-weight:600;color:var(--ink-soft)}.hero-hint{font-size:14px;font-weight:600;color:var(--ink);-webkit-text-stroke:3px var(--paper);paint-order:stroke fill}.account{position:relative;flex-shrink:0}.account-btn{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border-radius:22px;font-size:15px;font-weight:700;background:var(--glass);box-shadow:var(--glass-shadow)}.account-btn.primary{background:var(--accent);color:var(--paper);box-shadow:0 3px 0 var(--accent-dark)}.avatar{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--paper);color:var(--accent-dark);font-size:14px;font-weight:800}.account-name{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:30;min-width:215px;padding:8px;border-radius:var(--radius);background:var(--paper);box-shadow:0 8px 24px #2a232040;display:flex;flex-direction:column;gap:2px}.account-status{padding:6px 10px 10px;font-size:12px;font-weight:600;color:var(--ink-soft);border-bottom:1px solid rgb(42 35 32 / 8%);margin-bottom:4px}.account-menu button{padding:10px;border-radius:10px;text-align:left;font-size:14px;font-weight:600}.account-menu button:hover{background:#2a23200f}.progress{width:100%;max-width:560px;padding:10px 12px 12px;border-radius:14px;background:var(--glass);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-bottom:10px}.progress-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.progress-count{display:flex;align-items:baseline;gap:5px;font-size:17px;font-weight:700}.progress-count strong{font-size:34px;font-weight:800;line-height:1}.progress-gold{flex-shrink:0;padding:4px 10px;border-radius:20px;background:var(--gold-light);font-size:14px;font-weight:800;color:#ece70e;text-shadow:0 1px 0 rgb(0 0 0 / 80%),0 -1px 0 rgb(0 0 0 / 80%),1px 0 0 rgb(0 0 0 / 80%),-1px 0 0 rgb(0 0 0 / 80%)}.progress-bar{position:relative;height:16px;margin-top:9px;border-radius:10px;background:#ffffff8c;box-shadow:inset 0 1px 2px #0000000f}.progress-fill{position:absolute;left:0;top:0;bottom:0;border-radius:10px;background:linear-gradient(90deg,var(--accent-warm),var(--accent));transition:width .35s ease}.progress-paw{position:absolute;top:-5px;width:26px;height:26px;margin-left:-13px;border-radius:50%;background:var(--paper);box-shadow:0 2px 4px #00000026;display:grid;place-items:center;font-size:14px;transition:left .35s ease}.progress-target{position:absolute;right:8px;top:2px;font-size:11px;font-weight:800;color:var(--ink-soft)}.progress-next{margin-top:7px;font-size:13px;font-weight:600}.filters{position:sticky;top:0;z-index:20;padding:6px max(12px,env(safe-area-inset-left));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;gap:6px;background:var(--glass);box-shadow:var(--glass-shadow);border-radius:14px}.tabs{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs button{flex:none;display:flex;align-items:center;gap:5px;white-space:nowrap;height:30px;padding:0 11px;border-radius:15px;font-size:13px;font-weight:700;background:#ffffff9e}.tabs button.active{background:var(--ink);color:var(--paper)}.tab-count{font-size:11px;font-weight:700;opacity:.55;font-variant-numeric:tabular-nums}.filters-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}@media(max-width:559px){.search{flex-basis:100%}.ownership{width:100%}.ownership button{flex:1;padding:0 6px}}.search{flex:1;min-width:0;height:32px;display:flex;align-items:center;gap:6px;padding:0 10px;border-radius:16px;background:var(--paper);box-shadow:inset 0 0 0 1px #2a23201a;font-size:13px}.search input{flex:1;min-width:0;border:none;background:none;font:inherit;font-size:15px;font-weight:600;color:var(--ink)}.search input::placeholder{color:var(--ink-soft)}.search input:focus{outline:none}.search:focus-within{box-shadow:inset 0 0 0 2px var(--accent)}.ownership{display:flex;gap:4px;flex:none}.ownership button{height:30px;padding:0 11px;border-radius:15px;font-size:12.5px;font-weight:700;white-space:nowrap;background:#ffffff9e}.ownership button.active{background:var(--ink);color:var(--paper)}.content{flex:1;padding:14px max(14px,env(safe-area-inset-right)) 24px max(14px,env(safe-area-inset-left))}.section+.section{margin-top:26px}.section-head{display:flex;align-items:center;gap:9px;margin-bottom:9px}.section-head h2{font-size:22px;font-weight:800;-webkit-text-stroke-width:6px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;align-items:start}.empty{padding:28px 0;text-align:center;font-weight:600;color:var(--ink);display:flex;flex-direction:column;align-items:center;gap:10px}.empty span{-webkit-text-stroke:4px var(--paper);paint-order:stroke fill}.empty button{padding:10px 18px;border-radius:22px;background:var(--accent);box-shadow:0 3px 0 var(--accent-dark);color:var(--paper);font-weight:700}.card-wrap{position:relative}.card-frame{position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:13px;padding:10px;background:#fff;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;pointer-events:none}.card{position:relative;border-radius:10px;background:var(--glass);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.card-main{width:100%;padding:0 4px;border-radius:10px;display:flex;flex-direction:column;align-items:center}.card-main:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card-tick{position:absolute;top:6px;right:6px;display:grid;place-items:center;width:24px;height:24px;border-radius:6px;border:1px solid #939598;background:#fff9;font-size:16px;font-weight:800;line-height:1;color:var(--accent)}.card-disc{position:relative;width:100%;aspect-ratio:1;margin-top:10px;border-radius:50%;overflow:hidden;transition:background .2s ease,box-shadow .2s ease,border-color .2s ease}.card-wrap.owned .card{background:#fffdf8cc}.card-wrap.owned.gold .card{background:var(--gold-light)}.card-wrap.owned .card-disc{border-color:transparent;background:radial-gradient(circle,var(--paper) 30%,rgb(255 253 248 / 0%) 74%)}.card-wrap.owned.gold .card-disc{background:radial-gradient(circle,#f4d29c 30%,#f4d29c00 74%)}.card-fig-box{position:absolute;top:0;right:0;bottom:0;left:0;transform:scale(.86);transition:transform .2s ease}.card-wrap.owned .card-fig-box{transform:scale(1)}.card-fig{position:absolute;top:50%;left:50%;width:191.4%;height:191.4%;max-width:none;margin-top:-95.7%;margin-left:-92.92%;object-fit:contain;opacity:.94;transition:opacity .2s ease}.card-wrap.owned .card-fig{opacity:1}.card-name{padding:1px 6px;font-size:11.5px;font-weight:700;line-height:1.15;text-align:center;margin-top:-10px;overflow-wrap:anywhere;display:flex;align-items:center;min-height:2.3em}.card-gold{position:absolute;top:-2px;left:0;width:44px;height:40px;display:flex;align-items:center;justify-content:flex-start;padding-left:6px}.card-gold-inner{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;padding:2.5px;background:var(--gold)}.card-gold-inner>span{display:grid;place-items:center;width:100%;height:100%;border-radius:4px;background:#fff;font-size:9px;font-weight:800;line-height:1;color:#ece70e;text-shadow:0 1px 0 rgb(0 0 0 / 80%),0 -1px 0 rgb(0 0 0 / 80%),1px 0 0 rgb(0 0 0 / 80%),-1px 0 0 rgb(0 0 0 / 80%);transition:background .2s ease}.card-wrap.gold .card-gold-inner>span{background:linear-gradient(45deg,#f6dba5,#ffebc4,#f0be79)}.card-gold:focus-visible{outline:2px solid #8f653b;outline-offset:-2px;border-radius:8px}.card-soon{display:grid;place-items:center;min-height:118px;border-radius:10px;border:2px dashed rgb(255 255 255 / 85%);background:#ffffff38;font-size:16px;font-weight:800;text-align:center;height:-webkit-fill-available;height:stretch}.save-nudge{margin:0 auto max(18px,env(safe-area-inset-bottom));padding:12px 18px;max-width:min(560px,calc(100% - 28px));border-radius:14px;background:var(--glass);box-shadow:var(--glass-shadow);text-align:center;font-size:14px;font-weight:600}.save-nudge button{font-weight:800;color:var(--accent-dark);text-decoration:underline}@media(min-width:560px){.grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}}@media(min-width:700px){.hero{max-width:1200px;width:100%;margin:0 auto;padding-inline:24px;display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"logo tagline account" "progress progress hint";align-items:center;column-gap:20px}.hero-top{display:contents}.hero-logo{grid-area:logo;height:58px}.hero-tagline{grid-area:tagline;margin:0;font-size:19px;justify-self:center}.account{grid-area:account}.progress{grid-area:progress;max-width:none}.hero-hint{grid-area:hint;justify-self:end}.filters,.content{padding-inline:24px}.filters,.progress{flex-direction:row;align-items:center;max-width:1200px;margin:0 auto 10px;width:100%}.tabs{flex:1}.filters-row{flex:none}.search{width:230px;flex:none}.content{max-width:1200px;margin:0 auto;width:100%}.section-head h2{font-size:30px;-webkit-text-stroke-width:8px}.grid{gap:12px}.card-name{font-size:12.5px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
