@property --a { /* must register --a to animate it */
	syntax: '<angle>';
	initial-value: 0deg;
	inherits: false;
}


.AICompanion.icon.nonservice{
    content: "維護中";
    background-color:#929292;
    filter: grayscale(100%);
}


/* background-image base64 code */
.AICompanion.icon{
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDkuMS1jMDAzIDc5Ljk2OTBhODdmYywgMjAyNS8wMy8wNi0yMDo1MDoxNiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDplYWRhMmU5OC1iYWM4LTI5NGUtOTVkZS00NWVlYTE4ZTNiYzYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QTUyRDk0QTUzQkE1MTFGMDlBODM5NUUxN0ZEQ0Q0OEMiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QTUyRDk0QTQzQkE1MTFGMDlBODM5NUUxN0ZEQ0Q0OEMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDI2LjcgKFdpbmRvd3MpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OTcxM2RkNGYtYjJhYi1lMjQ3LTkwMDMtZWUwOTNkNTZmYzMzIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOmVhZGEyZTk4LWJhYzgtMjk0ZS05NWRlLTQ1ZWVhMThlM2JjNiIv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) no-repeat;
}
.AICompanion.icon{
    --side: 100px;
    --borderWidth: 0px;
    --blurWidth: 6px;
    --radius: 10px;
    --minBlur: 0px;
    --maxBlur: 3px;

    width: var(--side);
    height: var(--side);
    border-radius: var(--radius);
    opacity: 0;
    overflow: hidden;

    position:fixed;
    cursor: pointer;

    background-size: 102%;
    background-position: center;

    animation: box-appear 1s 1s ease forwards, breathe 3.5s 2s ease-in-out infinite;
}
.AICompanion.icon:hover {
    opacity: 1;
    animation: box-appear 1s 1s ease forwards, spinshake 0.6s ease-in-out forwards;
    /* animation-fill-mode: forwards; */
}

.AICompanion.icon>.light{
    width: 100%; height: 100%;
    position: relative;
    animation: breathing-light 3s infinite ease-in-out;
}
.AICompanion.icon>.light::before{
    content: "";
    position: absolute;
    z-index: -1;
    inset: -7px;
    border: solid 8px;
    border-image: conic-gradient(from var(--a), crimson, gold, deepskyblue, slateblue, darkorchid, violet, fuchsia, crimson, gold, deepskyblue, slateblue, darkorchid, violet, fuchsia, crimson) 1;
    filter: blur(3px);
    animation: a 4s linear infinite;
}
@keyframes a { to { --a: 1turn } }


.AICompanion.icon>.title{
    text-align: center;
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 4px;
    user-select: none;
    font-size: 15px;
    text-shadow: 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff;
}




.AICompanion.icon.hiding {
    display: none;
}



/* 內容介面 */
.AICompanion.popModal{
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    /* width: 360px; */
    /* width: 600px; */
    /* height: 700px; */
    /* left: 350px; */
    /* bottom: 20px; */
    opacity: 0;
    transform: scale(0.95);
    visibility: hidden;
    transition: opacity 0.3s ease, transform 0.3s ease;
    z-index:9999;
}












@keyframes jello {
    0%, 100% {
        transform: scale3d(1, 1, 1);
    }
    22.2% {
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }
    33.3% {
        transform: skewX(6.25deg) skewY(6.25deg);
    }
    44.4% {
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }
    55.5% {
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }
    66.6% {
        transform: skewX(-0.78125deg) skewY(-0.78125deg);
    }
    77.7% {
        transform: skewX(0.390625deg) skewY(0.390625deg);
    }
    88.8% {
        transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    }
}

/* .AICompanion.popModal.show {
    opacity: 1;
    transform: scale(1);
    visibility: visible;
    pointer-events: auto;
} */
.AICompanion.popModal.show {
    opacity: 1;
    transform: scale(1);
    visibility: visible;
    pointer-events: auto;

    /* 先做 translateY(0) & scale(1) 的過渡，再接 jello */
    transform: translateY(0) scale(1);
    animation: jello 0.6s ease both;
}


.AICompanion.popModal.hiding {
    opacity: 0;
    transform: scale(0.95);
    pointer-events: none;
}


@keyframes box-appear {
    0% {
        opacity: 1;
        width: 10px;
        height: 4px;
    }
    33% {
        width: calc(var(--side)*1.3);
        height: 4px;
    }
    66% {
        width: var(--side);
        height: calc(var(--side)*1.15);
    }
    100% {
        height: var(--side);
        opacity: 1;
    }
}

@keyframes border-spin {
    0% { transform: translate(-50%, -50%) rotate(0deg);}
    100% { transform: translate(-50%, -50%) rotate(360deg);}
}

@keyframes breathing-light {
    0% { filter: blur(var(--minBlur)); }
    50% { filter: blur(var(--maxBlur)); }
    100% { filter: blur(var(--minBlur)); }
}

@keyframes breathe {
    0%   { transform: scale(1); box-shadow: 0 0 5px rgba(0,0,0,0.2); }
    50%  { transform: scale(1.03); box-shadow: 0 0 15px rgba(0,0,0,0.4); }
    100% { transform: scale(1); box-shadow: 0 0 5px rgba(0,0,0,0.2); }
}

/* 滑上去時的旋轉＋抖動動畫 */
@keyframes spinshake {
    0%   { transform: rotate(0deg); }
    30%  { transform: rotate(360deg); }
    50%  { transform: translateX(-3px); }
    60%  { transform: translateX(3px); }
    70%  { transform: translateX(-2px); }
    80%  { transform: translateX(2px); }
    100% { transform: translateX(0px); }
}




@media screen and (min-width: 600px)  {
    .AICompanion.popModal{
        width: 480px;
        height: 600px;
        left: calc(50% - 200px);
        top: calc(50% - 300px);
        /* bottom: 20px; */
    }
}
@media screen and (min-width: 1200px)  {
    /* .AICompanion.popModal{
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        bottom: auto;
    } */
}