.elementor-5307 .elementor-element.elementor-element-5d6ef25{--display:flex;--justify-content:flex-start;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:50px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5307 .elementor-element.elementor-element-6bb93d1 > .elementor-widget-container{margin:0px 0px -19px 0px;}.elementor-5307 .elementor-element.elementor-element-6bb93d1{font-family:"Ploni", Sans-serif;font-size:15px;font-weight:400;color:var( --e-global-color-05b65f1 );}.elementor-5307 .elementor-element.elementor-element-6bb93d1 a{color:var( --e-global-color-05b65f1 );}.elementor-5307 .elementor-element.elementor-element-6bb93d1 a:hover{color:var( --e-global-color-primary );}.elementor-5307 .elementor-element.elementor-element-45fe64b{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:30px 30px 30px 30px;--padding-top:35px;--padding-bottom:35px;--padding-left:35px;--padding-right:35px;}.elementor-5307 .elementor-element.elementor-element-091dc57 > .elementor-widget-container{margin:-9px 0px 0px 0px;}.elementor-5307 .elementor-element.elementor-element-091dc57{text-align:center;}.elementor-5307 .elementor-element.elementor-element-bdb0df0 > .elementor-widget-container{margin:18px 0px 0px 0px;}@media(max-width:1024px){.elementor-5307 .elementor-element.elementor-element-5d6ef25{--margin-top:25px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}}@media(max-width:767px){.elementor-5307 .elementor-element.elementor-element-5d6ef25{--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-5307 .elementor-element.elementor-element-45fe64b{--width:90%;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-5307 .elementor-element.elementor-element-091dc57 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5307 .elementor-element.elementor-element-091dc57 .elementor-heading-title{font-size:37px;line-height:0.9em;}.elementor-5307 .elementor-element.elementor-element-bdb0df0 > .elementor-widget-container{padding:0px 0px 0px 0px;}}@media(min-width:768px){.elementor-5307 .elementor-element.elementor-element-45fe64b{--width:40%;}}@media(max-width:1024px) and (min-width:768px){.elementor-5307 .elementor-element.elementor-element-45fe64b{--width:72%;}}/* Start custom CSS for heading, class: .elementor-element-091dc57 */.elementor-5307 .elementor-element.elementor-element-091dc57 h1 {
            font-size: 40px;
            line-height: 1.2; /* Adjusted for multi-line title */
            letter-spacing: -1.3px !important;
            font-weight: 400;
            color: #0b57d0;
            margin: 0;
            background-image: linear-gradient(-320deg,#40dfa3 23%, #3498ea 60%, #6363f1 78%, #a163f1);
            background-size: 100% 200%;
            background-repeat: no-repeat;
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            text-align: center;
        }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bdb0df0 */.form-group { 
            margin-bottom: 20px; 
            text-align: right; 
            position: relative; 
        }
        
        .input-label {
            display: block;
            font-size: 17px;
            font-weight: 500;
            color: #656B8A; 
        }
        
        .select-field {
            width: 100%; 
            padding: 13px 14px; 
            font-size: 16px;
            border: 1px solid #dadce0; 
            border-radius: 8px;
            color: #656B8A; 
            transition: border-color 0.2s ease, box-shadow 0.2s ease;
            background-color: #fff; 
            font-family: "Ploni", Sans-serif !important;
        }
        
        .input-field {
            width: 100%; 
            padding: 12px 14px; 
            font-size: 16px;
            border: 1px solid #dadce0; 
            border-radius: 8px;
            color: #656B8A; 
            transition: border-color 0.2s ease, box-shadow 0.2s ease;
            background-color: #fff; 
        }
        .input-field:focus, 
        .select-field:focus { 
            outline: none; 
            border-color: #6363F1; 
        }
        
        textarea.input-field { 
            min-height: 120px; 
            resize: vertical; 
        }
        
        .input-note { 
            font-size: 14px;
            color: #656B8A; 
            margin-top: 6px;
            opacity: 0.8;
        }

        .btn { 
            padding: 10px 20px; 
            border: none; 
            border-radius: 100px; 
            font-size: 20px;
            font-weight: 400; 
            cursor: pointer; 
            transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, transform 0.1s ease;
            width: 100%; 
            box-sizing: border-box; 
            font-family: "Ploni", Sans-serif; 
            box-shadow: 0px 24px 22px rgb(23 6 100 / 4%), 0px 8.5846px 8.03036px rgb(23 6 100 / 5%), 0px 4.77692px 3.89859px rgb(23 6 100 / 7%), 0px 2.63479px 1.91116px rgb(23 6 100 / 8%), 0px 1.15891px 0.755676px rgb(23 6 100 / 12%);
            background-image: linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,0));
            display: inline-flex; align-items: center; justify-content: center; gap: 8px; text-decoration: none;
        }
        
        .btn svg { 
            width: 1em; 
            height: 1em; 
            fill: currentColor; 
        }
        
        .btn-primary { 
            background-color: #6363F1; 
            color: white;
            margin-top: 10px; 
        }
        .btn-primary:hover { 
            background-color: #7777F3; 
            box-shadow: 0 2px 4px rgba(0,0,0,0.1); 
        }
        .btn-primary:active { transform: scale(0.98); }
        .btn:disabled {
            background-color: #ccc;
            cursor: not-allowed;
            box-shadow: none;
        }


        .output-container { 
            margin-top: 25px; 
            margin-bottom: 15px; 
            display: flex; 
            justify-content: center; 
            align-items: center;
            min-height: 200px; 
            border: 2px dashed #ccd0d5; 
            border-radius: 16px;
            padding: 10px; 
            background-color: #f9f9f9; 
            position: relative; 
            overflow: hidden; 
        }
        #qrCodeCanvas { 
            max-width: 100%; 
            height: auto; 
            display: block; 
        }
        .qr-placeholder-text { 
            color: #aaa; 
            font-size: 16px; 
        }

        .download-actions-container { 
            margin-top: 15px; 
            display: flex; 
            justify-content: center; 
        }
        
        .btn-download-png { 
            background-color: var(--e-global-color-5922f6a);
            fill: var(--e-global-color-05b65f1);
            color: var(--e-global-color-05b65f1);
            border: 1px solid var(--e-global-color-05b65f1);
            box-shadow: none !important;
            padding: 7px 20px;
            width: fit-content;
        }
        .btn-download-png:hover { 
            border-color: var(--e-global-color-a92fd77);
            color: var( --e-global-color-a92fd77 );
        }

        .color-pickers-row {
            display: flex;
            gap: 15px; 
        }
        .color-pickers-row .form-group {
            flex: 1; 
            margin-bottom: 0; 
        }

        .color-picker-instance {
            border: 1px solid #e0e0e0;
            padding: 10px; 
            border-radius: 8px;
            margin-top: 8px; 
            background-color: #fdfdfd;
            display: none; 
            position: absolute; 
            z-index: 100; 
            width: calc(100% - 2px); 
            left: 0; 
            box-shadow: 0 4px 12px rgba(0,0,0,0.15);
        }
        .color-picker-instance.active { 
            display: block;
        }

        .color-input-group {
            display: flex;
            align-items: center;
            gap: 8px; 
            margin-bottom: 5px; /* Reduced margin */
        }
        .color-input-preview {
            width: 37px;
            height: 38px;
            border-radius: 0 8px 8px 0;
            border: 1px solid #dadce0;
            cursor: pointer;
            background-image: linear-gradient(45deg, #ccc 25%, transparent 25%), linear-gradient(-45deg, #ccc 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #ccc 75%), linear-gradient(-45deg, transparent 75%, #ccc 75%);
            background-size: 10px 10px;
            background-position: 0 0, 0 5px, 5px -5px, -5px 0px;
            position: relative;
            overflow: hidden;
            margin-left: -45px;
        }
        .color-input-preview .color-overlay { 
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            border-radius: 0 8px 8px 0;
        }

        .color-input-hex {
            flex-grow: 1;
            padding: 8px 10px;
            font-size: 14px;
            border: 1px solid #dadce0; 
            border-radius: 8px;
            background-color: #f8f9fa; 
            color: #656B8A; 
            text-align: left;
            direction: ltr;
        }
         .color-input-hex:focus {
            border-color: #6363F1; 
         }
         .color-input-hex.invalid {
            border-color: #dc3545; /* Red border for invalid input */
            background-color: #fbe_hex_errorae;
         }
        .hex-error-message {
            font-size: 12px;
            color: #dc3545;
            margin-top: 3px;
            text-align: right;
            height: 15px; /* Reserve space to prevent layout shift */
        }


        .color-picker-controls { 
            width: 100%;
            margin: 0 auto; 
        }
        .saturation-area {
            width: 100%; 
            height: 120px; 
            position: relative; 
            cursor: crosshair;
            background-image: linear-gradient(to top, rgba(0,0,0,1), transparent), 
                              linear-gradient(to right, rgba(255,255,255,1), transparent);
            border-radius: 6px; 
            overflow: hidden; 
            border: 1px solid #dadce0;
        }
        .saturation-handle {
            width: 16px; 
            height: 16px; 
            border-radius: 50%;
            border: 2px solid white; 
            box-shadow: 0 0 0 1.5px black, inset 0 0 0 1.5px black;
            position: absolute; 
            transform: translate(-50%, -50%); 
            pointer-events: none;
        }
        .slider-container { 
            margin-top: 8px; 
        }
        .slider {
            width: 100%; 
            height: 20px; 
            position: relative; 
            cursor: pointer;
            border-radius: 4px; 
            border: 1px solid #dadce0;
        }
        .hue-slider { 
            background: linear-gradient(to right, red 0%, yellow 17%, lime 33%, cyan 50%, blue 67%, magenta 83%, red 100%); 
        }
        .alpha-slider {
            background-image: 
                linear-gradient(45deg, #ccc 25%, transparent 25%), linear-gradient(-45deg, #ccc 25%, transparent 25%),
                linear-gradient(45deg, transparent 75%, #ccc 75%), linear-gradient(-45deg, transparent 75%, #ccc 75%);
            background-size: 10px 10px; 
            background-position: 0 0, 0 5px, 5px -5px, -5px 0px; 
            position: relative;
        }
        .alpha-gradient { 
            position: absolute; 
            top: 0; left: 0; right: 0; bottom: 0; 
            border-radius: 3px; 
        }
        .slider-handle {
            width: 8px; 
            height: calc(100% + 4px); 
            border-radius: 2px;
            border: 2px solid white; 
            background-color: #777; 
            box-shadow: 0 0 2px rgba(0,0,0,0.5);
            position: absolute; 
            top: -2px; 
            transform: translateX(-50%); 
            pointer-events: none;
        }
        .color-picker-values-display { 
            margin-top: 8px; 
            font-size: 12px; 
            text-align: center; 
            color: #555; 
        }

        .toast-notification {
            position: fixed;
            bottom: 20px;
            left: 50%;
            transform: translateX(-50%);
            background-color: #28a745;
            color: white;
            padding: 10px 20px;
            border-radius: 6px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.2);
            z-index: 1000;
            opacity: 0;
            transition: opacity 0.3s, transform 0.3s;
            pointer-events: none;
        }
        .toast-notification.show {
            opacity: 1;
            transform: translate(-50%, -10px);
        }
        .error-message { /* General error message for QR generation */
            color: #dc3545;
            text-align: center;
            margin-top: 10px;
            font-size: 14px;
        }
        .hidden { 
            display: none !important; 
        }

        .options-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
            gap: 15px;
            margin-bottom: 20px;
            text-align: right;
        }

        @media only screen and (max-width: 767px) {
            .btn { 
                font-size: 18px; 
            }
            .input-label { 
                font-size: 16px; 
            }
            .input-field, .select-field { 
                font-size: 15px; 
            }
            .options-grid { 
                grid-template-columns: 1fr; 
            }
            .color-pickers-row { 
                flex-direction: column; 
                gap: 20px; 
            } 
            .color-picker-instance { 
                padding: 10px; 
                position: relative; 
                width: 100%;
            } 
            .saturation-area { 
                height: 140px; 
            } 
         }
         @media only screen and (min-width: 768px) {
            .saturation-area { 
                height: 120px; 
            } 
         }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-45fe64b */.elementor-5307 .elementor-element.elementor-element-45fe64b {
    /*background-image: url(/wp-content/uploads/2022/11/DOTS.png);
    background-repeat: repeat-x;
    background-size: 120%;
    background-color: #fff;
    background-position: 10% 0px;*/
    box-shadow: 0px 51px 78px rgb(17 7 53 / 5%), 0px 21.3066px 35.4944px rgb(17 7 53 / 4%), 0px 11.3915px 18.9418px rgb(17 7 53 / 3%), 0px 6.38599px 9.8801px rgb(17 7 53 / 3%), 0px 3.39155px 4.58665px rgb(17 7 53 / 2%), 0px 1.4113px 1.55262px rgb(17 7 53 / 1%), inset 0px 1px 0px rgb(41 56 78 / 5%);
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Ploni';
	font-style: normal;
	font-weight: 300;
	font-display: auto;
	src: url('https://isl-design.co.il/wp-content/uploads/2022/11/ploni-light-aaa.woff2') format('woff2');
}
@font-face {
	font-family: 'Ploni';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://isl-design.co.il/wp-content/uploads/2022/11/ploni-regular-aaa.woff2') format('woff2');
}
@font-face {
	font-family: 'Ploni';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://isl-design.co.il/wp-content/uploads/2022/11/ploni-demibold-aaa.woff2') format('woff2');
}
@font-face {
	font-family: 'Ploni';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://isl-design.co.il/wp-content/uploads/2022/11/ploni-bold-aaa-1.woff2') format('woff2');
}
@font-face {
	font-family: 'Ploni';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://isl-design.co.il/wp-content/uploads/2022/11/ploni-ultrabold-aaa.woff2') format('woff2');
}
@font-face {
	font-family: 'Ploni';
	font-style: normal;
	font-weight: 800;
	font-display: auto;
	src: url('https://isl-design.co.il/wp-content/uploads/2022/11/ploni-black-aaa.woff2') format('woff2');
}
/* End Custom Fonts CSS */