*{font-family:sans-serif}
body{margin:10px}
/* Webcam size control - change --webcam-max-width to experiment */
:root {
    --webcam-max-width: 800px;
}

.webcam-media {
    max-width: var(--webcam-max-width);
    margin: 0 auto;
    width: 100%;
}

/* Responsive iframe wrapper: maintains aspect ratio */
.iframe-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 6px;
    border: 1px solid #ddd;
    background: #000;
}

/* Aspect ratio presets for iframe wrappers */
.iframe-16-9 { padding-top: 56.25%; }  /* 16:9 */
.iframe-4-3  { padding-top: 75%; }     /* 4:3 */
.iframe-1-1  { padding-top: 100%; }    /* 1:1 (square) */

.iframe-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* Direct media elements (img) */
.webcam-media img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px;
}

/* Video elements need aspect ratio wrapper for proper scaling */
.webcam-media video {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px;
}

/* Video wrapper for maintaining aspect ratio (16:9) */
.video-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 6px;
    border: 1px solid #ddd;
    background: #000;
    padding-top: 56.25%;  /* 16:9 aspect ratio */
}

.video-wrapper video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
/* Frame around each webcam section - scales with --webcam-max-width */
.webcam-section {
    max-width: var(--webcam-max-width);
    width: 100%;
    margin: 0 auto 30px;
    background-color: white;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    box-sizing: border-box;
}

.webcam-section h2 {
    color: white;
    margin-top: 0;
    border-bottom: 2px solid #007bff;
    padding-bottom: 10px;
}
h1, h2{background:#007bff;text-align:center}
h1{font-size:1.2em;margin:1px;padding:5px}
h2{font-size:1.0em}
h3{font-size:0.9em}
p{color: black;}
a{text-decoration:none;color:dimgray;text-align:center}
main{text-align:center}
article{vertical-align:top;display:inline-block;margin:0.2em;padding:0.1em;border-style:solid;border-color:#C0C0C0;background-color:#b0bec5;width:20em;text-align:left}
article h2{margin-top:0;padding-bottom:1px}
section {margin-bottom:0.2em;clear:both;}
table{border-collapse:separate;border-spacing:0 0.2em}
th, td{background-color:#C0C0C0}
button{margin-top:0.3em}
big_button button{width: 400px; height: 40px; font-size:200%;text-align: center; 
        color: black; background-color: lightblue; border: 2px solid blueviolet}
footer p{font-size:0.8em;color:dimgray;background:silver;text-align:center;margin-bottom:5px}
nav{background-color:silver;margin:1px;padding:5px;font-size:0.8em}
nav a{color:dimgrey;padding:10px;text-decoration:none}
nav a:hover{text-decoration:underline}
nav p{margin:0px;padding:0px}
.on_red, .on_green, .off{margin-top:0;margin-bottom:0.2em;margin-left:4em;font-size:1.4em;border-style:solid;border-radius:10px;border-style:outset;width:5em;height:1.5em;text-decoration:none;text-align:center}
.off{color:black;background-color:gray;border-color:grey}
.on_red{background-color:red;border-color:red}
.on_green{background-color:green;border-color:green}
message_ok  {color:white;vertical-align:top;display:inline-block;margin:0.2em;padding:0.1em;border-style:solid;border-color:#C0C0C0;background-color:green ;width:19em;text-align:center}
message_warn{color:white;vertical-align:top;display:inline-block;margin:0.2em;padding:0.1em;border-style:solid;border-color:#C0C0C0;background-color:orange;width:19em;text-align:center}
message_err {color:white;vertical-align:top;display:inline-block;margin:0.2em;padding:0.1em;border-style:solid;border-color:#C0C0C0;background-color:red   ;width:19em;text-align:center}
.owm-widget {
    width: 50%; /* Adjust width as needed */
    max-width: 500px; /* Optional: Set a maximum width */
    margin: 0 auto; /* Center the widget horizontally */
    padding: 10px; /* Optional: Add some padding */
}
