.elementor-8239 .elementor-element.elementor-element-2e00189{--display:flex;}.elementor-8239 .elementor-element.elementor-element-f5724fb > .elementor-widget-container{padding:0px 0px 30px 0px;}.elementor-8239 .elementor-element.elementor-element-8ce637d{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--box-border-color:#D4005400;box-shadow:0px 0px 10px 0px rgba(211.99999999999997, 0, 84.00000000000003, 0.19);--header-color:var( --e-global-color-text );--item-text-hover-decoration:underline;--marker-color:var( --e-global-color-text );}.elementor-8239 .elementor-element.elementor-element-8ce637d .elementor-toc__header-title{text-align:start;}.elementor-8239 .elementor-element.elementor-element-8ce637d .elementor-toc__header, .elementor-8239 .elementor-element.elementor-element-8ce637d .elementor-toc__header-title{font-size:20px;}.elementor-8239 .elementor-element.elementor-element-8ce637d .elementor-toc__header{flex-direction:row;}.elementor-8239 .elementor-element.elementor-element-2aa3902{margin:60px 0px calc(var(--kit-widget-spacing, 0px) + 60px) 0px;box-shadow:3px 3px 10px 0px rgba(0, 0, 0, 0.33);}.elementor-8239 .elementor-element.elementor-element-2aa3902.elementor-element{--align-self:center;}.elementor-8239 .elementor-element.elementor-element-aa81387 > .elementor-widget-container{padding:30px 0px 30px 0px;}.elementor-8239 .elementor-element.elementor-element-f9adc2d > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-8239 .elementor-element.elementor-element-9eaa67f{--display:flex;--overlay-opacity:0.5;}.elementor-8239 .elementor-element.elementor-element-9eaa67f::before, .elementor-8239 .elementor-element.elementor-element-9eaa67f > .elementor-background-video-container::before, .elementor-8239 .elementor-element.elementor-element-9eaa67f > .e-con-inner > .elementor-background-video-container::before, .elementor-8239 .elementor-element.elementor-element-9eaa67f > .elementor-background-slideshow::before, .elementor-8239 .elementor-element.elementor-element-9eaa67f > .e-con-inner > .elementor-background-slideshow::before, .elementor-8239 .elementor-element.elementor-element-9eaa67f > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-8239 .elementor-element.elementor-element-5dedc46 > .elementor-widget-container{padding:30px 0px 30px 0px;}@media(max-width:767px){.elementor-8239 .elementor-element.elementor-element-8ce637d .elementor-toc__header, .elementor-8239 .elementor-element.elementor-element-8ce637d .elementor-toc__header-title{font-size:18px;}.elementor-8239 .elementor-element.elementor-element-8ce637d .elementor-toc__list-item{font-size:14px;}}/* Start custom CSS */<style>
        body {
            font-family: 'Sarabun', sans-serif;
            padding: 20px;
            background-color: #f4f4f4;
            color: #333;
            display: flex;
            justify-content: center;
            align-items: flex-start;
            min-height: 100vh;
            margin: 0;
        }
        .calculator-container {
            background-color: #fff;
            padding: 25px;
            border-radius: 8px;
            box-shadow: 0 0 15px rgba(0,0,0,0.1);
            width: 100%;
            max-width: 450px;
        }
        h1 {
            text-align: center;
            color: #2c3e50;
            margin-bottom: 20px;
        }
        .form-group {
            margin-bottom: 15px;
        }
        .form-group label {
            display: block;
            margin-bottom: 5px;
            font-weight: bold;
        }
        .form-group select,
        .form-group input[type="number"] {
            width: 100%;
            padding: 10px;
            border: 1px solid #ddd;
            border-radius: 4px;
            box-sizing: border-box;
        }
        #previewImageContainer {
            width: 100%;
            height: 100%;
            margin: 0 auto 20px auto;
            display: flex;
            justify-content: center;
            align-items: center;
            border: 1px solid #eee;
            border-radius: 4px;
            background-color: #f9f9f9;
            overflow: hidden;
        }
        #previewImage {
            display: block;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
        #inputControls .input-field-group {
            display: flex;
            align-items: center;
            margin-bottom: 10px;
        }
        #inputControls .input-field-group label {
            min-width: 120px;
            margin-bottom: 0;
            margin-right: 10px;
        }
        #inputControls .input-field-group input[type="number"] {
            flex-grow: 1;
        }
        button {
            background-color: #3498db;
            color: white;
            padding: 12px 20px;
            border: none;
            border-radius: 4px;
            cursor: pointer;
            font-size: 1em;
            width: 100%;
            transition: background-color 0.3s ease;
        }
        button:hover {
            background-color: #2980b9;
        }
        #result {
            margin-top: 20px;
            padding: 15px;
            background-color: #eafaf1;
            border: 1px solid #7dcea0;
            border-radius: 4px;
            text-align: center;
            font-weight: bold;
            font-size: 1.1em;
            color: #1e8449;
        }
        #result.error {
            background-color: #fdedec;
            border-color: #e74c3c;
            color: #c0392b;
        }
    </style>/* End custom CSS */