$gf = jQuery.noConflict(); $gf(document).ready(function () { $gf('body').on('click', '#refresh-google-fonts', function () { $gf(this).next('.spinner').css({'display':'inline-block','float':'none','vertical-align': 'middle','visibility':'visible'}); var data = { action: 'ultimate_google_fonts_refresh', security: uavc.google_font_nonce, }; // since 2.8 ajaxurl is always defined in the admin header and points to admin-ajax.php $gf.post(ajaxurl, data, function(response) { var object = jQuery.parseJSON(response); var count = object.count; var msg = object.message; if(count == 0) { var dmsg = msg; } else { var dmsg = msg+' Please wait, Page is reloading.'; window.location.reload(true); } $gf('#vc-gf-msg').html('
'+dmsg+'
').hide(); $gf('#vc-gf-msg').slideDown(300); $gf('#refresh-google-fonts').next('.spinner').css({'display':'none'}); setTimeout(function(){ $gf('#vc-gf-msg').slideUp(300); },4000); }); }); $gf('body').on('click', '.add-google-font', function () { var button = $gf(this); var font_family = $gf(this).attr('data-font_family'); var font_name = $gf(this).attr('data-font_name'); if(!button.hasClass('font-added')) { button.next('.spinner').show(); button.next('.spinner').css({'float':'right','visibility':'visible'}); var variants_array = new Array(); var subsets_array = new Array(); button.parent().find('.variants').find('.font-variant').each(function (iv, variant) { $v = $gf(variant); var temp_arr = {}; var variant_value = $v.find('.font-variant-inputs').val(); temp_arr['variant_value'] = variant_value; if ($v.find('.font-variant-inputs').is(':checked')) { temp_arr['variant_selected'] = true; } else { temp_arr['variant_selected'] = false; } variants_array.push(temp_arr); }); button.parent().find('.subsets').find('.font-subset').each(function (iv, subset) { $s = $gf(subset); var temp_arr = {}; var subset_value = $s.find('.font-subset-inputs').val(); temp_arr['subset_value'] = subset_value; if ($s.find('.font-subset-inputs').is(':checked')) { temp_arr['subset_selected'] = true; } else { temp_arr['subset_selected'] = false; } subsets_array.push(temp_arr); }); var data = { action: 'add_google_font', font_family: font_family, font_name: font_name, variants: variants_array, subsets: subsets_array, security: uavc.add_google_fonts }; $gf.post(ajaxurl, data, function(response) { // console.log(response); button.next('.spinner').hide(); button.val('Added in collection'); button.addClass('font-added'); //if(variants_array.length > 0) if(variants_array.length > 0 || subsets_array.length > 0) var xclass = 'have-variants'; else var xclass = ''; var gshtml = '
'+font_name+'
'; if(variants_array.length > 0) gshtml += ''; gshtml += '
'; if(variants_array.length > 0 || subsets_array.length > 0) { gshtml += '
'; if(temp = font_name.split(' ')) { var ctemp = temp.length; var temp_id = ''; $gf.each(temp,function (i, val) { temp_id += val; if ((ctemp-1) != i) temp_id += '-'; }) } else var temp_id = font_name; var temp_subset_class = ''; if(variants_array.length > 0) { gshtml += '
'; $gf.each(variants_array, function(index, variant){ var lid = temp_id+'-dynamic-'+variant.variant_value+'-'+index; var font_style = 'font-family:\''+font_name+'\';'; if(/italic/i.test(variant.variant_value)) { font_style += 'font-style:italic;'; } var weight = 'normal'; if (weight = variant.variant_value.match(/\d+/)) { font_style += 'font-weight:'+weight+';'; } gshtml += ''; }); gshtml += '
'; temp_subset_class = 'selected-font-subset-wrapper'; } if(subsets_array.length > 0) { gshtml += '
'; $gf.each(subsets_array, function(index, subset){ var lid = temp_id+'-dynamic-subset-'+subset.subset_value+'-'+index; gshtml += ''; }); gshtml += '
'; } gshtml += '
'; } gshtml += '
'; $gf('#fonts-selected-wrapper').prepend(gshtml); }); } }); $gf('body').on('click', '.font-delete', function () { $gf('.google-font-overlay').remove(); $gf('.google-font-confirmation').remove(); var button = $gf(this); var font_name = $gf(this).attr('data-font_name'); $gf('body').append('
'); $gf('body').append('

Are you sure you want to remove this font?

'); $gf('.google-font-overlay').fadeIn(100); $gf('.google-font-confirmation').fadeIn(100); }); $gf('body').on('click', '.gfont-buttons', function(){ if($gf(this).hasClass('google-font-message-delete')) { var font_name = $gf(this).attr('data-gfont_name'); var data = { action: 'delete_google_font', font_name: font_name, security: uavc.delete_google_fonts }; $gf.post(ajaxurl, data, function(response) { $gf('.font-delete').each(function(i,e){ var button = $gf(this); var bfont_name = $gf(this).attr('data-font_name'); if(bfont_name == font_name) button.parent().remove(); }); }); } $gf('.google-font-confirmation').fadeOut(200); $gf('.google-font-overlay').fadeOut(200); }); $gf('body').on('click', '.update-google-font-button', function () { var font_name = $gf(this).attr('data-font_name'); var parent = $gf(this).parent(); var variant_array = new Array(); var subset_array = new Array(); $gf(parent).find('.font-variant').each(function (index, variant_wrap) { var temp_array = {}; var variant_checkbox = $gf(variant_wrap).find('.selected-variant-checkbox'); temp_array['variant_value'] = $gf(variant_checkbox).val(); if ($gf(variant_checkbox).is(':checked')) temp_array['variant_selected'] = true; else temp_array['variant_selected'] = false; variant_array.push(temp_array); }); $gf(parent).find('.font-subset').each(function (index, subset_wrap) { var temp_array = {}; var subset_checkbox = $gf(subset_wrap).find('.selected-subset-checkbox'); temp_array['subset_value'] = $gf(subset_checkbox).val(); if ($gf(subset_checkbox).is(':checked')) temp_array['subset_selected'] = true; else temp_array['subset_selected'] = false; subset_array.push(temp_array); }); var data = { action: 'update_google_font', font_name: font_name, variants: variant_array, subsets: subset_array, security: uavc.update_google_fonts }; $gf(this).next('.fspinner').addClass('fspinner-show'); $gf.post(ajaxurl, data, function(response) { $gf('.fspinner').removeClass('fspinner-show'); }); }); $gf('body').on('click', '.selected-font-top', function () { if ($gf(this).hasClass('fopened')) { $gf(this).parent().find('.selected-font-content').slideUp(200); $gf(this).removeClass('fopened'); return; } $gf('.selected-font .selected-font-content').slideUp(200); $gf('.selected-font-top').removeClass('fopened'); $gf(this).addClass('fopened'); $gf(this).parent().find('.selected-font-content').slideToggle(200); }); //get google fonts get_google_fonts(); }); function get_google_fonts() { $gf('#load-more').show(); $list_wrapper = $gf('#fonts-list-wrapper'); var gstart = $list_wrapper.attr('data-gstart'); var gfetch = $list_wrapper.attr('data-gfetch'); var gsearch = $gf('#search_gfont').val(); var data = { action : 'get_google_fonts', start : gstart, fetch : gfetch, search : gsearch, security : uavc.get_google_fonts }; $gf.post(ajaxurl, data, function(response) { var object = jQuery.parseJSON(response); var font_count = object.fonts_count; var fonts = object.fonts; var is_search = object.is_search; if(font_count == 0 && is_search == 'false') { var ghtml = '
It seems you don\'t have any Google Fonts yet. But you can download them now with just a click.
'; $list_wrapper.html(ghtml); } else { if (fonts.length == 0) { var ghtml = '
'; ghtml += 'Bummer, there are no font families that match. Try with other search keyword'; ghtml += '
'; $list_wrapper.html(ghtml); } else { var ghtml = convert_json_to_html(fonts); $list_wrapper.append(ghtml); } } $gf('#load-more').hide(); $list_wrapper.attr('data-gstart',parseInt(gstart)+parseInt(gfetch)); }); } function convert_json_to_html(object) { var html = ''; $gf.each(object,function (index, gfont) { var font_call = gfont.font_call; var font_name = gfont.font_name; var font_variants = gfont.variants; var font_subsets = gfont.subsets; var selected = gfont.selected; if(temp = font_name.split(' ')) { var ctemp = temp.length; var temp_id = ''; $gf.each(temp,function (i, val) { temp_id += val; if ((ctemp-1) != i) temp_id += '-'; }) } else var temp_id = font_name; var variants_length = font_variants.length; var subsets_length = font_subsets.length; if (selected == 'true') { var button_text = 'Added in collection'; var button_class = 'font-added'; } else { var button_text = 'Add to Collection'; var button_class = ''; } html += '
'; html += '
'+font_name+'
'; html += '
'; if (variants_length > 1) { font_call += ':'; html += ''; $gf.each(font_variants, function (vindex, variant) { if (variant != 'regular') { var font_style = 'font-family:\''+font_name+'\';'; if(/italic/i.test(variant)) { font_style += 'font-style:italic;'; } var weight = 'normal'; if (weight = variant.match(/\d+/)) { font_style += 'font-weight:'+weight+';'; } html += ''; html += ''; html += ''; html += ''; font_call += variant; if (variants_length > 0 && (variants_length-1) != vindex) { font_call += ','; } } }); html += ''; } //end of varients if(subsets_length > 1) { html += ''; $gf.each(font_subsets, function(sindex, subset){ html += ''; html += ''; html += ''; }); html += ''; } //end of subsets html += '
'; html += '
'; $gf('head').append(''); }); return html; } $gf(window).scroll(function () { if ($gf(window).height() + $gf(window).scrollTop() == $gf(document).height()) { var gsearch = $gf('#search_gfont').val(); if (gsearch == '') get_google_fonts(); } }); $gf(document).ready(function(){ var typingTimer; //timer identifier var doneTypingInterval = 500; //time in ms, 2 second for example //on keyup, start the countdown $gf('#search_gfont').keyup(function(){ clearTimeout(typingTimer); typingTimer = setTimeout(search_gfont, doneTypingInterval); }); //on keydown, clear the countdown $gf('#search_gfont').keydown(function(){ clearTimeout(typingTimer); }); }); function search_gfont() { var gsearch = $gf('#search_gfont').val(); $list_wrapper = $gf('#fonts-list-wrapper'); $list_wrapper.html(''); if (gsearch == '') { $list_wrapper.attr('data-gstart',parseInt(0)); } get_google_fonts(); } $gf(document).ready(function() { //set_wrap_height('notfixed'); var $menu = jQuery(".fonts-selected-list"), $window = jQuery(window), offset = $menu.offset(), topPadding = 15; $window.scroll(function() { if ($window.scrollTop()+35+15 > offset.top) { $menu.addClass('uagffixed'); //set_wrap_height('fixed'); } else { $menu.removeClass('uagffixed'); //set_wrap_height('notfixed'); } }); }); function set_wrap_height(fx) { var win_height = $gf(window).height(); if(fx == 'notfixed') { var swrap_top = $gf('#fonts-selected-wrapper').offset().top; var cheight = win_height - swrap_top - 40; } else { var cheight = win_height - 140; } $gf('#fonts-selected-wrapper').height(cheight); }/** * Shared ABE launcher, teaser modal, and preview chat styles. */ :root, :host { /* ===== ABE SURFACE TOKENS ===== */ --mwp-abe-padding-small: 8px; --mwp-abe-padding-medium: 16px; --mwp-abe-padding-xxl: 34px; --mwp-abe-radius-small: 12px; --mwp-abe-radius-medium: 16px; --mwp-abe-radius-large: 18px; --mwp-abe-radius-xlarge: 28px; --mwp-abe-radius-xxl: 36px; --mwp-abe-launcher-size: 48px; --mwp-abe-launcher-icon-size: 30px; --mwp-abe-launcher-offset: 16px; --mwp-abe-launcher-mobile-offset: 12px; --mwp-abe-launcher-border: #f0cf8a; --mwp-abe-launcher-outline: #fff0c2; --mwp-abe-launcher-bg-start: #2b3446; --mwp-abe-launcher-bg-end: #131a28; --mwp-abe-launcher-fill: #4e3a19; --mwp-abe-launcher-stroke: #ddb663; --mwp-abe-launcher-shimmer-start: #9f691d; --mwp-abe-launcher-shimmer-mid: #fff0b5; --mwp-abe-launcher-shimmer-end: #c88e36; --mwp-abe-sparkle-gradient-start: var(--mwp-abe-launcher-outline); --mwp-abe-sparkle-gradient-end: var(--mwp-abe-launcher-shimmer-end); --mwp-abe-launcher-shadow: 0 18px 40px rgba(0, 0, 0, 0.38); --mwp-abe-launcher-shadow-hover: 0 22px 46px rgba(0, 0, 0, 0.44); --mwp-abe-launcher-inner-highlight: rgba(255, 248, 224, 0.18); --mwp-abe-launcher-inner-border: rgba(135, 98, 31, 0.65); --mwp-abe-launcher-glow: rgba(226, 191, 103, 0.35); --mwp-abe-launcher-shimmer-duration: 3s; --mwp-abe-launcher-z-index: 123456789; } .mwp-abe-shadow-shell, .mwp-abe-shadow-shell * { box-sizing: border-box; } .screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } .mwp-abe-shell, .mwp-abe-shell * { font-family: var(--mwp-sfe-font-family) !important; font-weight: normal !important; box-sizing: border-box; } .mwp-abe-shell ::selection { color: var(--mwp-sfe-text-light); background-color: var(--mwp-sfe-primary); } .mwp-abe-shell { color: var(--mwp-sfe-text-light); } .mwp-abe-panel { background: var(--mwp-sfe-bg-darkest); border: 1px solid var(--mwp-sfe-border-dark); border-radius: var(--mwp-abe-radius-xxl); box-shadow: var(--mwp-sfe-shadow-elevated); overflow: hidden; backdrop-filter: blur(10px); } .mwp-abe-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 320px); gap: var(--mwp-sfe-gap-large); align-items: stretch; padding: var(--mwp-abe-padding-small); padding-top: 0; } .mwp-abe-shell-frontend .mwp-abe-layout { grid-template-columns: minmax(0, 1fr); } .mwp-abe-header { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--mwp-sfe-gap-large); padding: var(--mwp-abe-padding-medium); border-bottom: 1px solid var(--mwp-sfe-border-dark); } .mwp-abe-header-copy { margin-left: var(--mwp-abe-padding-xxl); } .mwp-abe-header-branded { align-items: flex-start; } .mwp-abe-header-brand { display: flex; align-items: flex-start; gap: 12px; min-width: 0; } .mwp-abe-header-copy-branded, .mwp-abe-modal-header-copy { margin-left: 0; flex: 1 1 auto; min-width: 0; } .mwp-abe-sparkle-icon { display: inline-flex; align-items: center; justify-content: center; width: var(--mwp-abe-sparkle-icon-size); height: var(--mwp-abe-sparkle-icon-size); flex: 0 0 auto; } .mwp-abe-sparkle-icon svg { display: block; width: 100%; height: 100%; } .mwp-abe-header-icon { --mwp-abe-sparkle-icon-size: 40px; color: var(--mwp-abe-launcher-stroke); } .mwp-abe-kicker { margin-bottom: 6px; font-size: var(--mwp-sfe-font-size-tiny); letter-spacing: 0.14em; text-transform: uppercase; color: var(--mwp-sfe-primary); } .mwp-abe-title, .mwp-abe-card-title { margin: 0; color: var(--mwp-sfe-text-light); } .mwp-abe-title { font-size: 24px; line-height: 1.15; } .mwp-abe-subtitle, .mwp-abe-card-copy, .mwp-abe-note, .mwp-abe-empty, .mwp-abe-message-label { color: var(--mwp-sfe-text-muted); } .mwp-abe-subtitle, .mwp-abe-card-copy, .mwp-abe-note, .mwp-abe-empty { margin: 8px 0 0; font-size: var(--mwp-sfe-font-size-medium); line-height: 1.6; } .mwp-abe-chat-wrap { display: flex; flex-direction: column; height: min(720px, 60vh); min-height: 0; overflow: visible; } .mwp-abe-messages { flex: 1 1 auto; display: flex; flex-direction: column; gap: 14px; min-height: 0; overflow-y: auto; padding: var(--mwp-sfe-padding-large); margin: 0 var(--mwp-abe-padding-medium); scrollbar-color: var(--mwp-sfe-bg-light) var(--mwp-sfe-bg-darkest); } .mwp-abe-message { max-width: 75%; } .mwp-abe-message.is-pending { max-width: none; } .mwp-abe-message.is-user { align-self: flex-end; } .mwp-abe-message.is-assistant { align-self: flex-start; } .mwp-abe-message-label { margin-bottom: 6px; font-size: var(--mwp-sfe-font-size-tiny); letter-spacing: 0.08em; text-transform: uppercase; } .mwp-abe-message.is-assistant .mwp-abe-message-label { margin-left: 16px; } .mwp-abe-message.is-user .mwp-abe-message-label { margin-right: 16px; text-align: right; } .mwp-abe-message-bubble { padding: 14px; border: 1px solid; border-radius: var(--mwp-abe-radius-medium); } .mwp-abe-message.is-assistant .mwp-abe-message-bubble { background: var(--mwp-sfe-primary-alpha-10); border-color: var(--mwp-sfe-primary-alpha-25); box-shadow: var(--mwp-sfe-shadow-comment); border-bottom-left-radius: var(--mwp-sfe-radius-medium); } .mwp-abe-message.is-user .mwp-abe-message-bubble { background: var(--mwp-sfe-primary-alpha-20); border-color: var(--mwp-sfe-primary-alpha-40); box-shadow: inset var(--mwp-sfe-shadow-light); border-bottom-right-radius: var(--mwp-sfe-radius-medium); } .mwp-abe-message-bubble p { margin: 0; font-size: var(--mwp-sfe-font-size-medium); line-height: 1.5; } .mwp-abe-stage-row, .mwp-abe-thinking-row { position: relative; display: inline-flex; align-items: center; margin: 0; padding: 0; } .mwp-abe-stage-text, .mwp-abe-thinking-text { display: inline-block; font-size: var(--mwp-sfe-font-size-medium); color: var(--mwp-sfe-text-muted); -webkit-text-fill-color: currentColor; } .mwp-abe-stage-text.is-pending, .mwp-abe-thinking-text.is-pending { background: linear-gradient( 90deg, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.5) 40%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 0.5) 60%, rgba(255, 255, 255, 0.5) 100% ); background-size: 200% 100%; background-position: 100% 0; -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; animation: mwpAbeShimmer linear infinite; } .mwp-abe-stage-text.is-pending { animation-duration: 2s; } .mwp-abe-thinking-text.is-pending { animation-duration: 2.5s; } .mwp-abe-thinking-row.is-complete .mwp-abe-thinking-text { font-size: var(--mwp-sfe-font-size-small); color: var(--mwp-sfe-text-muted); -webkit-text-fill-color: currentColor; background: none; animation: none; } @keyframes mwpAbeShimmer { 0% { background-position: 100% 0; } 100% { background-position: -100% 0; } } .mwp-abe-composer-footer { display: flex; flex-direction: column; gap: 0; background: var(--mwp-sfe-bg-dark); border: 1px solid var(--mwp-sfe-border-medium); border-radius: var(--mwp-abe-radius-xlarge); box-shadow: inset var(--mwp-sfe-shadow-light); transition: background var(--mwp-sfe-transition-instant), box-shadow var(--mwp-sfe-transition-instant), border-color var(--mwp-sfe-transition-fast); } .mwp-abe-composer-footer:focus-within { border-color: var(--mwp-sfe-primary); background: var(--mwp-sfe-bg-light); box-shadow: inset var(--mwp-sfe-shadow-medium); } .mwp-abe-composer-overlay { display: flex; align-items: center; gap: var(--mwp-abe-padding-small); padding: var(--mwp-abe-padding-small); min-width: 0; background: transparent; border-bottom-left-radius: inherit; border-bottom-right-radius: inherit; } .mwp-abe-composer-overlay-upload, .mwp-abe-composer-overlay-action, .mwp-abe-composer-leading-actions, .mwp-abe-composer-actions, .mwp-abe-header-actions, .mwp-abe-preview-actions { display: flex; align-items: center; gap: var(--mwp-sfe-gap-medium); } .mwp-abe-composer-overlay-upload { flex: 0 1 40%; min-width: 0; max-width: 40%; justify-content: flex-start; } .mwp-abe-composer-overlay-action { flex: 0 0 60%; min-width: 0; max-width: 60%; justify-content: flex-end; margin-left: auto; } .mwp-abe-composer-leading-actions, .mwp-abe-composer-actions { flex: 0 0 auto; } .mwp-abe-composer-links { display: flex; flex: 0 0 auto; flex-wrap: nowrap; align-items: center; justify-content: flex-end; gap: var(--mwp-abe-padding-small); } .mwp-abe-composer-drop-status, .mwp-abe-composer-selection-status { font-size: var(--mwp-sfe-font-size-small); line-height: 1.4; color: var(--mwp-sfe-text-muted); } .mwp-abe-composer-selection-status[hidden] { display: none !important; } .mwp-abe-composer .mwp-abe-input { display: block; align-self: center; width: 90%; max-height: 144px; field-sizing: content; resize: none; overflow-y: auto; line-height: 1.5; background: transparent; border: 0; outline: none !important; color: var(--mwp-sfe-text-light); padding: var(--mwp-abe-padding-medium) 0; font-size: var(--mwp-sfe-font-size-medium); box-shadow: none; transition: none; scrollbar-color: var(--mwp-sfe-bg-light) transparent; } .mwp-abe-composer .mwp-abe-input::placeholder { text-align: center; font-size: var(--mwp-sfe-font-size-small); } .mwp-abe-composer .mwp-abe-input:focus { color: var(--mwp-sfe-text-light); scrollbar-color: var(--mwp-sfe-bg-darkest) transparent; } .mwp-abe-send-btn, .mwp-abe-close-btn, .mwp-abe-upload-btn { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 0; border-radius: 999px; z-index: unset; } .mwp-abe-upload-btn { background: var(--mwp-sfe-bg-darkest); } .mwp-abe-upload-btn:hover { background: var(--mwp-sfe-bg-dark); } .mwp-abe-upload-btn:disabled { background: var(--mwp-sfe-bg-dark); } .mwp-abe-send-btn svg, .mwp-abe-close-btn svg, .mwp-abe-upload-btn svg { width: 28px; height: 28px; } .mwp-abe-send-btn path, .mwp-abe-close-btn path, .mwp-abe-upload-btn path { fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; } .mwp-abe-preview-actions { flex-wrap: wrap; justify-content: center; margin-top: 20px; } .mwp-abe-launcher { position: fixed; right: var(--mwp-abe-launcher-offset); bottom: var(--mwp-abe-launcher-offset); z-index: var(--mwp-abe-launcher-z-index); display: inline-flex; align-items: center; justify-content: center; width: var(--mwp-abe-launcher-size); height: var(--mwp-abe-launcher-size); padding: 0; border-radius: 50%; border: 2px solid var(--mwp-abe-launcher-border); background: var(--mwp-sfe-bg-darkest); box-shadow: 0 18px 32px rgba(0, 0, 0, 0.28); line-height: 1; cursor: pointer; transition: transform var(--mwp-sfe-transition-fast), box-shadow var(--mwp-sfe-transition-fast), opacity var(--mwp-sfe-transition-fast); } .mwp-abe-launcher:hover, .mwp-abe-launcher:focus { transform: translateY(-1px); box-shadow: 0 22px 38px rgba(0, 0, 0, 0.32), 0 0 0 3px rgba(255, 240, 181, 0.18); } .mwp-abe-launcher:focus { outline: 2px solid var(--mwp-abe-launcher-outline); outline-offset: 3px; } .mwp-abe-launcher-hidden { opacity: 0; pointer-events: none; transform: translateY(8px) scale(0.92); } .mwp-abe-launcher-icon { width: var(--mwp-abe-launcher-icon-size); height: var(--mwp-abe-launcher-icon-size); display: inline-flex; align-items: center; justify-content: center; } .mwp-abe-launcher-icon svg { width: 100%; height: 100%; overflow: visible; } .mwp-abe-sparkle-fill-group-1 { fill: var(--mwp-abe-launcher-outline); } .mwp-abe-sparkle-fill-group-2 { fill: url(#mwp-abe-sparkle-gradient); } .mwp-abe-sparkle-fill-group-3 { fill: var(--mwp-abe-launcher-shimmer-end); } .mwp-abe-launcher-stroke { fill: none; stroke-linecap: round; stroke-linejoin: round; stroke-width: 30; stroke: var(--mwp-abe-launcher-stroke); } .mwp-abe-modal[hidden], .mwp-abe-drawer[hidden] { display: none; } .mwp-abe-modal { position: fixed; inset: 0; z-index: calc(var(--mwp-abe-launcher-z-index) + 2); opacity: 0; pointer-events: none; transition: opacity var(--mwp-sfe-transition-fast); } .mwp-abe-modal, .mwp-abe-modal * { font-family: var(--mwp-sfe-font-family) !important; font-weight: normal !important; } .mwp-abe-modal.is-open { opacity: 1; pointer-events: auto; } .mwp-abe-modal-backdrop { position: absolute; inset: 0; background: rgba(7, 11, 18, 0); backdrop-filter: blur(0); transition: background var(--mwp-sfe-transition-fast), backdrop-filter var(--mwp-sfe-transition-fast); } .mwp-abe-modal.is-open .mwp-abe-modal-backdrop { background: rgba(7, 11, 18, 0.58); backdrop-filter: blur(10px); } .mwp-abe-modal-dialog { position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 24px; } .mwp-abe-modal-panel { width: min(600px, 95vw); max-height: min(80vh, 820px); transform: translateY(24px) scale(0.98); opacity: 0; transition: transform var(--mwp-sfe-transition-fast), opacity var(--mwp-sfe-transition-fast); } .mwp-abe-modal.is-open .mwp-abe-modal-panel { transform: translateY(0) scale(1); opacity: 1; } .mwp-abe-modal-body { display: flex; flex-direction: column; gap: 16px; max-height: calc(80vh - 110px); padding: 24px; overflow: auto; scrollbar-color: var(--mwp-sfe-bg-light) var(--mwp-sfe-bg-darkest); } .mwp-abe-modal-copy { margin-top: 0; color: var(--mwp-sfe-text-light); } .mwp-abe-modal-panel .mwp-abe-header { padding-bottom: 18px; } .mwp-abe-drawer { position: fixed; right: 10px; bottom: 10px; z-index: calc(var(--mwp-abe-launcher-z-index) + 1); width: min(540px, 95vw); opacity: 0; pointer-events: none; transform: translateY(24px) scale(0.98); transition: opacity var(--mwp-sfe-transition-fast), transform var(--mwp-sfe-transition-fast); } .mwp-abe-drawer.is-open { opacity: 1; pointer-events: auto; transform: translateY(0) scale(1); } .mwp-abe-modal-button { flex: 0 0 auto; text-decoration: none; } @media (max-width: 782px) { .mwp-abe-launcher { right: var(--mwp-abe-launcher-mobile-offset); bottom: var(--mwp-abe-launcher-mobile-offset); } .mwp-abe-modal-dialog { padding: 12px; } .mwp-abe-modal-panel { width: min(760px, calc(100vw - 24px)); } .mwp-abe-drawer { right: 8px; bottom: 8px; width: min(540px, calc(100vw - 16px)); } .mwp-abe-chat-wrap { height: min(640px, 70vh); } } Orthopedic OT – Adira

