body{font-family:Inter,sans-serif;background-color:#f3f4f6;color:#1f2937;margin:0;min-height:100vh}.filter-panel{background-color:#fff;border-bottom:1px solid #e5e7eb}.card{background-color:#fff;border-radius:.5rem;border:1px solid #e5e7eb;transition:box-shadow .3s ease,border-color .3s ease}.card:hover{border-color:#d1d5db;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #0000000f}.card.priority-brand{border-left:4px solid #eab308}.card-content{max-height:0;overflow:hidden;transition:max-height .5s ease-out 0s}.card.open>.card-content{max-height:2000px;transition:max-height .7s ease-in 0s}.rotate-90{transform:rotate(90deg)}.transition-transform{transition:transform .2s ease}.loader{border:4px solid #e5e7eb;border-top:4px solid #3b82f6;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.custom-select-container{position:relative}.custom-select-container .custom-select-input{background-color:#fff;border:2px solid #d1d5db;border-radius:.5rem;padding:.5rem 2.5rem .5rem .75rem;font-size:.875rem;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000000d;min-height:2.5rem;display:flex;align-items:center;position:relative}.custom-select-container .custom-select-input:hover{border-color:#3b82f6;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.custom-select-container .custom-select-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.custom-select-container .dropdown-icon{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);pointer-events:none;color:#6b7280;transition:color .2s ease;display:flex;align-items:center;justify-content:center;height:1rem}.custom-select-container:hover .dropdown-icon{color:#3b82f6}.custom-select-container .custom-select-input:focus+.dropdown-icon{color:#3b82f6}.custom-select-dropdown{position:absolute;background-color:#fff;border:2px solid #d1d5db;border-radius:.5rem;min-width:300px;width:max-content;z-index:10;max-height:200px;overflow-y:auto;overflow-x:hidden;margin-top:.25rem;box-shadow:0 10px 15px -3px #0000001a;top:100%;left:0;right:0}.custom-select-dropdown input[type=text]{background-color:#f9fafb;border:none;border-bottom:1px solid #d1d5db;border-radius:0;padding:.75rem;font-size:.875rem;width:100%;outline:none}.custom-select-dropdown input[type=text]:focus{border-bottom-color:#3b82f6;background-color:#fff}input[type=date],select,.custom-select-input{background-color:#f9fafb;border-color:#d1d5db;color:#1f2937}.date-input-container{position:relative}.date-input-container input[type=date]{background-color:#fff;border:2px solid #d1d5db;border-radius:.5rem;padding:.5rem 2rem .5rem .75rem;font-size:.875rem;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000000d}.date-input-container input[type=date]:hover{border-color:#3b82f6;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.date-input-container input[type=date]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.date-input-container .calendar-icon{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);pointer-events:none;color:#6b7280;transition:color .2s ease}.date-input-container:hover .calendar-icon{color:#3b82f6}.date-input-container input[type=date]:focus+.calendar-icon{color:#3b82f6}.date-input-container select{background-color:#fff;border:2px solid #d1d5db;border-radius:.5rem;padding:.5rem 2rem .5rem .75rem;font-size:.875rem;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000000d;appearance:none;-webkit-appearance:none;-moz-appearance:none}.date-input-container select:hover{border-color:#3b82f6;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.date-input-container select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.select-icon{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);pointer-events:none;color:#6b7280;transition:color .2s ease;display:flex;align-items:center;justify-content:center;height:1rem}.date-input-container:hover .select-icon{color:#3b82f6}.date-input-container select:focus+.select-icon{color:#3b82f6}.date-input-container input[type=date]::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:auto;height:auto;color:transparent;background:transparent;cursor:pointer}.date-input-container input[type=date]::-webkit-inner-spin-button,.date-input-container input[type=date]::-webkit-clear-button{display:none}.modal-overlay{background-color:#00000080}.modal-container{transition:opacity .3s ease-in-out,transform .3s ease-in-out}.client-counter{transition:transform .2s ease,box-shadow .2s ease;min-width:120px}.client-counter:hover{transform:translateY(-1px);box-shadow:0 8px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.brand-select-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}#root{display:flex;flex-direction:column;min-height:100vh}.generate-analysis-button{position:relative;overflow:hidden;isolation:isolate;background-color:transparent;transition:transform .25s ease,box-shadow .35s ease}.generate-analysis-button:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,#2563eb,#1d4ed8);background-size:160% 160%;transition:transform .5s ease,filter .5s ease,opacity .5s ease;z-index:-2;pointer-events:none}.generate-analysis-button:before{content:"";position:absolute;inset:-18%;border-radius:inherit;background:linear-gradient(135deg,#7f1d1de6,#dc2626e0,#f87171c7);opacity:0;transform:scale(.96);transition:opacity .45s ease,transform .45s ease;z-index:-1;pointer-events:none}.generate-analysis-button:hover:after{filter:brightness(1.05)}.generate-analysis-button.refresh-active{transform:translateY(-1px) scale(1.01);box-shadow:0 18px 36px -24px #b91c1cbf}.generate-analysis-button.refresh-active:before{opacity:1;transform:scale(1.02);animation:refreshPulse 2.2s ease-in-out infinite}.generate-analysis-button.refresh-active:after{transform:scale(1.03);filter:brightness(.82) saturate(.89);animation:glowPulse 3s ease-in-out infinite}@keyframes refreshPulse{0%{filter:brightness(.98) saturate(.95)}40%{filter:brightness(1.18) saturate(1.25)}to{filter:brightness(.98) saturate(.95)}}@keyframes glowPulse{0%{opacity:.85;box-shadow:0 0 #ef44443d}35%{opacity:.95;box-shadow:0 0 0 6px #ef444429}to{opacity:.85;box-shadow:0 0 #ef44443d}}
