$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); } } A Peek Inside Adira’s Modern Operation Theatre: Technology That Saves Lives – Adira

Advanced Operation Theatre at Adira Hospital Kolkata

Surgery can be a daunting experience for patients and families. At Adira Multispecialty Hospital, we have designed our Operation Theatres with the latest technology and stringent safety protocols to ensure the highest standards of surgical care.

Our modern OTs include:

  • Laparoscopic OT – Minimally invasive procedures with smaller incisions, less pain, and quicker recovery.
  • Ortho OT – Specialized for joint replacements, fracture fixations, and orthopedic surgeries.
  • Minor OT – For day-care procedures and minor interventions.
  • Microscopy facilities – For precision in delicate surgeries.

What Makes Our OT Special?

  • Laminar airflow system to maintain ultra-clean environment and reduce infection risk.
  • Advanced anesthesia workstations and monitoring systems.
  • High-definition imaging and surgical tools.
  • Dedicated post-operative recovery area with ITU and HDU support.

These facilities allow our surgeons to perform both major and minor surgeries with greater precision, resulting in fewer complications and shorter hospital stays.

Patient Safety First

Every surgery at Adira follows strict infection control protocols. Our experienced surgical team, supported by skilled anesthetists and nursing staff, ensures you receive personalized attention throughout your surgical journey.

From general surgery to gynecological procedures and orthopedic interventions — Adira’s Operation Theatres are equipped to handle a wide range of cases with excellence.

If you or your loved one requires surgical care, trust the advanced infrastructure and expert hands at Adira Multispecialty Hospital.

Book a consultation with our surgical team today. Call +91 900 711 6748 | Email: adirahospital06@gmail.com

Leave a Reply

Your email address will not be published. Required fields are marked *