:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg-page: #F5F7FA;--bg-surface: #FFFFFF;--bg-subtle: #EDF0F5;--border-light: #E7EAF0;--border-input: #D8DEE9;--border-hover: #CBD5E1;--navy-dark: #0F2D52;--text-main: #0F2D52;--text-secondary: #667085;--text-muted: #667085;--gold-primary: #C89C3D;--gold-gradient: linear-gradient(135deg, #E3C46A 0%, #C89C3D 100%);--gold-hover: linear-gradient(135deg, #D4B45A 0%, #B88928 100%);--color-green: #16A34A;--color-green-bg: #F0FDF4;--color-green-border: #DCFCE7;--color-red: #B91C1C;--color-red-bg: #FEF2F2;--color-red-border: #FEE2E2;--radius-card: 20px;--radius-button: 12px;--radius-input: 12px;--shadow-card: 0 10px 30px rgba(15, 45, 82, .08);--shadow-gold: 0 4px 14px rgba(200, 156, 61, .35)}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-page);color:var(--text-main);font-family:var(--font-sans);min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased}#root{min-height:100vh;display:flex;flex-direction:column}button{font-family:var(--font-sans);cursor:pointer;border:none;outline:none}input,select,textarea{font-family:var(--font-sans)}@keyframes float{0%,to{transform:translateY(0);filter:drop-shadow(0 10px 15px rgba(0,0,0,.08))}50%{transform:translateY(-10px);filter:drop-shadow(0 20px 25px rgba(200,156,61,.22))}}.floating-logo{animation:float 4.5s ease-in-out infinite;display:inline-block}@keyframes timelinePulse{0%,to{transform:scale(1);box-shadow:0 0 18px #22c55e73,0 0 35px #22c55e33}50%{transform:scale(1.06);box-shadow:0 0 24px #22c55ea6,0 0 45px #22c55e59}}.timeline-step-pulse{animation:timelinePulse 2.3s ease-in-out infinite}.timeline-step-pulse-finite{animation:timelinePulse 2.3s ease-in-out 1.3 forwards}.btn-gold{background:var(--gold-gradient);color:#fff;font-weight:700;letter-spacing:.6px;text-transform:uppercase;height:60px;padding:0 32px;border-radius:var(--radius-button);transition:all .25s ease;display:inline-flex;align-items:center;justify:center;gap:10px;box-shadow:var(--shadow-gold);text-shadow:0 1px 2px rgba(0,0,0,.2)}.btn-gold:hover{background:var(--gold-hover);transform:translateY(-1px);box-shadow:0 6px 20px #c89c3d73}.btn-gold:disabled{opacity:.85;cursor:not-allowed;transform:none}.btn-secondary{background:var(--bg-surface);color:var(--navy-dark);border:1px solid var(--border-light);font-weight:600;padding:10px 20px;border-radius:var(--radius-button);transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.btn-secondary:hover{background:var(--bg-subtle);border-color:var(--gold-primary);color:var(--gold-primary)}.white-card{background-color:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-card);padding:32px;box-shadow:var(--shadow-card)}.gold-glow-card{width:100%;max-width:720px;background-color:#fff;border-radius:22px;padding:36px 40px;border:1.5px solid rgba(201,162,39,.45);box-shadow:0 0 0 1px #c9a2272e,0 0 18px #c9a2272e,0 0 40px #c9a2271f,0 20px 40px #0f2d5214;transition:all .25s ease;margin-bottom:20px}.gold-glow-card:hover{transform:translateY(-2px);border-color:#c9a227a6;box-shadow:0 0 0 1px #c9a2274d,0 0 30px #c9a2274d,0 0 60px #c9a2272e,0 25px 50px #0f2d521f}.input-field{width:100%;height:58px;background-color:var(--bg-surface);border:1.5px solid var(--border-input);color:var(--text-main);padding:0 20px;border-radius:var(--radius-input);font-size:1.1rem;transition:all .2s ease}.input-field:focus{border-color:#c8a24b;box-shadow:0 0 0 4px #c8a24b26;outline:none}.input-field::placeholder{color:#98a2b3}.form-group{margin-bottom:20px;display:flex;flex-direction:column;gap:6px}.form-label{font-size:.875rem;font-weight:700;color:var(--navy-dark);text-transform:uppercase;letter-spacing:.6px}.badge-status{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:700;width:fit-content}.badge-ativo{background-color:var(--color-green-bg);color:var(--color-green);border:1px solid var(--color-green-border)}.badge-inativo{background-color:var(--color-red-bg);color:var(--color-red);border:1px solid var(--color-red-border)}.badge-analise{background-color:#fffbeb;color:#b45309;border:1px solid #FDE68A}.badge-doc{background-color:#eff6ff;color:#1d4ed8;border:1px solid #BFDBFE}.badge-aguardando{background-color:#ffedd5;color:#c2410c;border:1px solid #FED7AA}.table-container{width:100%;overflow-x:auto;border:1px solid var(--border-light);border-radius:12px;background-color:var(--bg-surface)}.data-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.data-table th{background-color:#f5f7fa;color:var(--navy-dark);font-weight:700;padding:16px 18px;border-bottom:1px solid var(--border-light);text-transform:uppercase;font-size:.75rem;letter-spacing:.6px}.data-table td{padding:16px 18px;border-bottom:1px solid var(--border-light);color:var(--text-main)}.data-table tbody tr:hover{background-color:#f5f7fa}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f2d5273;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify:center;z-index:1000;padding:20px}.modal-content{background-color:var(--bg-surface);border:1px solid var(--border-light);border-radius:20px;width:100%;max-width:720px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 50px #00000026}.close-btn{background:transparent;color:var(--text-muted);font-size:1.5rem;padding:6px;border-radius:8px}.close-btn:hover{color:var(--navy-dark);background:#edf0f5}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f5f7fa}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--gold-primary)}html,body,#root{width:100%;max-width:100%;overflow-x:hidden!important}*{box-sizing:border-box}img,svg,video,canvas{max-width:100%;height:auto}.modal-content{width:min(calc(100vw - 24px),900px);max-height:90vh;overflow-y:auto}.add-associate-modal{width:min(640px,calc(100vw - 32px))!important;max-height:calc(100vh - 32px)!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:0!important;border-radius:20px!important}.add-associate-form{min-height:0;display:flex;flex:1;flex-direction:column;overflow:hidden}.add-associate-body{min-height:0;overflow-y:auto;padding:28px 34px}.add-associate-footer{display:flex;justify-content:flex-end;gap:12px;padding:18px 34px;border-top:1px solid #e5e7eb;background:#fff;flex-shrink:0}.bulk-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;align-items:end;margin-bottom:24px;max-width:100%;box-sizing:border-box}.bulk-select{width:100%;min-width:0;max-width:100%;height:54px;padding:0 40px 0 16px;border:1.5px solid #d8dee8;border-radius:14px;background-color:#fff;color:#082f58;font-size:15px;font-weight:700;line-height:1.2;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}.bulk-select:focus{outline:none;border-color:#c9a227;box-shadow:0 0 0 3px #c9a22733}.institution-status--protocolado{color:#b91c1c!important;background-color:#fff1f2!important;border:1px solid rgba(239,68,68,.35)!important;box-shadow:0 0 10px #ef444440,0 0 22px #ef444424!important;position:relative;overflow:hidden}.institution-status--protocolado:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 14px #ef44441f}.institution-status--protocolado .status-dot,.institution-status--protocolado .status-icon{background-color:#ef4444!important;color:#ef4444!important;box-shadow:0 0 8px #ef4444cc,0 0 16px #ef444473!important}.bulk-select--protocolado{color:#b91c1c!important;border-color:#ef44448c!important;background-color:#fff1f2!important;box-shadow:0 0 10px #ef444447,0 0 22px #ef444429!important}.bulk-select--baixado{color:#166534!important;border-color:#22c55e80!important;background-color:#f0fdf4!important;box-shadow:0 0 10px #22c55e33!important}.bulk-select--solicitado{color:#92400e!important;border-color:#f59e0b80!important;background-color:#fffbeb!important;box-shadow:0 0 10px #f59e0b33!important}@media(prefers-reduced-motion:reduce){.institution-status--protocolado,.bulk-select--protocolado{box-shadow:none!important}}.desktop-timeline{display:block}.mobile-timeline{display:none}@media(max-width:768px){.desktop-sidebar{display:none!important}.mobile-header{display:flex!important}.admin-main-content{margin-left:0!important;padding:80px 14px 24px!important}.white-card{padding:18px 14px!important;border-radius:16px!important}.gold-glow-card{padding:22px 16px!important;border-radius:18px!important;width:100%!important}.btn-gold{height:52px!important;padding:0 16px!important;font-size:.875rem!important}.desktop-timeline{display:none!important}.mobile-timeline{display:block!important}.institution-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:16px!important;width:100%!important}@media(max-width:1024px){.institution-grid{grid-template-columns:repeat(2,1fr)!important;gap:16px!important}}@media(max-width:640px){.institution-grid{grid-template-columns:1fr!important;gap:14px!important}}.modal-overlay{padding:12px!important;align-items:flex-end!important}.modal-content{width:100%!important;max-width:100%!important;max-height:92vh!important;border-radius:20px 20px 0 0!important;padding:20px 16px!important}.add-associate-modal{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important;border-radius:20px 20px 0 0!important;padding:0!important}.add-associate-body{padding:20px!important}.add-associate-footer{padding:14px 20px!important}.add-associate-footer button{flex:1}.bulk-grid{grid-template-columns:1fr!important}.bulk-select{height:52px!important;padding:0 40px 0 14px!important;font-size:14px!important}.form-grid-2{grid-template-columns:1fr!important}.btn-group-mobile{flex-direction:column!important;width:100%!important}.btn-group-mobile>button{width:100%!important}}.steps-grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;width:100%}@media(max-width:768px){.public-header{padding:12px 14px!important}.brand-slogan-text{display:none!important}.admin-login-header-btn{padding:6px 10px!important}.admin-btn-text{font-size:.75rem!important}.steps-connecting-line{display:none!important}.como-funciona-section{padding:32px 16px!important}.como-funciona-header-side{min-width:100%!important;border-right:none!important;border-bottom:1px solid #E7EAF0!important;padding-right:0!important;padding-bottom:16px!important;margin-bottom:8px!important}.steps-grid-5{grid-template-columns:1fr!important;gap:16px!important}.step-card-item{display:flex!important;align-items:flex-start!important;gap:14px!important;padding:12px 14px!important;background-color:#f8fafc!important;border-radius:12px!important;border:1px solid #E2E8F0!important}}.hero-content{animation:heroFadeIn .7s ease-out both}.hero-title{text-shadow:0 2px 8px rgba(8,42,78,.18),0 0 18px rgba(218,174,70,.16);animation:heroFloat 4s ease-in-out infinite;will-change:transform}@keyframes heroFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.hero-title,.hero-content{animation:none!important}}@media(max-width:640px){.public-header{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:12px!important;padding:14px 16px!important;width:100%!important;max-width:100vw!important;box-sizing:border-box!important;overflow:hidden!important}.public-header .brand-area{width:100%!important;display:flex!important;justify-content:center!important;align-items:center!important;gap:10px!important;min-width:0!important}.public-header .admin-btn-wrapper{margin-left:0!important;width:100%!important;display:flex!important;justify-content:center!important}.public-header .admin-button{width:auto!important;max-width:calc(100vw - 32px)!important;white-space:normal!important;text-align:center!important;padding:8px 16px!important}}@media(max-width:480px){.search-input{width:100%!important;min-width:0!important;font-size:15px!important;padding:14px 14px 14px 44px!important;height:52px!important}.search-input::placeholder{font-size:13.5px!important}}@media(max-width:640px){.brand-title{font-size:clamp(22px,6.5vw,34px)!important;max-width:280px!important;overflow-wrap:normal!important;text-align:center!important}}
