.modal-backdrop[data-v-95cae540]{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box[data-v-95cae540]{background:#fff;border-radius:12px;box-shadow:0 12px 40px #0003;min-width:0;width:min(calc(100vw - 2rem),720px);max-width:720px;max-height:85vh;display:flex;flex-direction:column}.modal-header[data-v-95cae540]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #eee;flex-shrink:0}.modal-title[data-v-95cae540]{margin:0;font-size:1.25rem;color:#1a1a2e}.modal-close[data-v-95cae540]{width:36px;height:36px;padding:0;border:none;background:transparent;font-size:1.5rem;line-height:1;color:#666;cursor:pointer;border-radius:6px}.modal-close[data-v-95cae540]:hover{background:#f0f0f0;color:#333}.modal-body[data-v-95cae540]{padding:1.5rem 1.5rem 1.75rem;overflow-y:auto;flex:1;min-height:0}.field-hint[data-v-95cae540]{margin:0 0 1rem;font-size:.9rem;color:#555}.measurement-datetime-row[data-v-95cae540]{display:flex;gap:.5rem;align-items:center}.measurement-datetime-row .input-date[data-v-95cae540]{flex:3;min-width:0}.measurement-datetime-row .input-time[data-v-95cae540]{flex:2;min-width:0}.field-error[data-v-95cae540]{margin:0 0 1rem;font-size:.9rem;color:#c62828}.field-label[data-v-95cae540]{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.gps-checkbox-label[data-v-95cae540]{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500}.gps-checkbox-label input[data-v-95cae540]{margin:0}.gps-add-row[data-v-95cae540]{display:flex;gap:.5rem;align-items:center;margin-bottom:.5rem}.gps-device-select[data-v-95cae540]{flex:1;min-width:0}.gps-add-btn[data-v-95cae540]{flex-shrink:0}.gps-added-list[data-v-95cae540]{list-style:none;margin:0;padding:0;border:1px solid #ddd;border-radius:8px;overflow:hidden}.gps-added-item[data-v-95cae540]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .75rem;border-bottom:1px solid #eee;background:#fff}.gps-added-item[data-v-95cae540]:last-child{border-bottom:none}.sensor-list-with-descriptions[data-v-95cae540]{list-style:none;margin:0;padding:0}.sensor-list-with-descriptions-item[data-v-95cae540]{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #eee}.sensor-list-with-descriptions-item[data-v-95cae540]:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.sensor-list-name[data-v-95cae540]{font-weight:500;color:#1a1a2e}.sensor-list-description-input[data-v-95cae540]{width:100%}.authors-list[data-v-95cae540]{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.author-row[data-v-95cae540]{display:grid;grid-template-columns:1fr 1fr auto;gap:.5rem;align-items:center}.input-name[data-v-95cae540],.input-role[data-v-95cae540]{min-width:0}.btn-outline[data-v-95cae540]{background:transparent;color:#084b08;border:1px solid #084b08}.btn-outline[data-v-95cae540]:hover{background:#084b0814}.btn-icon[data-v-95cae540]{padding:.5rem .6rem;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.remove-icon[data-v-95cae540]{width:16px;height:16px}.btn-remove[data-v-95cae540]{background:#f0f0f0;color:#666;border:1px solid #ddd}.btn-remove[data-v-95cae540]:hover{background:#f8d7da;border-color:brown;color:brown}.input-file[data-v-95cae540]{width:100%;margin-bottom:1rem;font-size:1rem}.image-preview-wrap[data-v-95cae540]{margin-top:.5rem}.image-preview[data-v-95cae540]{display:block;max-width:100%;max-height:40vh;object-fit:contain;border-radius:8px;border:1px solid #e0e0e0}.btn-remove-image[data-v-95cae540]{margin-top:.75rem}.image-caption-field[data-v-95cae540]{margin-top:1rem}.field[data-v-95cae540]{margin-bottom:1.25rem}.field label[data-v-95cae540]{display:block;margin-bottom:.5rem;font-weight:500;color:#333;font-size:1rem}.input[data-v-95cae540]{width:100%;padding:.75rem 1rem;border:1px solid #ccc;border-radius:8px;font-size:1rem;box-sizing:border-box;font-family:inherit}.input[data-v-95cae540]:focus{outline:none;border-color:#084b08;box-shadow:0 0 0 2px #084b0833}textarea.input[data-v-95cae540]{resize:vertical;min-height:200px}.modal-actions[data-v-95cae540]{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #eee;flex-shrink:0}.btn[data-v-95cae540]{padding:.5rem 1rem;font-size:.95rem;border-radius:8px;cursor:pointer;border:1px solid transparent}.btn-secondary[data-v-95cae540]{background:#f0f0f0;color:#333;border-color:#ddd}.btn-secondary[data-v-95cae540]:hover{background:#e5e5e5}.btn-primary[data-v-95cae540]{background:#084b08;color:#fff}.btn-primary[data-v-95cae540]:hover:not(:disabled){background:#063a06}.btn-primary[data-v-95cae540]:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.author-row[data-v-95cae540]{grid-template-columns:1fr}.modal-body[data-v-95cae540]{padding:1rem}}#app{min-height:100vh}.app-sidebar{position:fixed;right:0;top:0;width:320px;height:100vh;background:#063a06;color:#fff;z-index:100;box-shadow:-2px 0 12px #00000026}.sidebar-inner{height:100%;padding:1.25rem 0;display:flex;flex-direction:column}.sidebar-title{margin:0 1rem .75rem;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff9}.sidebar-nav{flex:1;padding:0 1rem;overflow-y:auto}.sidebar-group{margin-bottom:1.25rem}.sidebar-group:last-of-type{margin-bottom:0}.sidebar-group-label{margin:0 0 .5rem;padding-bottom:.4rem;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#ffffffd9;border-bottom:1px solid rgba(255,255,255,.15)}.sidebar-group-items{list-style:none;margin:0;padding:0}.sidebar-group-items li{margin-bottom:.25rem}.sidebar-group-items li:last-child{margin-bottom:0}.sidebar-item{display:block;width:100%;padding:.5rem .75rem;font-size:.95rem;color:#fffffff2;background:transparent;border:none;border-radius:6px;text-align:left;cursor:pointer;transition:background .15s}.sidebar-item:hover{background:#ffffff26}.sidebar-item-disabled,.sidebar-item:disabled{opacity:.5;cursor:not-allowed}.sidebar-item-disabled:hover,.sidebar-item:disabled:hover{background:transparent}.sidebar-group-items:empty{display:none}.sidebar-group-items:empty:after{content:none}.sidebar-footer{margin-top:auto;padding:1rem 1rem 1.25rem;border-top:1px solid rgba(255,255,255,.15)}.sidebar-locale{display:flex;gap:.35rem;margin-bottom:.75rem}.sidebar-locale-item{display:inline}.sidebar-locale-btn{padding:.25rem .5rem;font-size:.8rem;font-weight:600;color:#ffffffb3;background:transparent;border:1px solid rgba(255,255,255,.3);border-radius:4px;cursor:pointer}.sidebar-locale-btn:hover{color:#fff;background:#ffffff26}.sidebar-locale-btn-active{color:#fff;background:#ffffff40;border-color:#ffffff80}.sidebar-footer-label{margin:0 0 .25rem;font-size:.75rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.04em}.sidebar-user{margin:0 0 .75rem;font-size:.9rem;color:#fffffff2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-export-pdf{width:100%;padding:.5rem .75rem;margin-bottom:.5rem;font-size:.9rem;color:#fff;background:#ffffff26;border:1px solid rgba(255,255,255,.3);border-radius:6px;cursor:pointer}.sidebar-export-pdf:hover:not(:disabled){background:#ffffff40}.sidebar-export-pdf:disabled{opacity:.7;cursor:wait}.sidebar-export-json{width:100%;padding:.5rem .75rem;margin-bottom:.5rem;font-size:.9rem;color:#fff;background:#ffffff1f;border:1px solid rgba(255,255,255,.3);border-radius:6px;cursor:pointer}.sidebar-export-json:hover:not(:disabled){background:#fff3}.sidebar-export-json:disabled{opacity:.7;cursor:wait}.sidebar-logout{width:100%;padding:.5rem .75rem;font-size:.9rem;color:#fff;background:#ffffff1a;border:1px solid rgba(255,255,255,.25);border-radius:6px;cursor:pointer}.sidebar-logout:hover{background:#fff3}.app-main{min-height:100vh}.app-main-with-sidebar{margin-right:320px}.app-alert{position:fixed;top:1rem;left:1rem;z-index:12000;margin:0;padding:.65rem .9rem;border-radius:8px;background:#b71c1c;color:#fff;font-size:.9rem;box-shadow:0 6px 16px #0003}.pdf-export-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#fff;color:#1a1a2e}.pdf-export-overlay-inner{display:flex;flex-direction:column;align-items:center;gap:1rem}.pdf-export-spinner{width:48px;height:48px;border:4px solid #e0e0e0;border-top-color:#084b08;border-radius:50%;animation:pdf-export-spin .9s linear infinite}@keyframes pdf-export-spin{to{transform:rotate(360deg)}}.pdf-export-overlay-text{margin:0;font-size:1.1rem;font-weight:500}.pdf-export-overlay-subtext{margin:0;font-size:.95rem;color:#4b4b62;text-align:center;max-width:560px}.pdf-export-progress-wrap{width:min(560px,78vw)}.pdf-export-progress-track{width:100%;height:10px;border-radius:999px;background:#dcdfea;overflow:hidden}.pdf-export-progress-bar{height:100%;border-radius:999px;background:linear-gradient(90deg,#0a6f0a,#15a115);transition:width .25s ease}.pdf-export-progress-text{margin:.5rem 0 0;font-size:.9rem;color:#313149;text-align:center}.json-export-overlay{position:fixed;inset:0;z-index:10010;display:flex;align-items:center;justify-content:center;background:#fff;color:#1a1a2e}.json-export-overlay-inner{display:flex;flex-direction:column;align-items:center;gap:.85rem}.json-export-spinner{width:42px;height:42px;border:4px solid #e0e0e0;border-top-color:#084b08;border-radius:50%;animation:pdf-export-spin .9s linear infinite}.json-export-overlay-text{margin:0;font-size:1.05rem;font-weight:600}.json-export-overlay-subtext{margin:0;font-size:.92rem;color:#4b4b62;text-align:center;max-width:560px}.json-export-progress-text{margin:.2rem 0 0;font-size:.9rem;color:#2d2d47}@media(max-width:1024px){.app-sidebar{position:static;width:100%;height:auto;box-shadow:none}.sidebar-inner{max-height:none}.sidebar-nav{max-height:45vh}.app-main-with-sidebar{margin-right:0}}:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}body.pdf-export .report-block-toolbar{display:none!important}body.pdf-export .report-block{grid-template-columns:1fr!important}body.pdf-export .app-main{width:204mm!important;min-width:204mm!important;max-width:204mm!important;margin:0!important;padding:0!important;box-sizing:border-box}body.pdf-export .home-view{width:100%!important;max-width:100%!important;margin:0 auto!important;padding:1.5rem 1.5rem 2rem!important;box-sizing:border-box;text-align:left!important}body.pdf-export .report-title,body.pdf-export .report-block-content,body.pdf-export .block-h1,body.pdf-export .block-h2,body.pdf-export .block-h3,body.pdf-export .report-block-text,body.pdf-export .report-block-authors,body.pdf-export .report-block-sensor-list-ul{text-align:left!important}body.pdf-export .report-block-content{padding-right:0!important;min-width:0!important}body.pdf-export .report-block-content>*,body.pdf-export .report-block-gps,body.pdf-export .report-block-rms,body.pdf-export .report-block-czujnik,body.pdf-export .report-block-max,body.pdf-export .report-block-summary,body.pdf-export .report-block-sensor-list,body.pdf-export .gps-route-map-wrap,body.pdf-export .gps-route-map,body.pdf-export .gps-telemetry-chart,body.pdf-export .gps-telemetry-chart-canvas-wrap,body.pdf-export .sensor-charts-and-table,body.pdf-export .sensor-charts-and-table-charts,body.pdf-export .sensor-chart-box,body.pdf-export .sensor-chart-canvas,body.pdf-export .sensor-rms-chart,body.pdf-export .sensor-rms-chart-canvas-wrap,body.pdf-export .sensor-max-chart,body.pdf-export .sensor-max-chart-canvas-wrap,body.pdf-export .sensor-summary-tables,body.pdf-export .report-block-frequency,body.pdf-export .frequency-data-view,body.pdf-export .frequency-data-view-images,body.pdf-export .frequency-data-view-figure,body.pdf-export .frequency-data-view-img{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}body.pdf-export .report-block-gps-charts{width:100%!important;max-width:100%!important;min-width:0!important}body.pdf-export .report-block,body.pdf-export .report-block-gps,body.pdf-export .report-block-rms,body.pdf-export .report-block-czujnik,body.pdf-export .report-block-max,body.pdf-export .report-block-summary,body.pdf-export .report-block-sensor-list,body.pdf-export .sensor-charts-and-table,body.pdf-export .sensor-summary-tables,body.pdf-export .report-block-frequency{break-inside:avoid!important;page-break-inside:avoid!important}
