:root{--app-font-family: "Inter", sans-serif;--app-border-radius: .5rem;--app-card-bg: var(--bs-body-bg);--app-sidebar-width: 280px}[data-bs-theme=dark]{--app-card-bg: var(--bs-tertiary-bg)}body{font-family:var(--app-font-family)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bs-body-bg)}::-webkit-scrollbar-thumb{background:var(--bs-secondary-bg);border-radius:5px;border:2px solid var(--bs-body-bg)}::-webkit-scrollbar-thumb:hover{background:var(--bs-tertiary-bg)}.app-sidebar{width:var(--app-sidebar-width);border-right:1px solid var(--bs-border-color-translucent);flex-shrink:0}.app-sidebar .nav-pills .nav-link{padding:.75rem 1.25rem;border-radius:var(--app-border-radius);font-size:.9rem;transition:background-color .2s ease-in-out,color .2s ease-in-out;border:none;position:relative;color:var(--bs-body-emphasis)}.app-sidebar .nav-pills .nav-link:hover{background-color:var(--bs-tertiary-bg);color:var(--bs-body-emphasis)}.app-sidebar .nav-pills .nav-link.active{background-color:var(--bs-primary-bg-subtle);color:var(--bs-primary-text-emphasis)!important;font-weight:600}.app-sidebar .nav-pills .nav-link.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:60%;background-color:var(--bs-primary);border-radius:0 4px 4px 0}.app-sidebar .nav-pills .nav-link.active .bi{color:var(--bs-primary)}.card{border-radius:var(--app-border-radius);border:1px solid var(--bs-border-color-translucent);box-shadow:0 2px 8px #0000000d;background-color:var(--app-card-bg)}[data-bs-theme=dark] .card{box-shadow:0 4px 12px #0000001a}.card-header{background-color:transparent;border-bottom:1px solid var(--bs-border-color-translucent);padding:.75rem 1.25rem}.accordion-button{box-shadow:none!important}.accordion-button:not(.collapsed){box-shadow:none}.form-control,.form-select{border-radius:var(--app-border-radius)}.form-control:focus,.form-select:focus{box-shadow:0 0 0 3px var(--bs-primary-bg-subtle);border-color:var(--bs-primary)}.landing-page-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:#111;background-image:radial-gradient(circle at center,#ffffff0d,#fff0 60%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M0 38.59l2.83-2.83 1.41 1.41L1.41 40H0v-1.41zM0 1.4l2.83 2.83 1.41-1.41L1.41 0H0v1.41zM38.59 40l-2.83-2.83 1.41-1.41L40 38.59V40h-1.41zM40 1.41l-2.83 2.83-1.41-1.41L38.59 0H40v1.41zM20 18.6l2.83-2.83 1.41 1.41L21.41 20l2.83 2.83-1.41 1.41L20 21.41l-2.83 2.83-1.41-1.41L18.59 20l-2.83-2.83 1.41-1.41L20 18.59z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");color:#fff;overflow:hidden}@keyframes fadeInFromBottom{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.landing-content{animation:fadeInFromBottom .8s ease-out forwards}.landing-logo{width:150px;height:150px;margin-bottom:1.5rem;border-radius:50%;box-shadow:0 0 25px #007bff66,0 0 10px #ffffff1a}.landing-title{background:linear-gradient(120deg,#f8f9fa,#adb5bd);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:800}.landing-page-container .btn-primary{padding:.75rem 2rem;font-weight:600;border-radius:50px;transition:all .3s ease;box-shadow:0 4px 15px #007bff33}.landing-page-container .btn-primary:hover{transform:translateY(-3px);box-shadow:0 6px 20px #007bff4d}.landing-language-selector{opacity:.8;transition:opacity .3s ease}.landing-language-selector:hover{opacity:1}.landing-language-selector select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23adb5bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .5rem center;background-size:16px 12px;padding-right:2rem;cursor:pointer}.landing-language-selector select:focus{outline:none;box-shadow:none}.exposure-meter-track{position:relative;height:12px;background-color:var(--bs-secondary-bg);border-radius:6px;display:flex;justify-content:space-between;align-items:center;padding:0 4px}.exposure-meter-tick{width:1px;height:6px;background-color:var(--bs-secondary-color)}.exposure-meter-tick.zero{height:10px;width:2px;border-radius:1px}.exposure-meter-indicator{position:absolute;top:50%;transform:translate(-50%,-50%);width:12px;height:12px;background-color:var(--bs-primary);border-radius:50%;border:2px solid var(--bs-body-bg);transition:left .3s ease;z-index:2}.exposure-meter-target-range{position:absolute;top:50%;transform:translateY(-50%);height:8px;background-color:var(--bs-success-bg-subtle);border-radius:4px;transition:all .3s ease;z-index:1}.exposure-meter-target-marker{position:absolute;top:50%;transform:translate(-50%) translateY(-50%);width:2px;height:16px;background-color:var(--bs-success);border-radius:1px;transition:left .3s ease;z-index:1}.contrast-meter-track{height:12px;background-color:var(--bs-secondary-bg);border-radius:6px;overflow:hidden}.contrast-meter-bar{height:100%;background:linear-gradient(90deg,var(--bs-success) 0%,var(--bs-warning) 70%,var(--bs-danger) 100%);border-radius:6px;transition:width .3s ease}.monitor-overlay{position:absolute;bottom:0;left:0;right:0;padding:.5rem .75rem;background:linear-gradient(to top,#000000b3,#0000);color:#fff;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem 1rem;font-size:.8rem;font-family:var(--bs-font-monospace);pointer-events:none;text-shadow:1px 1px 2px rgba(0,0,0,.5);z-index:5}.monitor-param{display:flex;align-items:baseline;gap:.25rem}.monitor-param .label{font-size:.7rem;opacity:.8}.monitor-param .value{font-weight:600}@media print{@page{size:A4;margin:.75in}body{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background-color:#fff!important;color:#000!important;font-size:10pt}.no-print{display:none!important}}
