:root{--color-primary:#0d9488;--color-primary-light:#14b8a6;--color-primary-dark:#0f766e;--color-primary-50:#f0fdfa;--color-primary-100:#ccfbf1;--color-primary-200:#99f6e4;--color-secondary:#3b82f6;--color-secondary-light:#60a5fa;--color-secondary-dark:#2563eb;--color-accent:#8b5cf6;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-white:#fff;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--status-upcoming:#3b82f6;--status-in-progress:#f59e0b;--status-done:#10b981;--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-size-6xl:3.75rem;--spacing-1:0.25rem;--spacing-2:0.5rem;--spacing-3:0.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--shadow-2xl:0 25px 50px -12px rgba(0,0,0,.25);--shadow-glow:0 0 40px rgba(13,148,136,.3);--transition-fast:150ms ease;--transition-base:250ms ease;--transition-slow:350ms ease;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal:400;--z-tooltip:500}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--color-gray-800);background:linear-gradient(135deg,var(--color-primary-50) 0,var(--color-white) 50%,#eef2ff 100%)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--color-gray-900)}h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}p{margin-bottom:var(--spacing-4)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-base);font-weight:600;border-radius:var(--radius-lg);border:none;cursor:pointer;transition:all var(--transition-base);text-decoration:none}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);color:var(--color-white);box-shadow:var(--shadow-md),0 4px 20px rgba(13,148,136,.3)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg),0 6px 30px rgba(13,148,136,.4)}.btn-secondary{background:var(--color-white);color:var(--color-primary);border:2px solid var(--color-primary)}.btn-secondary:hover{background:var(--color-primary-50);transform:translateY(-2px)}.btn-success{background:linear-gradient(135deg,var(--color-success) 0,#059669 100%);color:var(--color-white)}.btn-success:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-sm{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm)}.btn-lg{padding:var(--spacing-4) var(--spacing-8);font-size:var(--font-size-lg)}.card{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-6);box-shadow:var(--shadow-lg);border:1px solid hsla(0,0%,100%,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.card-glass{background:hsla(0,0%,100%,.7);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid hsla(0,0%,100%,.5)}.form-group{margin-bottom:var(--spacing-4)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-700);margin-bottom:var(--spacing-2)}.form-input{width:100%;padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-base);border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);transition:all var(--transition-fast);background:var(--color-white)}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px rgba(13,148,136,.1)}.form-select{width:100%;padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-base);border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);transition:all var(--transition-fast);background:var(--color-white);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-3) center;background-size:1.25rem;padding-right:var(--spacing-10)}.form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px rgba(13,148,136,.1)}.badge{display:inline-flex;align-items:center;padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);font-weight:600;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em}.badge-upcoming{background:rgba(59,130,246,.15);color:var(--status-upcoming)}.badge-in-progress{background:rgba(245,158,11,.15);color:var(--status-in-progress)}.badge-done{background:rgba(16,185,129,.15);color:var(--status-done)}.chip{display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);background:linear-gradient(135deg,var(--color-primary-100) 0,var(--color-primary-50) 100%);border:1px solid var(--color-primary-200);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;color:var(--color-primary-dark);transition:all var(--transition-fast);cursor:pointer}.chip:hover{background:var(--color-primary-200);transform:scale(1.02)}.chip-delete{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:50%;background:var(--color-primary);color:var(--color-white);font-size:.75rem;cursor:pointer;transition:all var(--transition-fast)}.chip-delete:hover{background:var(--color-error);transform:scale(1.1)}.tabs{display:flex;gap:var(--spacing-2);background:var(--color-gray-100);padding:var(--spacing-1);border-radius:var(--radius-xl);margin-bottom:var(--spacing-6)}.tab{flex:1 1;padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-600);background:transparent;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base)}.tab:hover{color:var(--color-gray-800)}.tab.active{color:var(--color-primary)}.tab.active,.table-container{background:var(--color-white);box-shadow:var(--shadow-md)}.table-container{overflow-x:auto;border-radius:var(--radius-xl)}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:var(--spacing-4);text-align:left}.table th{background:var(--color-gray-50);font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-600);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--color-gray-200)}.table td{border-bottom:1px solid var(--color-gray-100)}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:var(--color-gray-50)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.animate-fade-in{animation:fadeIn .5s ease forwards}.animate-fade-in-up{animation:fadeInUp .6s ease forwards}.animate-slide-left{animation:slideInLeft .5s ease forwards}.animate-slide-right{animation:slideInRight .5s ease forwards}.animate-float{animation:float 4s ease-in-out infinite}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-secondary)}.text-gray{color:var(--color-gray-500)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--spacing-2)}.gap-4{gap:var(--spacing-4)}.gap-6{gap:var(--spacing-6)}.grid{display:grid}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.mt-2{margin-top:var(--spacing-2)}.mt-4{margin-top:var(--spacing-4)}.mt-6{margin-top:var(--spacing-6)}.mt-8{margin-top:var(--spacing-8)}.mb-4{margin-bottom:var(--spacing-4)}.mb-6{margin-bottom:var(--spacing-6)}.mb-8{margin-bottom:var(--spacing-8)}.p-4{padding:var(--spacing-4)}.p-6{padding:var(--spacing-6)}.p-8{padding:var(--spacing-8)}.w-full{width:100%}.hidden{display:none}@media (max-width:768px){h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}.container{padding:0 var(--spacing-4)}.grid-2,.grid-3{grid-template-columns:1fr}.tabs{flex-direction:column}.btn-lg{padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-base)}}.gradient-primary{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%)}.gradient-subtle{background:linear-gradient(135deg,var(--color-primary-50) 0,#eef2ff 100%)}.gradient-text{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.whatsapp-green{background-color:#25d366}.whatsapp-bg{background-color:#ece5dd}.whatsapp-sent{background-color:#dcf8c6}.whatsapp-received{background-color:#fff}body{background-color:#f8fafc;background-image:radial-gradient(#94a3b8 1px,transparent 0),radial-gradient(at 0 0,rgba(56,189,248,.2) 0,transparent 50%),radial-gradient(at 100% 100%,rgba(13,148,136,.2) 0,transparent 50%);background-size:24px 24px,100% 100%,100% 100%;background-attachment:fixed;min-height:100vh;color:var(--color-gray-900)}.react-datepicker-wrapper,.react-datepicker__input-container{display:block;width:100%}.react-datepicker{font-family:inherit!important;border-radius:16px!important;border-color:#e2e8f0!important;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)!important;overflow:hidden;font-size:.9rem!important}.react-datepicker__header{background-color:#f8fafc!important;border-bottom:1px solid #e2e8f0!important;padding-top:1rem!important}.react-datepicker__current-month{color:#22265c!important;font-weight:700!important;margin-bottom:.5rem!important}.react-datepicker__day-name{color:#64748b!important;font-weight:600!important}.react-datepicker__day{color:#334155!important;border-radius:50%!important;font-weight:500!important;margin:.2rem!important}.react-datepicker__day:hover{background-color:#f1f5f9!important}.react-datepicker__day--keyboard-selected,.react-datepicker__day--selected{background-color:#22265c!important;color:#fff!important;font-weight:600!important}.react-datepicker__day--today{color:#22265c!important;font-weight:700!important;position:relative}.react-datepicker__day--today:after{content:"";position:absolute;bottom:4px;left:50%;transform:translateX(-50%);width:4px;height:4px;background-color:#22265c;border-radius:50%}.react-datepicker__day--selected:after{background-color:#fff}.react-datepicker__time-container{border-left:1px solid #e2e8f0!important;width:120px!important}.react-datepicker__time-box{width:100%!important}.react-datepicker__time-list-item{height:auto!important;padding:8px 0!important;color:#334155!important}.react-datepicker__time-list-item:hover{background-color:#f1f5f9!important}.react-datepicker__time-list-item--selected{background-color:#22265c!important;color:#fff!important;font-weight:600!important}