@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Inter:wght@400;500;600;700&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f2f6fd;--bg-soft:#e9f0fc;--surface:#fff;--surface-alt:#f8faff;--border:#e1e8f7;--border-soft:#ecf1fb;--text:#131a2c;--text-muted:#5c6787;--text-soft:#8b93ac;--primary:#1f6bf2;--primary-600:#135fe6;--primary-700:#0d4bc2;--primary-soft:#e6effe;--primary-ring:#1f6bf242;--cyan:#17c3d6;--gradient:linear-gradient(120deg, #1f6bf2 0%, #2f9df6 45%, #22d3c5 110%);--gradient-soft:linear-gradient(135deg, #1f6bf21f 0%, #22d3c51f 100%);--gradient-text:linear-gradient(120deg, #145fe0 0%, #17b8d6 100%);--success:#17a673;--success-soft:#e7faf2;--danger:#e5484d;--danger-soft:#fdecec;--warning:#d9822b;--warning-soft:#fdf3e4;--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--radius-pill:999px;--shadow-xs:0 1px 2px #0f1e460d;--shadow-sm:0 2px 10px #0f1e4612;--shadow-md:0 12px 30px -10px #0d378238;--shadow-lg:0 26px 64px -20px #0d378252;--shadow-focus:0 0 0 4px var(--primary-ring);--ease:cubic-bezier(.22, 1, .36, 1);--spring:cubic-bezier(.34, 1.56, .64, 1);--fast:.15s var(--ease);--med:.26s var(--ease);--slow:.42s var(--ease);--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:"Plus Jakarta Sans", var(--font-sans);--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px);font:16px/1.5 var(--font-sans);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}*,:before,:after{box-sizing:border-box;min-width:0}html{scroll-behavior:smooth}body{background:var(--bg);min-height:100svh;margin:0;overflow-x:hidden}.bg-fx{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.bg-fx:before,.bg-fx:after{content:"";filter:blur(70px);opacity:.35;border-radius:50%;width:60vmax;height:60vmax;animation:26s ease-in-out infinite alternate drift;position:absolute}.bg-fx:before{background:radial-gradient(circle at 30% 30%,#4fa3ff,#0000 70%);top:-22vmax;left:-18vmax}.bg-fx:after{background:radial-gradient(circle at 70% 70%,#22d3c5,#0000 70%);animation-duration:30s;animation-delay:-9s;bottom:-26vmax;right:-20vmax}@keyframes drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(4vmax,3vmax)scale(1.08)}}#root{flex-direction:column;min-height:100svh;display:flex}h1,h2,h3{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;font-weight:700}h1{margin:0;font-size:1.7rem}h2{margin:0 0 4px;font-size:1.1rem;line-height:1.3}h3{margin:0 0 4px;font-size:1rem}p{margin:0}a{color:var(--primary-600);transition:color var(--fast);text-decoration:none}a:hover{color:var(--primary-700);text-decoration:underline}::selection{background:var(--primary-soft);color:var(--primary-700)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);border:2px solid var(--bg);background:#cdd8f0}::-webkit-scrollbar-thumb:hover{background:#b3c2e6}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.app-shell{width:100%;max-width:760px;padding:calc(1rem + var(--safe-t)) 1rem calc(4.75rem + var(--safe-b));flex-direction:column;flex:1;margin:0 auto;display:flex}@media (width>=560px){.app-shell{padding:calc(1.5rem + var(--safe-t)) 1.25rem calc(3rem + var(--safe-b))}}@media (width>=640px){.app-shell{padding:calc(2rem + var(--safe-t)) 1.5rem calc(5rem + var(--safe-b))}}.app-header{animation:fadeInDown var(--slow) both;align-items:center;gap:.65rem;margin-bottom:1.1rem;display:flex}.brand{align-items:center;gap:.6rem;min-width:0;display:flex}.brand-mark{background:var(--gradient);color:#fff;width:38px;height:38px;box-shadow:var(--shadow-sm);animation:gradientShift 6s ease-in-out infinite, popIn var(--slow) var(--spring) both;background-size:220% 220%;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.brand-mark svg{width:19px;height:19px}.brand-text{min-width:0}.brand-text h1{white-space:nowrap;text-overflow:ellipsis;background:var(--gradient-text);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.05rem;overflow:hidden}.brand-text span{color:var(--text-soft);white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;font-weight:500;display:block;overflow:hidden}@media (width>=480px){.brand-mark{width:42px;height:42px}.brand-mark svg{width:21px;height:21px}.brand-text h1{font-size:1.2rem}.brand-text span{font-size:.8rem}}.app-nav{z-index:40;background:var(--surface);border-top:1px solid var(--border);padding:.3rem calc(.3rem + var(--safe-r)) calc(.3rem + var(--safe-b)) calc(.3rem + var(--safe-l));animation:fadeInUp var(--slow) 60ms both;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px -12px #0d378229}.nav-tab{color:var(--text-soft);font-family:var(--font-sans);border-radius:var(--radius-sm);cursor:pointer;text-align:center;transition:color var(--fast), transform var(--fast);background:0 0;border:none;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:.2rem;padding:.45rem .2rem .4rem;font-size:.64rem;font-weight:600;line-height:1.15;display:flex;position:relative}.nav-tab svg{opacity:.75;width:21px;height:21px;transition:opacity var(--fast), transform var(--fast);flex-shrink:0}.nav-tab:hover{color:var(--primary-700)}.nav-tab:active{transform:scale(.94)}.nav-tab.is-active{color:var(--primary-700)}.nav-tab.is-active svg{opacity:1;animation:tabIconPop .32s var(--spring) both}.nav-tab.is-active:before{content:"";border-radius:var(--radius-pill);background:var(--gradient);width:20px;height:3px;animation:indicatorIn .26s var(--spring) 40ms both;position:absolute;top:2px;left:50%;transform:translate(-50%)scaleX(0)}@media (width>=560px){.app-nav{border:1px solid var(--border);border-radius:var(--radius-pill);box-shadow:var(--shadow-xs);flex-wrap:wrap;justify-content:center;gap:.25rem;margin-bottom:1.6rem;padding:.3rem;position:static;inset:auto}.nav-tab{border-radius:var(--radius-pill);flex-direction:row;flex:none;gap:.4rem;padding:.55rem .7rem;font-size:.78rem}.nav-tab svg{width:15px;height:15px}.nav-tab:hover{background:var(--bg-soft)}.nav-tab.is-active{background:var(--gradient);color:#fff;box-shadow:var(--shadow-sm)}.nav-tab.is-active svg{opacity:1;animation:none}.nav-tab.is-active:before{display:none}}.app-main{flex:1}.page-enter{animation:fadeInUp var(--slow) var(--ease) both}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--med), transform var(--med);padding:1.15rem}@media (width>=480px){.card{padding:1.5rem}}.card+.card{margin-top:1.1rem}.card-title-row{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:1.1rem;display:flex}.card-subtitle{color:var(--text-soft);font-size:.82rem}.auth-page{flex:1;justify-content:center;align-items:center;padding:1.5rem 0;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:380px;box-shadow:var(--shadow-md);animation:fadeInUp var(--slow) both;padding:1.75rem 1.4rem;position:relative;overflow:hidden}@media (width>=480px){.auth-card{padding:2rem 1.85rem}}.auth-card:before{content:"";background:var(--gradient);background-size:200% 100%;height:5px;animation:5s linear infinite gradientShift;position:absolute;inset:0 0 auto}.auth-card-icon{background:var(--gradient-soft);width:46px;height:46px;color:var(--primary-600);animation:popIn var(--slow) var(--spring) both;border-radius:13px;justify-content:center;align-items:center;margin-bottom:1rem;display:flex}.auth-card-icon svg{width:22px;height:22px}.auth-card h2{margin-bottom:.25rem}.auth-card-subtitle{color:var(--text-soft);margin-bottom:1.4rem;font-size:.85rem}.auth-switch{text-align:center;color:var(--text-soft);margin-top:1.35rem;font-size:.82rem}form,.form-row{flex-direction:column;gap:.9rem;display:flex}.form-row>label{flex:auto}@media (width>=480px){.form-row{flex-flow:wrap;gap:.75rem}.form-row>label{flex:150px}}label{color:var(--text-muted);flex-direction:column;gap:.35rem;font-size:.8rem;font-weight:600;display:flex}input,select,textarea{font:inherit;color:var(--text);background:var(--surface-alt);border:1.5px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--fast), box-shadow var(--fast), background var(--fast);width:100%;padding:.62rem .8rem;font-size:1rem}@media (width>=480px){input,select,textarea{font-size:.92rem}}input::placeholder{color:var(--text-soft)}input:hover,select:hover,textarea:hover{border-color:#c2d1f0}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:var(--shadow-focus);background:var(--surface);outline:none}input:disabled,select:disabled{opacity:.6;cursor:not-allowed}select{cursor:pointer;appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-soft) 50%), linear-gradient(135deg, var(--text-soft) 50%, transparent 50%);background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:2rem}fieldset{border:1.5px dashed var(--border);border-radius:var(--radius-md);background:var(--surface-alt);flex-direction:column;gap:.8rem;min-width:0;margin:0;padding:.95rem .9rem 1.1rem;display:flex}@media (width>=480px){fieldset{padding:1.1rem 1.1rem 1.25rem}}legend{font-family:var(--font-display);color:var(--primary-600);padding:0 .4rem;font-size:.83rem;font-weight:700}button{font:inherit;cursor:pointer}.btn{border-radius:var(--radius-pill);min-height:44px;transition:transform var(--fast), box-shadow var(--fast), background var(--fast), border-color var(--fast), color var(--fast), opacity var(--fast);white-space:nowrap;border:1.5px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1.15rem;font-size:.88rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary{background:var(--gradient);color:#fff;box-shadow:var(--shadow-sm);transition:transform var(--fast), box-shadow var(--fast), background-position var(--slow), opacity var(--fast);background-position:0%;background-size:200% 200%}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md);background-position:100%;transform:translateY(-1px)}.btn-primary:after{content:"";transition:background-position .65s var(--ease);pointer-events:none;background:linear-gradient(115deg,#0000 30%,#ffffff59 48%,#0000 66%) 130% 0/220% 100%;position:absolute;inset:0}.btn-primary:hover:not(:disabled):after{background-position:-30% 0}.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.btn-secondary:hover:not(:disabled){border-color:var(--primary);color:var(--primary-700)}.btn-ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--bg-soft);color:var(--text)}.btn-danger{background:var(--danger-soft);color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger);color:#fff}.btn-sm{min-height:36px;padding:.4rem .85rem;font-size:.78rem}.btn-block{width:100%}button:not([class*=btn]):not(.nav-tab):not(.chip){background:var(--surface);color:var(--text);border:1.5px solid var(--border);border-radius:var(--radius-pill);transition:border-color var(--fast), color var(--fast);padding:.5rem .95rem;font-size:.85rem;font-weight:600}button:not([class*=btn]):not(.nav-tab):not(.chip):hover{border-color:var(--primary);color:var(--primary-700)}.spinner{border:2px solid #ffffff73;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin;display:inline-block}.spinner-dark{border:2px solid var(--border);border-top-color:var(--primary)}[role=alert]{color:var(--danger);background:var(--danger-soft);border-radius:var(--radius-sm);animation:shakeIn var(--slow) var(--ease) both;border:1px solid #e5484d40;align-items:flex-start;gap:.55rem;padding:.7rem .9rem;font-size:.85rem;font-weight:500;display:flex}.alert-success{color:var(--success);background:var(--success-soft);border-radius:var(--radius-sm);animation:popIn var(--med) var(--spring) both;border:1px solid #17a67340;align-items:flex-start;gap:.55rem;padding:.7rem .9rem;font-size:.85rem;font-weight:500;display:flex}.alert-info{color:var(--text-muted);background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:.5rem;padding:.7rem .9rem;font-size:.85rem;display:flex}.badge{letter-spacing:.02em;text-transform:uppercase;border-radius:var(--radius-pill);white-space:nowrap;align-items:center;gap:.35rem;padding:.22rem .6rem;font-size:.72rem;font-weight:700;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge-success{background:var(--success-soft);color:var(--success)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge-warning{background:var(--warning-soft);color:var(--warning)}.badge-muted{background:var(--bg-soft);color:var(--text-soft)}header{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);animation:fadeInUp var(--slow) both;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.1rem;padding:.85rem 1rem;display:flex}header p{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.92rem;font-weight:600;overflow:hidden}header p strong{color:var(--primary-700)}header .btn{flex-shrink:0}@media (width>=480px){header{padding:1rem 1.25rem}header p{white-space:normal;font-size:.95rem}}section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);animation:fadeInUp var(--slow) both;margin-bottom:1.1rem;padding:1.15rem}@media (width>=480px){section{padding:1.5rem}}section h2{align-items:center;gap:.5rem;display:flex}.toolbar{flex-direction:column;gap:.75rem;margin-bottom:1rem;display:flex}.toolbar-row{gap:.65rem;display:flex}.toolbar-row label{flex:1 1 0}.toolbar>.btn{width:100%}@media (width>=560px){.toolbar{flex-flow:wrap;align-items:flex-end}.toolbar-row,.toolbar-row label{flex:none}.toolbar-row select,.toolbar-row input{width:auto;min-width:6.5rem}.toolbar>.btn{width:auto;margin-left:auto}}.table-wrap{border:1px solid var(--border-soft);border-radius:var(--radius-md);animation:fadeIn var(--slow) both;-webkit-overflow-scrolling:touch;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.82rem}thead th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-soft);background:var(--bg-soft);border-bottom:1px solid var(--border);padding:.65rem .75rem;font-size:.72rem}td{border-bottom:1px solid var(--border-soft);color:var(--text);padding:.65rem .75rem}tbody tr{transition:background var(--fast)}tbody tr:hover{background:var(--bg-soft)}tbody tr:last-child td{border-bottom:none}@media (width<=639px){.table-wrap{border:none;overflow:visible}table{width:100%;min-width:0}thead{display:none}table,tbody,tr{width:100%;display:block}tbody tr{background:var(--surface-alt);border:1px solid var(--border-soft);border-radius:var(--radius-md);animation:fadeInUp var(--med) both;margin-bottom:.65rem;padding:.2rem .85rem}tbody tr:last-child{margin-bottom:0}td{border-bottom:1px dashed var(--border-soft);text-align:right;justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem 0;display:flex}td:last-child{border-bottom:none}td:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.03em;color:var(--text-soft);text-align:left;font-size:.68rem;font-weight:700}}@media (width>=640px){table{min-width:640px}}ul{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}section ul li{background:var(--surface-alt);border:1px solid var(--border-soft);border-radius:var(--radius-md);transition:border-color var(--fast), transform var(--fast), box-shadow var(--fast);animation:fadeInUp var(--med) both;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .9rem;font-size:.85rem;display:flex}section ul li:hover{border-color:var(--border);box-shadow:var(--shadow-xs);transform:translateY(-1px)}.record-item{flex-direction:column;align-items:stretch;gap:.5rem;width:100%;display:flex}.record-item-main{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.record-item-meta{color:var(--text-soft);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.8rem;display:flex}.record-item img{border-radius:var(--radius-sm);border:1px solid var(--border);width:100%;max-width:160px;height:auto;display:block}.empty-state{text-align:center;color:var(--text-soft);border:1.5px dashed var(--border);border-radius:var(--radius-md);background:var(--surface-alt);padding:1.4rem 1rem;font-size:.85rem}.chip-group{flex-wrap:wrap;gap:.5rem;display:flex}.chip{border:1.5px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:var(--radius-pill);cursor:pointer;min-height:40px;transition:all var(--fast);padding:.5rem .9rem;font-size:.82rem;font-weight:600}.chip:hover{border-color:var(--primary);color:var(--primary-700)}.chip.is-active{background:var(--gradient);color:#fff;box-shadow:var(--shadow-sm);animation:tabPop .32s var(--spring) both;border-color:#0000}.capture-box{border:1.5px dashed var(--border);border-radius:var(--radius-md);background:var(--surface-alt);text-align:center;transition:border-color var(--med);flex-direction:column;align-items:center;gap:.85rem;padding:1.1rem;display:flex}.capture-box:has(video[style*=block]){border-color:var(--primary);animation:2s ease-in-out infinite pulseBorder}.capture-box video,.capture-box img{border-radius:var(--radius-md);width:100%;max-width:360px;box-shadow:var(--shadow-sm);border:1px solid var(--border)}.capture-hint{color:var(--text-soft);font-size:.8rem}.comprovante-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:calc(1rem + var(--safe-t)) calc(1rem + var(--safe-r)) calc(1rem + var(--safe-b)) calc(1rem + var(--safe-l));z-index:50;animation:fadeIn var(--med) both;background:#08102680;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.comprovante{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:380px;max-height:100%;box-shadow:var(--shadow-lg);animation:popIn var(--slow) var(--spring) both;margin:0;padding:1.6rem;position:relative;overflow-y:auto}.comprovante:before{content:"";border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--gradient);height:5px;position:absolute;inset:0 0 auto}.comprovante h3{margin-bottom:1rem;font-size:1.05rem}.comprovante p{border-bottom:1px dashed var(--border-soft);justify-content:space-between;gap:.75rem;padding:.4rem 0;font-size:.87rem;display:flex}.comprovante p:last-of-type{border-bottom:none}.comprovante-acoes{flex-direction:column;gap:.6rem;margin-top:1.1rem;display:flex}.comprovante-acoes .btn{width:100%}@media print{body *{visibility:hidden}.comprovante,.comprovante *{visibility:visible}.comprovante-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;padding:0;position:static}.comprovante{width:100%;box-shadow:none;border-radius:0;max-height:none;position:absolute;top:0;left:0;overflow:visible}.comprovante-acoes{display:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.9)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes tabPop{0%{transform:scale(.9)}55%{transform:scale(1.045)}to{transform:scale(1)}}@keyframes tabIconPop{0%{transform:translateY(2px)scale(.85)}60%{transform:translateY(-1px)scale(1.12)}to{transform:translateY(0)scale(1)}}@keyframes indicatorIn{0%{transform:translate(-50%)scaleX(0)}to{transform:translate(-50%)scaleX(1)}}@keyframes shakeIn{0%{opacity:0;transform:translate(-6px)}50%{transform:translate(3px)}to{opacity:1;transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes gradientShift{0%,to{background-position:0%}50%{background-position:100%}}@keyframes pulseBorder{0%,to{box-shadow:0 0 0 0 var(--primary-ring)}50%{box-shadow:0 0 0 6px #1f6bf200}}section ul li:first-child{animation-delay:0s}section ul li:nth-child(2){animation-delay:40ms}section ul li:nth-child(3){animation-delay:80ms}section ul li:nth-child(4){animation-delay:.12s}section ul li:nth-child(n+5){animation-delay:.15s}
