/**
 * 2007-2025 Moonivo
 *
 * NOTICE OF LICENSE
 *
 * This source file is subject to the Academic Free License (AFL 3.0)
 * that is bundled with this package in the file LICENSE.txt.
 * It is also available through the world-wide-web at this URL:
 * https://opensource.org/licenses/AFL-3.0
 * If you did not receive a copy of the license and are unable to
 * obtain it through the world-wide-web, please send an email
 * to contact@moonivo.com so we can send you a copy immediately.
 *
 * @author Moonivo <contact@moonivo.com>
 * @copyright 2007-2025 Moonivo
 * @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0
 * @link https://moonivo.com
 */

/* Default full width responsive */
.impro-view{position:relative;display:inline-block;max-width:100%;}

/* Fixed width canvas */
.impro-player[data-canvas-width-type="fixed"] .impro-view{
    display:inline-block;
    max-width:none;
}

/* Full width stretched - image stretches to full width */
.impro-player[data-canvas-width-type="fullstretch"] .impro-view{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
}

.impro-player[data-canvas-width-type="fullstretch"] .impro-base{
    width:100% !important;
    height:auto !important;
    max-width:100% !important;
}

/* Additional specificity for fullstretch */
div.impro-player[data-canvas-width-type="fullstretch"] .impro-view{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
}

div.impro-player[data-canvas-width-type="fullstretch"] .impro-base{
    width:100% !important;
    height:auto !important;
    max-width:100% !important;
}

/* Canvas alignment - wrapper container */
.impro-wrapper[data-canvas-alignment="center"]{
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
}
.impro-wrapper[data-canvas-alignment="right"]{
    display: flex !important;
    justify-content: flex-end !important;
    width: 100% !important;
}
.impro-wrapper[data-canvas-alignment="left"]{
    display: flex !important;
    justify-content: flex-start !important;
    width: 100% !important;
}

/* Canvas alignment - impro-player stays original size */
.impro-wrapper .impro-player{
    display: inline-block !important;
    width: auto !important;
}

/* Fullstretch overrides alignment - wrapper becomes block */
.impro-wrapper .impro-player[data-canvas-width-type="fullstretch"]{
    display: block !important;
    width: 100% !important;
}
.impro-view .impro-base{display:block;width:auto;height:auto;max-width:100%;}
.impro-view .impro-overlay{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:auto;}
.impro-view .impro-overlay > *{transition:fill .18s ease, stroke .18s ease, fill-opacity .18s ease;}
.impro-view .impro-tip{position:absolute;max-width:320px;background:var(--card-background, #fff);border:1px solid var(--card-border, rgba(0,0,0,0.15));box-shadow:0 8px 24px rgba(0,0,0,0.2);padding:12px;border-radius:var(--card-radius, 8px);z-index:5;pointer-events:auto;opacity:0;transform:translateY(6px);transition:opacity .18s ease,transform .18s ease;color:var(--card-font-color, #333);font-size:var(--card-font-size, 14px);}
.impro-view .impro-tip.is-visible{opacity:1;transform:translateY(0);}
.impro-view .impro-tip-title{font-weight:700;margin-bottom:6px;color:inherit;}
.impro-view .impro-tip-body{line-height:1.45;margin-bottom:10px;color:inherit;}
.impro-view .impro-tip-actions{text-align:right;}
.impro-view .impro-tip-btn{display:inline-block;padding:8px 14px;background:#d4a62a;color:#fff;border-radius:4px;text-decoration:none;font-weight:600;}
.impro-view .impro-tip-btn:hover{opacity:.9}
/* Shape hover visual */
.impro-view .impro-overlay > .impro-hover{filter:drop-shadow(0 0 0 rgba(0,0,0,0));stroke-width:2;}

/* Section wrapper when layout uses theme .container (aligns with ps-customtext-style blocks) */
.impro-section{width:100%;}
/* Inner Bootstrap .container adds horizontal padding; strip it on non-homepage only (homepage keeps theme gutters) */
body:not(.page-index):not(#index) .impro-section > .impro-container{
	padding-left:0;
	padding-right:0;
}

.impro-placeholder {
	display: none !important;
}
