:root{--primary-color:#fa5900;--primary-hover:#e34c00;--primary-light:#ffefe6;--background:#fff;--surface:#f5f5f7;--surface-elevated:#fff;--text-primary:#1d1d1f;--text-secondary:#86868b;--border-light:#d2d2d7;--border-medium:#b8b8bd;--success:#34c759;--disabled:#e5e5ea;--disabled-text:#c7c7cc;--shadow-sm:0 2px 8px rgba(0,0,0,.04);--shadow-md:0 4px 16px rgba(0,0,0,.08);--shadow-lg:0 8px 32px rgba(0,0,0,.12);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.custom-multi-select{margin-bottom:24px;margin-top:24px;position:relative;width:100%}.select-button{background-color:var(--surface-elevated);border:1.5px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);box-sizing:border-box;color:var(--text-primary);cursor:pointer;font-size:15px;font-weight:500;padding:14px 48px 14px 18px;position:relative;text-align:left;transition:var(--transition);user-select:none;width:100%}.select-button:hover{border-color:var(--border-medium);box-shadow:var(--shadow-md)}.custom-multi-select.open .select-button{border-color:var(--primary-color);box-shadow:0 0 0 4px var(--primary-light),var(--shadow-md)}.select-button:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3Cpath fill='%23fa5900' d='M297.4 470.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L320 402.7 150.6 233.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;content:"";height:18px;opacity:.8;position:absolute;right:18px;top:50%;transform:translateY(-50%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:18px}.custom-multi-select.open .select-button:after{opacity:1;transform:translateY(-50%) rotate(180deg)}.select-options{animation:slideDown .2s ease-out;background-color:var(--surface-elevated);border:1.5px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:none;left:0;max-height:280px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.custom-multi-select.open .select-options{display:block}.select-options .option{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:15px;padding:12px 18px;position:relative;transition:background-color .2s ease}.select-options .option:hover{background-color:var(--surface)}.select-options .option:first-child{border-radius:var(--radius-md) var(--radius-md) 0 0}.select-options .option:last-child{border-radius:0 0 var(--radius-md) var(--radius-md)}.select-options .option input[type=checkbox]{left:-9999px;opacity:0;position:absolute}.custom-checkbox{background-color:var(--surface);border:2px solid var(--border-medium);border-radius:6px;height:20px;margin-right:12px;min-width:20px;position:relative;transition:var(--transition);width:20px}.select-options .option:hover .custom-checkbox{border-color:var(--primary-color)}.select-options .option input:checked~.custom-checkbox{background-color:var(--primary-color);border-color:var(--primary-color);transform:scale(1.05)}.custom-checkbox:after{border:solid #fff;border-width:0 2.5px 2.5px 0;content:"";display:none;height:10px;left:6px;position:absolute;top:2px;transform:rotate(45deg);width:5px}.select-options .option input:checked~.custom-checkbox:after{display:block}.talleres-container{align-items:start;display:flex;gap:24px;justify-content:space-between;margin-bottom:60px;position:relative}.columns{width:50%}.shadow-container{background:var(--surface-elevated);box-shadow:var(--shadow-md)}.step-container{border-radius:var(--radius-lg);overflow:hidden;padding:20px;position:relative}.step-container-1{background:linear-gradient(135deg,#fa5900,#ff8a00);border:2px solid hsla(0,0%,100%,.3);box-shadow:0 6px 20px rgba(250,89,0,.4)}.step-container-1 h4,.step-container-1 p{color:#fff!important;text-shadow:0 2px 4px rgba(0,0,0,.2)}.step-container-2{background:linear-gradient(135deg,#ff6a00,#ffd000);border:2px solid hsla(0,0%,100%,.3);box-shadow:0 6px 20px rgba(255,106,0,.4)}.step-container-2 h4,.step-container-2 p{color:#fff!important;text-shadow:0 2px 4px rgba(0,0,0,.2)}.step-container-3{background:linear-gradient(135deg,#ffb300,#fa5900);border:2px solid hsla(0,0%,100%,.3);box-shadow:0 6px 20px rgba(255,179,0,.4)}.step-container-3 h4,.step-container-3 p{color:#fff!important;text-shadow:0 2px 4px rgba(0,0,0,.2)}.step-container h4{align-items:center;display:flex;font-size:20px;font-weight:600;letter-spacing:-.3px;margin:0 0 8px}.step-container p{font-size:14px;line-height:1.5;margin:0}.tabs-system{margin-top:24px;width:100%}.tabs-list-wrapper{border-bottom:1px solid var(--border-light);position:relative;width:100%}.tabs-list-wrapper:after{background:linear-gradient(to left,var(--background),hsla(0,0%,100%,0));bottom:0;content:"";pointer-events:none;position:absolute;right:0;top:0;width:60px}.tabs-list{display:flex;gap:4px;overflow-x:auto;padding-right:20px;white-space:nowrap;-ms-overflow-style:none;scrollbar-width:none}.tabs-list::-webkit-scrollbar{display:none}.tab-item{background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);cursor:pointer;flex-shrink:0;font-size:15px;font-weight:500;padding:12px 20px;position:relative;transition:var(--transition)}.tab-item:hover{color:var(--text-primary)}.tab-item.active{border-bottom-color:var(--primary-color);color:var(--primary-color)}.tabs-content{border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:none;height:480px;overflow-y:auto;padding:28px;position:relative}.tabs-content::-webkit-scrollbar{width:6px}.tabs-content::-webkit-scrollbar-track{background:transparent}.tabs-content::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:10px}.tabs-content::-webkit-scrollbar-thumb:hover{background:var(--border-medium)}.tabs-content:after{background:linear-gradient(0deg,hsla(0,0%,100%,.95) 0,hsla(0,0%,100%,0));bottom:0;content:"";height:60px;left:0;pointer-events:none;position:sticky;right:0;z-index:5}.tab-pane{display:none}.tab-pane.active{display:block}.taller-card{border-bottom:1px solid var(--border-light);margin-bottom:24px;padding-bottom:24px}.taller-card:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.taller-card h4{color:var(--text-primary);font-size:18px;font-weight:600;letter-spacing:-.2px;margin:0 0 8px}.taller-card>p{align-items:center;color:var(--text-secondary);display:flex;font-size:14px;gap:6px;margin:0 0 16px}.taller-card>p:before{content:"📍";font-size:16px}.horarios-container{display:flex;flex-wrap:wrap;gap:12px}.horario-tag{background:linear-gradient(135deg,var(--surface) 0,#fafafa 100%);border:2px solid var(--border-light);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);color:var(--text-primary);cursor:pointer;font-size:14px;font-weight:600;min-width:140px;padding:12px 18px;position:relative;text-align:center;transition:var(--transition)}.horario-tag:hover:not(.blocked):not(.selected){background:linear-gradient(135deg,#fff 0,var(--primary-light) 100%);border-color:var(--primary-color);box-shadow:var(--shadow-md);transform:translateY(-2px)}.horario-tag.selected{background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-hover) 100%);border-color:var(--primary-color);box-shadow:0 4px 12px rgba(250,89,0,.3);color:#fff;transform:translateY(-2px)}.horario-tag.selected:before{content:"✓ ";font-weight:700;margin-right:4px}.horario-tag.blocked{background:var(--disabled);border-color:var(--disabled);box-shadow:none;color:var(--disabled-text);cursor:not-allowed;opacity:.6;position:relative}.horario-tag.blocked:after{align-items:center;background:#fff;border-radius:50%;box-shadow:var(--shadow-sm);content:"🚫";display:flex;font-size:18px;height:24px;justify-content:center;position:absolute;right:-8px;top:-8px;width:24px}.horario-tag.blocked:hover{border-color:var(--disabled);transform:none}.agenda-container{background:var(--surface-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);height:630px;margin-top:24px;overflow-y:auto;padding:24px}.agenda-container::-webkit-scrollbar{width:8px}.agenda-container::-webkit-scrollbar-track{background:transparent}.agenda-container::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:10px}.agenda-container::-webkit-scrollbar-thumb:hover{background:var(--border-medium)}.hour-block{display:flex;min-height:200px;position:relative}.hour-block hr{border:none;border-top:1px solid var(--border-light);margin:0}hr{margin-bottom:12px;margin-top:12px}.time-indicator{font-size:13px;font-weight:600;letter-spacing:-.2px;top:-.6em}.time-indicator,.time-indicator-mid{color:var(--text-secondary);left:0;padding-right:16px;position:absolute;text-align:right;width:80px}.time-indicator-mid{font-size:12px;font-weight:500;opacity:.6;top:50%;transform:translateY(-50%)}.slots-wrapper{display:flex;flex-direction:column;flex-grow:1;margin-left:80px}.agenda-slot{border-bottom:1px dashed var(--border-light);border-left:2px solid var(--border-light);height:100px;position:relative}.hour-block:last-child .agenda-slot:last-child{border-bottom:none}.agenda-workshop-card{backdrop-filter:blur(10px);background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-hover) 100%);border:2px solid hsla(0,0%,100%,.2);border-radius:var(--radius-sm);box-shadow:0 4px 12px rgba(250,89,0,.25);box-sizing:border-box;color:#fff;font-size:13px;left:8px;overflow:hidden;padding:12px;position:absolute;right:8px;z-index:10}.agenda-workshop-card strong{color:#fff;display:block;font-size:15px;font-weight:700;letter-spacing:-.2px;line-height:1.2;margin-bottom:4px}.agenda-workshop-card span{color:#fff;display:block;font-size:12px;line-height:1.4;margin-bottom:2px;opacity:.95}.agenda-workshop-card .remove-agenda-item{align-items:center;background:rgba(0,0,0,.2);border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;font-weight:700;height:24px;justify-content:center;line-height:1;opacity:.7;position:absolute;right:8px;top:8px;transition:var(--transition);width:24px;z-index:11}.agenda-workshop-card .remove-agenda-item:hover{background:rgba(0,0,0,.3);opacity:1;transform:scale(1.1)}[style*="transition: none"] *{animation:none!important;transition:none!important}.fixed-card{pointer-events:none}.lunch-card{background:linear-gradient(135deg,#11998e,#38ef7d)!important;border:2px solid hsla(0,0%,100%,.3)!important;box-shadow:0 6px 20px rgba(17,153,142,.4)!important}.lunch-card strong{font-size:16px!important;text-shadow:0 2px 4px rgba(0,0,0,.2)}.lunch-card span{text-shadow:0 1px 3px rgba(0,0,0,.15)}.rifa-card{background:linear-gradient(135deg,#667eea,#764ba2)!important;border:2px solid hsla(0,0%,100%,.3)!important;box-shadow:0 6px 20px rgba(102,126,234,.4)!important}.rifa-card strong{font-size:16px!important;text-shadow:0 2px 4px rgba(0,0,0,.2)}.rifa-card span{text-shadow:0 1px 3px rgba(0,0,0,.15)}.taller-error-message{align-items:center;animation:shake .3s ease-in-out;background:#fff5f5;border-left:3px solid #ff3b30;border-radius:var(--radius-sm);color:#ff3b30;display:flex;font-size:14px;font-weight:500;gap:8px;margin-top:16px;padding:12px 16px}.taller-error-message:before{content:"⚠️";font-size:18px}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}.agenda-download-button{background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-hover) 100%);border:none;border-radius:var(--radius-md);box-shadow:0 4px 16px rgba(250,89,0,.25);color:#fff;cursor:pointer;display:block;font-size:16px;font-weight:600;letter-spacing:-.2px;margin:24px auto auto;padding:16px;transition:var(--transition);width:auto}.agenda-download-button:hover{box-shadow:0 6px 20px rgba(250,89,0,.35);transform:translateY(-2px)}.agenda-download-button:active{transform:translateY(0)}.agenda-download-button[disabled]{cursor:wait;opacity:.6;transform:none}@media (max-width:768px){.talleres-container{flex-direction:column}.columns{width:100%}.agenda-container{height:420px;padding:0}.step-container{padding:16px}.tabs-content{height:450px;padding:20px}.horario-tag{font-size:13px;min-width:120px;padding:10px 14px}.agenda-workshop-card{padding:6px 10px}.agenda-workshop-card .remove-agenda-item{font-size:16px;height:20px;right:4px;top:4px;width:20px}.time-indicator,.time-indicator-mid{padding-left:6px;padding-right:0;text-align:left}.slots-wrapper{margin-left:64px}}