:root{--ink:#1a2b4a;--ink-soft:#4a6080;--blue:#2364aa;--sky:#3da5d9;--teal:#73bfb8;--yellow:#fec601;--orange:#ea7317;--cream:#fff9f0;--cream-deep:#f6e9d5;--white:#fff;--font-body:"Balsamiq Sans", system-ui, sans-serif;--font-hand:"Just Me Again Down Here", system-ui, sans-serif;--font-ui:"Inter", system-ui, sans-serif;--stroke:3px solid var(--ink);--stroke-thin:2px solid var(--ink);--shadow-sm:2px 2px 0 0 var(--ink);--shadow:3px 3px 0 0 var(--ink);--shadow-lg:4px 4px 0 0 var(--ink);--shadow-btn:0 4px 0 0 var(--ink);--r-sm:12px;--r-md:20px;--r-lg:28px;--r-pill:999px;--app-w:440px;--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--t-press:80ms;--t-med:.26s;--paws:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='160'%20height='170'%20viewBox='0%200%20160%20170'%3E%3Cg%20fill='none'%20stroke='%232465ab'%20stroke-opacity='.28'%20stroke-width='1.4'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cg%20transform='translate%2818%2020%29%20rotate%28-18%2024%2024%29%20scale%282%29'%3E%3Ccircle%20cx='11'%20cy='4'%20r='2'/%3E%3Ccircle%20cx='18'%20cy='8'%20r='2'/%3E%3Ccircle%20cx='20'%20cy='16'%20r='2'/%3E%3Cpath%20d='M9%2010a5%205%200%200%201%205%205v3.5a3.5%203.5%200%200%201-6.84%201.045Q6.52%2017.48%204.46%2016.84A3.5%203.5%200%200%201%205.5%2010Z'/%3E%3C/g%3E%3Cg%20transform='translate%2896%20100%29%20rotate%2822%2024%2024%29%20scale%282%29'%3E%3Ccircle%20cx='11'%20cy='4'%20r='2'/%3E%3Ccircle%20cx='18'%20cy='8'%20r='2'/%3E%3Ccircle%20cx='20'%20cy='16'%20r='2'/%3E%3Cpath%20d='M9%2010a5%205%200%200%201%205%205v3.5a3.5%203.5%200%200%201-6.84%201.045Q6.52%2017.48%204.46%2016.84A3.5%203.5%200%200%201%205.5%2010Z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}html{scrollbar-width:thin;scrollbar-color:#1a2b4a59 transparent}body{background:var(--cream);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}::selection{background:var(--yellow);color:var(--ink)}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid var(--sky);outline-offset:3px}.screen{width:100%;max-width:var(--app-w);background:var(--cream);min-height:100dvh;padding:max(16px, env(safe-area-inset-top)) 20px max(32px, env(safe-area-inset-bottom));flex-direction:column;gap:16px;margin:0 auto;display:flex;position:relative;overflow-x:hidden}.stack{gap:var(--gap,12px);flex-direction:column;display:flex}.row{align-items:center;gap:var(--gap,8px);display:flex}.grow{flex:1 1 0;min-width:0}.cascade>:not(.toast,.paw-bg,.cascade){animation:rise .55s var(--ease-out) backwards;animation-delay:calc((var(--base,0) + var(--i,0) * 50) * 1ms)}.cascade>:first-child{--i:0}.cascade>:nth-child(2){--i:1}.cascade>:nth-child(3){--i:2}.cascade>:nth-child(4){--i:3}.cascade>:nth-child(5){--i:4}.cascade>:nth-child(6){--i:5}.cascade>:nth-child(7){--i:6}.cascade>:nth-child(8){--i:7}.cascade>:nth-child(9){--i:8}.cascade>:nth-child(10){--i:9}.cascade>:nth-child(11){--i:10}.cascade>:nth-child(12){--i:11}.cascade>:nth-child(13){--i:12}.cascade>:nth-child(n+14){--i:13}@keyframes rise{0%{opacity:0;translate:0 16px}}@keyframes pop-in{0%{opacity:0;scale:.4}}@keyframes fade-in{0%{opacity:0}}@keyframes spin{to{rotate:360deg}}@keyframes shake{10%,90%{translate:-1px}20%,80%{translate:2px}30%,50%,70%{translate:-4px}40%,60%{translate:4px}}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}.pop{animation:pop-in .45s var(--ease-spring)}.skeleton{background:linear-gradient(100deg,#1a2b4a0d 30%,#1a2b4a24 50%,#1a2b4a0d 70%) 0 0/300% 100%;animation:1.2s linear infinite shimmer}.title-hand{font-family:var(--font-hand);color:var(--blue);margin:0;font-size:34px;font-weight:400;line-height:1.1}.muted{color:var(--ink-soft);margin:0;font-size:14px;line-height:20px}.label{color:var(--ink-soft);font-size:13px}.h2{margin:0;font-size:22px;font-weight:700}.h3{margin:0;font-size:16px;font-weight:700}.link{color:var(--blue);transition:background-size var(--t-med) var(--ease-out);background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat;font-size:13px;font-weight:700}.link:hover{background-size:100% 2px}.screen-header{align-items:center;gap:12px;min-height:44px;display:flex}.screen-header .title-hand{font-size:30px}.icon-btn{border-radius:var(--r-md);background:var(--teal);border:var(--stroke);width:36px;height:36px;box-shadow:0 3px 0 0 var(--ink);color:var(--ink);transition:transform var(--t-med) var(--ease-spring), box-shadow var(--t-med) var(--ease-spring);flex-shrink:0;place-items:center;display:grid}.icon-btn svg{transition:translate var(--t-med) var(--ease-spring), rotate var(--t-med) var(--ease-spring)}.btn{--btn-bg:var(--white);--btn-fg:var(--ink);isolation:isolate;border-radius:var(--r-pill);border:var(--stroke);background:var(--btn-bg);width:100%;color:var(--btn-fg);box-shadow:var(--shadow-btn);text-align:center;transition:transform var(--t-med) var(--ease-spring), box-shadow var(--t-med) var(--ease-spring), background-color .25s ease, color .25s ease, opacity .25s ease;justify-content:center;align-items:center;gap:10px;padding:14px 28px;font-size:18px;font-weight:700;line-height:1.2;display:flex;position:relative;overflow:hidden}.btn--blue{--btn-bg:var(--blue);--btn-fg:var(--white)}.btn--yellow{--btn-bg:var(--yellow)}.btn--white{--btn-bg:var(--white)}.btn--orange{--btn-bg:var(--orange);--btn-fg:var(--white)}.btn--success{--btn-bg:var(--teal);--btn-fg:var(--ink)}.btn svg{transition:translate var(--t-med) var(--ease-spring), rotate var(--t-med) var(--ease-spring), scale var(--t-med) var(--ease-spring);flex-shrink:0}.btn:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(110deg,#0000 35%,#ffffff73 50%,#0000 65%);position:absolute;inset:-2px;translate:-110%}.btn:disabled{cursor:not-allowed;opacity:.5;box-shadow:0 2px 0 0 var(--ink);filter:saturate(.5);transform:translateY(2px)}.btn[aria-busy=true]{color:#0000;pointer-events:none}.btn[aria-busy=true]:after{content:"";border:3px solid var(--btn-fg);border-right-color:#0000;border-radius:50%;width:22px;height:22px;margin:auto;animation:.7s linear infinite spin;position:absolute;inset:0}.btn--success svg{animation:pop-in .45s var(--ease-spring)}.btn.btn--attention{animation:1.8s ease-in-out infinite breathe}@keyframes breathe{0%,to{scale:1}50%{scale:1.035}}.pill{border-radius:var(--r-pill);border:var(--stroke-thin);background:var(--white);box-shadow:var(--shadow-sm);white-space:nowrap;transition:transform var(--t-med) var(--ease-spring), box-shadow var(--t-med) var(--ease-spring), background-color .2s ease, color .2s ease;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:700;display:inline-flex}.pill[aria-pressed=true]{background:var(--blue);color:var(--white);box-shadow:0 0 0 0 var(--ink);animation:pill-pop .45s var(--ease-spring);transform:translate(2px,2px)}@keyframes pill-pop{0%{scale:.86}}.pill--sm{padding:4px 10px;font-size:12px}.pill--blue{background:var(--blue);color:var(--white)}.pill--orange{background:var(--orange);color:var(--ink)}.pill--teal{background:var(--teal)}.pill-count{border-radius:var(--r-pill);background:var(--ink);min-width:20px;height:20px;color:var(--white);animation:pop-in .4s var(--ease-spring) backwards;place-items:center;padding:0 6px;font-size:11px;transition:background-color .2s,color .2s;display:inline-grid}.pill[aria-pressed=true] .pill-count{background:var(--white);color:var(--blue)}.card{border:var(--stroke);border-radius:var(--r-lg);background:var(--white);box-shadow:var(--shadow);flex-direction:column;gap:10px;padding:20px;display:flex}.card--lg{box-shadow:var(--shadow-lg)}.card--md{border-radius:var(--r-md);padding:14px 16px}.card--teal{background:var(--teal)}.card--yellow{background:var(--yellow)}.card--orange{background:var(--orange)}.card--interactive{text-align:left;cursor:pointer;transition:transform var(--t-med) var(--ease-spring), box-shadow var(--t-med) var(--ease-spring)}.support-note{border-radius:var(--r-sm);color:var(--ink);text-align:left;background:#ffffff8c;border:2px dashed #1a2b4a73;align-items:flex-start;gap:8px;margin:4px 0 0;padding:10px 12px;font-size:13px;line-height:18px;display:flex}.support-note svg{flex-shrink:0;margin-top:1px}.card-title{align-items:center;gap:8px;margin:0;font-size:15px;font-weight:700;display:flex}.card-body{color:var(--ink-soft);margin:0;font-size:14px;line-height:21px}.card--orange .card-body{color:var(--ink)}.big-link{color:var(--blue);word-break:break-all;font-size:26px;font-weight:700}.field{flex-direction:column;gap:8px;min-width:0;display:flex}.field-label{color:var(--ink-soft);align-items:center;gap:8px;font-size:14px;transition:color .2s;display:flex}.field-label svg{color:var(--blue);transition:scale var(--t-med) var(--ease-spring)}.field:focus-within .field-label{color:var(--blue)}.field:focus-within .field-label svg{scale:1.2}.input{border-radius:var(--r-md);border:var(--stroke);background:var(--white);width:100%;color:var(--ink);transition:border-color .2s ease, box-shadow var(--t-med) var(--ease-spring), translate var(--t-med) var(--ease-spring);outline:none;padding:14px 16px;font-size:16px;font-weight:700}.input::placeholder{color:#9aa7ba;font-weight:400}.input:focus{border-color:var(--blue);box-shadow:3px 3px 0 0 var(--blue);translate:-1px -1px}.input[aria-invalid=true]{border-color:var(--orange)}.input[aria-invalid=true]:focus{box-shadow:3px 3px 0 0 var(--orange)}.input-prefix{border-radius:var(--r-md);border:3px solid var(--blue);background:var(--white);transition:box-shadow var(--t-med) var(--ease-spring), translate var(--t-med) var(--ease-spring);align-items:center;gap:8px;padding:14px 16px;display:flex}.input-prefix:focus-within{box-shadow:3px 3px 0 0 var(--blue);translate:-1px -1px}.input-prefix span{color:var(--ink-soft);font-weight:700}.input-prefix input{background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:18px;font-weight:700}.input-wrap{position:relative}.input-wrap .input{padding-right:52px}.input-toggle{width:34px;height:34px;color:var(--ink-soft);border-radius:50%;place-items:center;transition:background-color .2s,color .2s;display:grid;position:absolute;top:50%;right:10px;translate:0 -50%}.input-toggle:hover{background:var(--cream);color:var(--ink)}.field-error{color:var(--orange);align-items:center;gap:4px;font-size:12px;font-weight:700;animation:.45s both shake;display:flex}.step-num{border:var(--stroke-thin);background:var(--yellow);width:32px;height:32px;color:var(--ink);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:700;display:grid}.step-num--blue{background:var(--blue);color:var(--white)}.menu-anchor{position:relative}.menu-trigger{background:var(--white);border:var(--stroke-thin);width:32px;height:32px;box-shadow:var(--shadow-sm);transition:transform var(--t-med) var(--ease-spring), box-shadow var(--t-med) var(--ease-spring), rotate var(--t-med) var(--ease-spring), background-color .2s ease;border-radius:50%;place-items:center;display:grid}.menu-trigger[aria-expanded=true]{background:var(--yellow);rotate:90deg}.menu-trigger--dark{box-shadow:none;color:var(--white);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1a2b4a66;border:0}.menu-trigger--dark[aria-expanded=true]{background:#1a2b4acc}.menu-pop{z-index:20;background:var(--white);color:var(--blue);white-space:nowrap;transform-origin:100% 0;animation:menu-pop .35s var(--ease-spring);border-radius:10px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:700;transition:background-color .2s;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 2px 6px #1a2b4a30}.menu-pop:hover{background:var(--cream)}.menu-pop--dark{color:var(--white);background:#1a2b4ae6;box-shadow:0 2px 8px #00000040}.menu-pop--dark:hover{background:var(--ink)}@keyframes menu-pop{0%{opacity:0;scale:.6}}.toast{left:50%;bottom:max(24px, calc(env(safe-area-inset-bottom) + 12px));z-index:100;border-radius:var(--r-pill);background:var(--ink);width:max-content;max-width:min(92vw,400px);color:var(--white);animation:toast-in .5s var(--ease-spring) both;align-items:center;gap:10px;padding:10px 18px;font-size:14px;font-weight:700;display:flex;position:fixed;translate:-50%;box-shadow:0 10px 28px #1a2b4a4d}.toast svg{color:var(--teal);flex-shrink:0}.toast--error svg{color:var(--orange)}.toast.has-action{padding-right:8px}.toast.is-leaving{animation:.2s ease-in forwards toast-out}.toast-action{border-radius:var(--r-pill);background:var(--yellow);color:var(--ink);transition:transform var(--t-med) var(--ease-spring);margin-left:4px;padding:6px 12px;font-size:13px;font-weight:700}.toast-action:active{transform:scale(.92)}@keyframes toast-in{0%{opacity:0;translate:-50% 24px;scale:.9}}@keyframes toast-out{to{opacity:0;translate:-50% 12px;scale:.96}}.dialog-backdrop{z-index:90;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1a2b4a73;place-items:end center;padding:16px;animation:.2s both fade-in;display:grid;position:fixed;inset:0}.dialog{width:100%;max-width:400px;margin-bottom:env(safe-area-inset-bottom);border-radius:var(--r-lg);border:var(--stroke);background:var(--cream);box-shadow:var(--shadow-lg);animation:sheet-in .5s var(--ease-spring) both;flex-direction:column;gap:10px;padding:24px 20px 20px;display:flex}.dialog-icon{border:var(--stroke);background:var(--orange);width:52px;height:52px;color:var(--white);animation:pop-in .5s var(--ease-spring) .1s backwards;border-radius:50%;place-items:center;margin-bottom:4px;display:grid}.dialog-actions{gap:10px;margin-top:10px;display:flex}.dialog-actions .btn{padding:12px 16px;font-size:16px}@keyframes sheet-in{0%{opacity:0;translate:0 60px}}@keyframes dialog-in{0%{opacity:0;scale:.9}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (hover:hover){.icon-btn:hover{box-shadow:0 5px 0 0 var(--ink);transform:translateY(-2px)}.icon-btn[data-icon=back]:hover svg{translate:-3px}.icon-btn[data-icon=close]:hover svg{rotate:90deg}.btn:not(:disabled):hover{box-shadow:0 6px 0 0 var(--ink);transform:translateY(-2px)}.btn:not(:disabled):hover:before{transition:translate .75s var(--ease-out);translate:110%}.btn:not(:disabled):hover svg:first-child{rotate:-10deg;scale:1.12}.btn:not(:disabled):hover svg.btn-icon-end{translate:4px;rotate:0deg;scale:1}.pill:not([aria-pressed=true]):hover{box-shadow:3px 3px 0 0 var(--ink);transform:translate(-1px,-1px)}.card--interactive:hover{box-shadow:6px 6px 0 0 var(--ink);transform:translate(-2px,-2px)}.menu-trigger:not(.menu-trigger--dark):hover{box-shadow:3px 3px 0 0 var(--ink);transform:translate(-1px,-1px)}}.icon-btn:active{box-shadow:0 0 0 0 var(--ink);transition-duration:var(--t-press);transform:translateY(3px)}.btn:not(:disabled):active{box-shadow:0 0 0 0 var(--ink);transition-duration:var(--t-press);transition-timing-function:ease-out;transform:translateY(4px)scale(.985)}.pill:not([aria-pressed=true]):active{box-shadow:0 0 0 0 var(--ink);transition-duration:var(--t-press);transform:translate(2px,2px)scale(.96)}.card--interactive:active{box-shadow:0 0 0 0 var(--ink);transition-duration:var(--t-press);transform:translate(3px,3px)}.menu-anchor .menu-trigger:active{box-shadow:0 0 0 0 var(--ink);transition-duration:var(--t-press);transform:translate(2px,2px)scale(.92)}@media (width>=700px){body:has(.screen){background:var(--cream-deep)}body:has(.screen):before{content:"";z-index:-1;background-image:var(--paws);opacity:.45;position:fixed;inset:0}.screen{border:var(--stroke);min-height:auto;box-shadow:10px 10px 0 0 var(--ink);border-radius:36px;margin:40px auto;padding:28px 28px 36px}.dialog-backdrop{place-items:center}.dialog{animation-name:dialog-in}}.timeline{margin:4px 0 0;padding:0;list-style:none}.timeline-item{gap:14px;display:flex}.timeline-track{flex-direction:column;flex-shrink:0;align-items:center;width:32px;display:flex}.timeline-line{background:var(--ink);transform-origin:top;width:3px;min-height:28px;animation:draw-line .5s var(--ease-out) backwards;animation-delay:calc((var(--base,0) + var(--i,0) * 50 + 220) * 1ms);flex:1}.timeline .step-num{animation:pop-in .5s var(--ease-spring) backwards;animation-delay:calc((var(--base,0) + var(--i,0) * 50 + 80) * 1ms)}@keyframes draw-line{0%{scale:1 0}}.timeline-body{flex-direction:column;gap:6px;min-width:0;padding:4px 0 16px;display:flex}.timeline-title{align-items:center;gap:8px;margin:0;font-size:17px;font-weight:700;display:flex}.timeline-title svg{color:var(--blue)}.step-link{margin-top:6px;display:inline-block}.admin-link{color:var(--ink-soft);opacity:.7;align-self:center;font-size:12px;text-decoration:underline;transition:opacity .2s}.admin-link:hover{opacity:1}.footer-note{text-align:center;color:var(--blue);margin:0;font-size:14px;font-weight:700}.screen--paws>:not(.paw-bg){z-index:1;position:relative}.paw-bg{z-index:0;pointer-events:none;background-image:var(--paws);background-size:160px 170px;animation:1s both fade-in;position:absolute;inset:0}.photo-upload{border-radius:var(--r-lg);border:var(--stroke);background:var(--white) center / cover no-repeat;width:100%;height:220px;box-shadow:var(--shadow-lg);transition:transform var(--t-med) var(--ease-spring), box-shadow var(--t-med) var(--ease-spring), border-color .2s ease, background-color .2s ease, height .4s var(--ease-out);flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:relative;overflow:hidden}.photo-upload:active{box-shadow:var(--shadow-sm);transform:translate(2px,2px)}.photo-upload>svg{transition:translate var(--t-med) var(--ease-spring), scale var(--t-med) var(--ease-spring)}.photo-upload.is-dragging{border-color:var(--blue);background-color:#eef6ff;border-style:dashed;transform:scale(1.015)}.photo-upload.is-dragging>svg{translate:0 -6px;scale:1.2}.photo-upload[aria-invalid=true]{border-color:var(--orange)}.photo-upload.has-photo{height:320px;animation:photo-in .5s var(--ease-out)}@keyframes photo-in{0%{filter:blur(8px)saturate(.4)}}.photo-hint{color:var(--ink-soft);margin-top:6px;font-size:15px}.photo-format{color:var(--blue);font-size:12px;font-weight:700}.photo-detail{color:var(--ink-soft);font-size:11px}.age-hint{color:var(--ink-soft);margin-top:-10px;font-size:13px;line-height:19px}.age-hint strong{color:var(--ink)}.photo-change{border-radius:var(--r-pill);color:var(--white);animation:pop-in .4s var(--ease-spring) .2s backwards;background:#1a2b4ad9;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:700;display:flex;position:absolute;bottom:12px;right:12px}.add-pet-form .field-label{font-size:14px}.amount-row{flex-wrap:wrap}.amount{border-width:3px;padding:10px 16px;font-size:15px}.pix-card{align-items:stretch;gap:12px;padding:14px}.pix-card>*{animation:rise .4s var(--ease-out) backwards}.pix-card>.skeleton{animation:1.2s linear infinite shimmer}.qr-box{border-radius:var(--r-sm);border:var(--stroke-thin);background:var(--cream);width:160px;height:160px;color:var(--ink-soft);flex-direction:column;justify-content:center;align-self:center;align-items:center;gap:6px;display:flex;overflow:hidden}.qr-box span{font-family:var(--font-ui);font-size:10px}.qr-box svg{color:var(--ink)}.qr-box img{border-radius:var(--r-sm);width:100%;height:100%;image-rendering:pixelated;animation:qr-in .5s var(--ease-spring)}@keyframes qr-in{0%{opacity:0;rotate:-6deg;scale:.7}}.pix-code{border-radius:var(--r-sm);border:var(--stroke-thin);background:var(--cream);font-family:var(--font-ui);white-space:nowrap;text-overflow:ellipsis;padding:10px 12px;font-size:12px;overflow:hidden}.pix-code.is-flash{animation:.9s flash}@keyframes flash{0%{background-color:var(--yellow)}}.pix-code.skeleton{color:#0000}.pix-empty{border-radius:var(--r-sm);border:var(--stroke-thin);background:var(--cream);color:var(--ink-soft);text-align:center;border-style:dashed;flex-direction:column;align-items:center;gap:8px;padding:20px 12px;font-size:13px;display:flex}.pix-empty svg{animation:2.4s ease-in-out infinite bob}@keyframes bob{0%,to{translate:0}50%{translate:0 -4px}}.screen--center{justify-content:center;gap:18px}.pulse-icon{border:var(--stroke);background:var(--white);width:96px;height:96px;box-shadow:var(--shadow);color:var(--blue);border-radius:50%;align-self:center;place-items:center;margin-bottom:4px;display:grid;position:relative}.pulse-icon:before,.pulse-icon:after{content:"";border:3px solid var(--teal);animation:ring 2.4s var(--ease-out) infinite;pointer-events:none;border-radius:50%;position:absolute;inset:-3px}.pulse-icon:after{animation-delay:1.2s}@keyframes ring{0%{opacity:.9;scale:1}to{opacity:0;scale:1.7}}.hint-text{text-align:center;font-size:13px;transition:color .3s}.hint-text.is-active{color:var(--blue);animation:rise .4s var(--ease-out);font-weight:700}.wiggle{animation:wiggle 1s var(--ease-spring) .5s backwards;display:inline-block}@keyframes wiggle{0%{rotate:-6deg;scale:.8}40%{rotate:4deg}70%{rotate:-2deg}to{rotate:0deg;scale:1}}.confetti{z-index:80;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti-piece{animation:3s cubic-bezier(.25,.6,.4,1) both confetti-fall;position:absolute;top:-40px}.confetti-piece i{background:currentColor;border-radius:2px;display:block}@keyframes confetti-fall{0%{opacity:1;translate:0;rotate:0deg}85%{opacity:1}to{translate:var(--dx) 110vh;rotate:var(--rot);opacity:0}}.hero-img{aspect-ratio:350/150;border-radius:var(--r-lg);border:var(--stroke);width:100%;box-shadow:var(--shadow);overflow:hidden}.hero-img>div{width:100%;height:100%;animation:hero-zoom 1.4s var(--ease-out) backwards;transition:scale .6s var(--ease-out);background:50%/cover no-repeat}.hero-img:hover>div{scale:1.04}@keyframes hero-zoom{0%{scale:1.15}}.stats-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stat{border-radius:var(--r-md);border:var(--stroke-thin);background:var(--teal);box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;padding:10px 6px;display:flex}.stat strong{font-variant-numeric:tabular-nums;font-size:22px}.stat span{color:var(--ink-soft);font-size:12px}.reels{width:100%;max-width:var(--app-w);background:var(--ink);height:100dvh;margin:0 auto;position:relative;overflow:hidden}body:has(.reels){background:#0f1a2e}.reels-top{z-index:10;left:16px;right:24px;top:max(20px, env(safe-area-inset-top));pointer-events:none;justify-content:space-between;align-items:center;animation:.6s .2s backwards fade-in;display:flex;position:absolute}.reels-top>*{pointer-events:auto}.reels-back{width:40px;height:40px;color:var(--white);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:transform var(--t-med) var(--ease-spring), background-color .2s ease;background:#1a2b4a80;border:2px solid #ffffff54;border-radius:50%;place-items:center;display:grid}.reels-back svg{transition:translate var(--t-med) var(--ease-spring)}.reels-back:hover{background:#1a2b4acc}.reels-back:hover svg{translate:-3px}.reels-back:active{transform:scale(.9)}.reels-scroll{scroll-snap-type:y mandatory;scrollbar-width:none;overscroll-behavior:contain;height:100%;overflow-y:auto}.reels-scroll::-webkit-scrollbar{display:none}.reel{scroll-snap-align:start;scroll-snap-stop:always;height:100%;color:var(--white);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#22324f;position:relative;overflow:hidden}.reel-gradient,.reel-info,.reel-actions,.reels-top{transition:opacity .2s}.reel[data-holding] :is(.reel-gradient,.reel-info,.reel-actions){opacity:0;pointer-events:none}.reels:has(.reel[data-holding]) .reels-top{opacity:0;pointer-events:none}.reels:has(.reel[data-holding]) .reels-hint{visibility:hidden}.reel--empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex}.reel--empty>*{animation:rise .5s var(--ease-out) backwards}.reel--empty>:nth-child(2){animation-delay:80ms}.reel--empty>:nth-child(3){animation-delay:.16s}.reel-bg{opacity:0;transition:opacity .6s ease, scale 1.6s var(--ease-out);background:50%/cover no-repeat;position:absolute;inset:0;scale:1.08}.reel-bg.is-loaded{opacity:1;scale:1}.reel-gradient{background:linear-gradient(#1a2b4a00 0%,#1a2b4acc 60%,#1a2b4ae6 100%);height:40%;position:absolute;inset:auto 0 0}.reel-info{left:27px;right:80px;bottom:max(36px, calc(env(safe-area-inset-bottom) + 20px));flex-direction:column;gap:10px;display:flex;position:absolute}.reel-name{font-family:var(--font-hand);text-shadow:0 2px 12px #00000040;margin:0;font-size:50px;font-weight:400;line-height:1.1}.reel-details{flex-direction:column;gap:14px;margin:0;display:flex}.reel-detail{align-items:center;gap:12px;display:flex}.reel-detail dt{color:#ffffffb3;font-size:13px}.reel-detail dd{margin:2px 0 0;font-size:15px;font-weight:700}.reel-name,.reel-detail,.reel-actions>*{opacity:0;transition:opacity .45s ease, translate .6s var(--ease-out);translate:0 18px}.reel[data-active] .reel-name,.reel[data-active] .reel-detail,.reel[data-active] .reel-actions>*{opacity:1;translate:0}.reel[data-active] .reel-name{transition-delay:60ms}.reel[data-active] .reel-detail:first-child{transition-delay:.16s}.reel[data-active] .reel-detail:nth-child(2){transition-delay:.23s}.reel[data-active] .reel-detail:nth-child(3){transition-delay:.3s}.reel[data-active] .reel-actions>:first-child{transition-delay:.26s}.reel[data-active] .reel-actions>:nth-child(2){transition-delay:.34s}.reel-actions{right:20px;bottom:max(40px, calc(env(safe-area-inset-bottom) + 24px));color:var(--white);flex-direction:column;align-items:center;gap:32px;display:flex;position:absolute}.reel-actions button{filter:drop-shadow(0 1px 3px #00000059);flex-direction:column;align-items:center;gap:2px;font-size:12px;font-weight:700;display:flex}.reel-actions button>*{transition:scale var(--t-med) var(--ease-spring)}.reel-actions button:hover>:first-child{scale:1.12}.reel-actions button:active>:first-child{transition-duration:var(--t-press);scale:.82}.like-wrap{place-items:center;display:grid;position:relative}.is-liked{animation:like-pop .5s var(--ease-spring)}@keyframes like-pop{0%{scale:.5}}.like-sparks{pointer-events:none;position:absolute;inset:0}.like-sparks svg{color:var(--orange);animation:spark .7s var(--ease-out) both;animation-delay:var(--d);margin:-5px 0 0 -5px;position:absolute;top:50%;left:50%}@keyframes spark{0%{opacity:1;translate:0;scale:.4}to{opacity:0;translate:var(--x) var(--y);scale:1.2}}.reel-burst{z-index:5;pointer-events:none;filter:drop-shadow(0 4px 16px #0000004d);animation:.8s ease-out forwards burst;position:absolute;top:45%;left:50%;translate:-50% -50%}@keyframes burst{0%{opacity:0;scale:.4}25%{opacity:1;scale:1.1}70%{opacity:1;scale:1}to{opacity:0;scale:1.2}}.reels-hint{left:50%;bottom:max(8px, env(safe-area-inset-bottom));z-index:10;color:#ffffffd9;pointer-events:none;flex-direction:column;align-items:center;font-size:11px;font-weight:700;animation:6s 1.2s both hint;display:flex;position:absolute;translate:-50%}.reels-hint svg{animation:1.2s ease-in-out infinite bob}@keyframes hint{0%{opacity:0}10%,85%{opacity:1}to{opacity:0}}.story-picker{justify-content:center}.story-carousel{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;gap:14px;margin:0 -20px;padding:10px calc(50% - 115px) 18px;display:flex;overflow-x:auto}.story-carousel::-webkit-scrollbar{display:none}.story-frame{aspect-ratio:9/16;border:var(--stroke);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);background:var(--cream-deep);scroll-snap-align:center;cursor:pointer;opacity:.55;transition:scale var(--t-med) var(--ease-spring), rotate var(--t-med) var(--ease-spring), opacity .25s ease;flex:0 0 230px;padding:0;overflow:hidden;scale:.88}.story-frame[aria-current]{opacity:1;rotate:-1.5deg;scale:1}.story-frame img{object-fit:cover;width:100%;height:100%;animation:.4s both fade-in;display:block}.story-fallback{text-align:center;height:100%;color:var(--ink-soft);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:16px;font-size:14px;font-weight:700;display:flex}.only-desktop{display:none!important}.admin-login{justify-content:center;min-height:100dvh;padding:72px 24px 32px;display:flex}.admin-login-box{flex-direction:column;gap:24px;width:100%;max-width:420px;display:flex}.admin{width:100%;max-width:var(--app-w);min-height:100dvh;padding:max(20px, env(safe-area-inset-top)) 20px 32px;flex-direction:column;gap:14px;margin:0 auto;display:flex}.admin-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.admin-header .title-hand{font-size:30px}.admin-header .muted{font-size:13px}.metrics{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.metric{border-radius:var(--r-md);border:var(--stroke);background:var(--white);box-shadow:var(--shadow-sm);flex-direction:column;gap:2px;padding:10px 12px;display:flex}.metric-label{color:var(--ink-soft);font-size:11px}.metric strong{font-variant-numeric:tabular-nums;font-size:22px}.filters{flex-wrap:wrap}.filters .pill{font-size:13px}.admin-empty{border-radius:var(--r-lg);color:var(--ink-soft);text-align:center;animation:rise .45s var(--ease-out) backwards;border:2px dashed #1a2b4a40;flex-direction:column;align-items:center;gap:10px;padding:36px 16px;display:flex}.admin-empty svg{color:var(--teal);animation:2.4s ease-in-out infinite bob}.admin-cards{flex-direction:column;gap:12px;display:flex}.admin-card{border-radius:var(--r-lg);border:var(--stroke);background:var(--white);box-shadow:var(--shadow);flex-direction:column;gap:12px;padding:12px;display:flex;position:relative}.admin-card .status{position:absolute;top:12px;right:12px}.admin-card.is-leaving,.admin-tr.is-leaving{pointer-events:none;animation:card-out .3s var(--ease-out) forwards}@keyframes card-out{to{opacity:0;translate:48px;scale:.96}}.admin-photo{border-radius:var(--r-md);border:var(--stroke-thin);background:var(--teal) center / cover no-repeat;flex-shrink:0;width:88px;height:88px}.admin-phone{color:var(--ink-soft);font-size:13px}.admin-value{color:var(--blue);font-size:13px;font-weight:700}.admin-actions{flex-wrap:wrap}.admin-actions .pill{box-shadow:none}.admin-wa{border-radius:50%;justify-content:center;width:28px;height:28px;padding:0}.status{box-shadow:none}.status--pendente{background:var(--orange);color:var(--white)}.status--ativo{background:var(--teal)}.status--oculto{background:#d9dee7}.admin-table{border:var(--stroke);border-radius:var(--r-lg);background:var(--white);box-shadow:var(--shadow-lg);flex-direction:column;gap:10px;padding:16px;display:flex}.admin-tr{border:var(--stroke-thin);border-radius:var(--r-sm);transition:background-color .2s ease, translate var(--t-med) var(--ease-spring);grid-template-columns:1.4fr 1.1fr .8fr .9fr 2fr;align-items:center;gap:12px;padding:10px 12px;display:grid}.admin-tr:not(.admin-th):hover{background:var(--cream)}.admin-th{background:var(--cream);color:var(--ink-soft);border:0;font-size:12px;font-weight:700}.admin-avatar{border:var(--stroke-thin);background:var(--teal) center / cover no-repeat;border-radius:10px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}@media (width>=700px){.reels{border:3px solid #000;border-radius:36px;height:min(880px,100dvh - 48px);margin:max(24px,50dvh - 440px) auto;box-shadow:10px 10px #00000073}.screen--center{min-height:640px}}@media (width>=900px){.only-mobile{display:none!important}.only-desktop{display:revert!important}span.only-desktop{display:inline!important}.admin-table.only-desktop{display:flex!important}.admin-login{align-items:center;padding:32px}.admin-login-box{background:var(--white);border:var(--stroke);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);gap:20px;padding:36px}.admin-login-box .admin-input{background:var(--cream)}.admin{gap:18px;max-width:1280px;padding:32px 40px 48px}.admin-header .title-hand{font-size:36px}.metrics{grid-template-columns:repeat(4,1fr);gap:16px}.metric{box-shadow:var(--shadow);padding:14px 18px}.metric-label{font-size:12px}.metric strong{font-size:26px}}.spin{animation:.9s linear infinite spin}@keyframes fade-out{to{opacity:0}}@media (prefers-reduced-motion:reduce){.cascade>:not(.toast,.paw-bg,.cascade),.pix-card>*,.reel--empty>*,.admin-empty,.hint-text.is-active{animation-name:fade-in}.btn.btn--attention,.btn:before,.pix-empty svg,.admin-empty svg,.reels-hint svg,.pulse-icon:before,.pulse-icon:after,.like-sparks,.wiggle,.timeline-line,.hero-img>div,.photo-upload.has-photo{animation:none}.btn:before{display:none}.field-error{animation:.2s both fade-in}.admin-card.is-leaving,.admin-tr.is-leaving{animation-name:fade-out}.reel-name,.reel-detail,.reel-actions>*{translate:none}.reel-bg{scale:1}.toast,.toast.is-leaving,.dialog,.dialog-backdrop{animation-name:fade-in}.toast.is-leaving{animation-name:fade-out}}