Orthopedic OT

At Adira Multispecialty Hospital, our Advanced Orthopedic Operation Theatre (OT) is designed exclusively for joint replacements, trauma surgeries, arthroscopy, and all types of orthopedic procedures. Equipped with state-of-the-art technology and stringent infection control, we ensure precision, safety, and best surgical outcomes.

Why Choose Our Orthopedic OT?

  • Dedicated Orthopedic OT — Separate, fully equipped operation theatre for orthopedic surgeries only.
  • Laminar Airflow System — Ultra-clean environment with HEPA filters to minimize infection risk.
  • Advanced Equipment — C-Arm image intensifier, high-end arthroscopic systems, power drills, and modern implants.
  • Experienced Team — Highly skilled orthopedic surgeons, anesthetists, and OT technicians with vast expertise.
  • 24×7 Emergency Support — Immediate access for trauma and fracture cases.
  • Fast Recovery Focus — Modern techniques that promote early mobility and shorter hospital stay.

Our Orthopedic OT Services

  • Joint replacement surgeries (Knee, Hip, Shoulder)
  • Trauma and fracture fixation surgeries
  • Arthroscopic ligament and meniscus repair
  • Spine surgeries and disc procedures
  • Pediatric orthopedic corrections
  • Sports injury and reconstructive surgeries