#root,body,html{background-attachment:fixed;background-image:url(../../static/media/background.ba13a346f4afec9b5a87.png);background-position:50%;background-repeat:no-repeat;background-size:cover;color:#fff;cursor:default;font-family:Segoe UI,Roboto,sans-serif;height:100%;margin:0;padding:0}.app-container{align-items:center;display:flex;flex-direction:column;padding:10px}.app-header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff40;border-radius:12px;box-shadow:0 0 12px #ffffff4d;margin-bottom:14px;padding:10px 24px;text-align:center}.app-header h1{color:#fff;font-size:1.5rem;margin:0;text-shadow:0 0 8px #0006}.home-container{align-items:center;box-sizing:border-box;display:flex;justify-content:center;min-height:100vh;padding:60px 0}.home-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:20px;box-shadow:0 0 25px #ffffff40;box-sizing:border-box;padding:px 30px 50px;text-align:center;width:300px}.home-logo-wrap{align-items:center;display:flex;justify-content:center;margin-bottom:-50px;width:100%}.home-logo{display:block;height:auto;transform:translateX(10px);width:450px}.home-buttons{align-items:center;display:flex;flex-direction:column;gap:18px}.home-button{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff59;border:1px solid #ffffff8c;border-radius:10px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;max-width:250px;min-width:180px;padding:14px 28px;text-align:center;transition:all .2s ease;width:70%}.home-button:hover{background:#ffffff8c;border-color:#ffffffbf;transform:scale(1.03)}.camera-section{align-items:center;display:flex;flex-direction:column;gap:10px}.video-wrapper{border-radius:10px;box-shadow:0 0 15px #ffffff4d;display:inline-block}video{border-radius:10px;display:block}.mire.horizontal,.mire.vertical{background:#fff6;position:absolute;z-index:2}.mire.horizontal{height:1px;left:0;top:50%;width:100%}.mire.vertical{height:100%;left:50%;top:0;width:1px}button{background:#ffffff40;border:1px solid #ffffff59;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;padding:9px 16px;text-shadow:0 0 6px #0006;transition:all .2s ease}button:hover{background:#fff6;border-color:#ffffff73}button:disabled{cursor:not-allowed;opacity:.45}.btn-group{display:flex;gap:10px;justify-content:center}.delete-btn{background:#b43232;font-weight:600;transition:.2s}.delete-btn:hover{background:#d95353}.photo-frame{border-radius:10px;box-shadow:0 0 20px #ffffff4d;display:inline-block;overflow:hidden;position:relative;touch-action:none}.photo-frame img{border-radius:10px;display:block}.pupil-circle{align-items:center;background:#ffffff14;border:2px solid #fff;border-radius:50%;cursor:none;display:flex;height:22px;justify-content:center;position:absolute;transition:transform .15s ease,box-shadow .15s ease;width:22px;z-index:5}.pupil-circle.active{box-shadow:0 0 8px #fff9;transform:scale(1.3)}.pupil-dot{background:#fff;border-radius:50%;height:5px;width:5px}.measure-rect{background:#ffffff0d;border:2px solid #fff;border-radius:4px;cursor:move;position:absolute;z-index:4}.measure-rect:hover{background:#ffffff1a}.resize-handle{background:#fff;border-radius:3px;cursor:se-resize;height:12px;position:absolute;width:12px;z-index:5}.loupe{background-repeat:no-repeat;border:2px solid #fff;box-shadow:0 0 12px #ffffff40;height:120px;overflow:hidden;pointer-events:none;width:120px;z-index:10}.loupe,.loupe-center-dot{border-radius:50%;position:absolute}.loupe-center-dot{background:#fff;box-shadow:0 0 6px #ffffffe6;height:6px;left:50%;top:50%;transform:translate(-50%,-50%);width:6px;z-index:20}.results-panel{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff14;border-radius:10px;box-shadow:0 0 12px #00000040;display:flex;gap:25px;margin-top:15px;padding:12px 20px}.result-block h3{font-size:1rem;margin:0 0 6px;text-decoration:underline}.result-block p{font-size:.9rem;margin:2px 0}.result-block input{border:none;border-radius:4px;margin-left:6px;padding:2px;text-align:center;width:60px}.btn-reset{background:#ffffff26;border:1px solid #ffffff40;border-radius:8px;color:#fff;font-weight:700;margin-top:15px;padding:8px 14px}.btn-reset:hover{background:#ffffff4d;border-color:#fff6}.capture-tips{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff14;border-radius:10px;box-shadow:0 0 8px #00000040;font-size:.9rem;margin-bottom:12px;max-width:720px;padding:10px 16px}.capture-tips h3{font-size:1rem;margin-bottom:6px;margin-top:0}.warning-banner{background:#ff785033;border:1px solid #ff7850cc;border-radius:8px;box-shadow:0 0 10px #ff785059;color:#ffe4d9;font-size:.9rem;margin-top:10px;max-width:720px;padding:8px 14px}.rotate-overlay{background:#0000008c;border-radius:12px;box-shadow:0 0 15px #0009;margin-top:40px;max-width:500px;padding:16px 20px;text-align:center}@media (min-width:1024px){.results-panel{font-size:1rem}.app-header h1{font-size:1.7rem}}.archive-container{margin:auto;max-width:900px;text-align:center}.archives-list{display:flex;flex-direction:column;gap:18px;margin-top:20px}.archive-thumb{border:1px solid #ffffff4d;border-radius:6px;height:75px;width:130px}.archive-info{color:#fff;flex:1 1;text-align:left}.archive-date{font-size:.85rem;opacity:.8}.archive-values p{font-size:.9rem;margin:3px 0}.archive-actions{display:flex;flex-direction:column;gap:8px}.archive-actions button{padding:6px 14px}.archive-actions .danger{background:#ff464659;border-color:#ff64648c}.archive-list{gap:15px}.archive-item{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;border:1px solid #fff3;border-radius:10px;gap:12px;margin-bottom:12px;padding:12px 15px}.archive-thumb{height:auto;width:160px}.archive-infos{flex:1 1}.archive-infos h3{font-size:1.15rem;font-weight:700;margin:0 0 6px}.archive-infos p{font-size:.9rem;margin:3px 0}.archive-delete{align-self:center;background:#ff000080;border:1px solid #f009;border-radius:8px;color:#fff;cursor:pointer;margin-left:auto;padding:8px 14px}.archive-list{display:flex;flex-direction:column;gap:12px;margin-top:20px}.archive-item{align-items:flex-start;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000a6;border:1px solid #ffffff40;border-radius:12px;color:#fff;display:flex;flex-direction:row;gap:14px;margin:15px 0;padding:12px;width:420px}.archive-photo{border:1px solid #ffffff4d;border-radius:8px;height:110px;object-fit:cover;width:110px}.archive-thumb{box-shadow:0 0 6px #0006;width:120px}.archive-info{flex-grow:1}.page-mesures{color:#fff;padding:20px}.mesure-layout{align-items:flex-start;display:flex;gap:20px}.viewer{flex:2 1}.panel-resultats{background:#0009;border-radius:12px;box-shadow:0 4px 10px #00000080;flex:1 1;padding:15px 20px}.panel-resultats h2{margin-top:0}.result-row{display:flex;justify-content:space-between;margin:6px 0}.result-note{font-size:.8rem;margin-top:10px;opacity:.7}.back-btn{border-radius:8px;margin-top:15px;padding:8px 16px}.toolbox{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.toolbox button{border:none;border-radius:6px;cursor:pointer;font-size:.8rem;padding:6px 10px}.toolbox button.active{background:#ff9800;color:#fff}.toolbox .reset-btn{background:#b33a3a;color:#fff}.image-wrapper{display:inline-block;position:relative}.mesure-image{border-radius:8px;height:auto;max-width:640px;width:100%}.vertical-guide{background:#fff;bottom:0;top:0;width:2px}.point-dot,.vertical-guide{pointer-events:none;position:absolute}.point-dot{border:2px solid #fff;border-radius:50%;height:10px;transform:translate(-50%,-50%);width:10px}.point-dot.mire{background:#00bcd4}.point-dot.pupil{background:#ffeb3b}.point-dot.base{background:#8bc34a}.mesure-container{box-sizing:border-box;min-height:100vh;padding:18px 18px 24px;position:relative}.mesure-container h1{color:#fff;font-size:34px;font-weight:700;margin:0 0 12px;text-shadow:0 2px 10px #00000059}.camera-selector{align-items:center;color:#fff;display:flex;gap:10px;margin:8px 0 14px}.camera-selector select{background:#00000059;border:1px solid #ffffff40;border-radius:8px;color:#fff;padding:6px 10px}.video-wrapper{background:#00000026;border-radius:12px;box-shadow:0 6px 24px #00000059;margin:12px auto 10px;overflow:hidden;overscroll-behavior:contain;position:relative;touch-action:none;width:min(980px,92vw)}.background{pointer-events:none}.video-feed{-webkit-user-drag:none;display:block;height:auto;max-height:70vh;object-fit:contain;touch-action:none;-webkit-user-select:none;user-select:none;width:100%}.live-guides{inset:0;pointer-events:none;position:absolute;z-index:5}.live-guide-vertical{bottom:0;left:50%;top:0;transform:translateX(-.5px);width:1px}.live-guide-horizontal,.live-guide-vertical{background:#ffffffd9;box-shadow:0 0 4px #0000008c;position:absolute}.live-guide-horizontal{height:1px;left:0;right:0;top:50%;transform:translateY(-.5px)}.point{height:14px;pointer-events:none;position:absolute;transform:translate(-50%,-50%);width:14px;z-index:10}.point:after,.point:before{background:#fffffff2;border-radius:1px;box-shadow:0 0 4px #000000a6;content:"";left:50%;position:absolute;top:50%}.point:before{height:14px;width:2px}.point:after,.point:before{transform:translate(-50%,-50%)}.point:after{height:2px;width:14px}.magnifier{border:2px solid #ffffffd9;border-radius:50%;box-shadow:0 8px 24px #00000059;overflow:hidden;pointer-events:none;position:absolute;z-index:30}.controls{align-items:center;background:#00000040;border-radius:12px;box-sizing:border-box;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:12px auto 0;padding:8px 10px;width:min(980px,92vw)}.controls button{-webkit-appearance:none;appearance:none;background:#00000073;border:1px solid #ffffff38;border-radius:10px;color:#fff;cursor:pointer;font-size:14px;padding:8px 12px}.controls button:hover{background:#0009}.controls button:disabled{cursor:not-allowed;opacity:.45}.controls button.active{background:#ffffff1f;border-color:#ffffff8c}.results{background:#00000073;border-radius:12px;color:#fff;font-size:15px;line-height:1.6;margin:20px auto;max-width:450px;padding:14px 18px;text-align:center}.results h2{font-size:18px;font-weight:600;margin:0 0 10px}.results p{margin:4px 0}.results h2{margin:0 0 8px}.video-wrapper{display:block!important;float:none!important;left:auto!important;margin-left:auto!important;margin-right:auto!important;position:relative!important;right:auto!important;transform:none!important}.lmark{cursor:grab;height:140px;pointer-events:auto;position:absolute;touch-action:none;transform:translate(-50%,-50%);width:140px;z-index:20}.lmark:active{cursor:grabbing}.lmark:before{height:160px;transform:translate(-50%,-100%);width:1px}.lmark:after,.lmark:before{background:#fffffff2;box-shadow:0 0 4px #000c;content:"";left:50%;position:absolute;top:50%}.lmark:after{height:1px;width:160px}.lmark.od:after{transform:translate(-100%,-50%)}.lmark.og:after{transform:translateY(-50%)}.popup-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:999}.popup-box{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff26;border-radius:12px;box-shadow:0 0 25px #ffffff40;color:#fff;padding:22px 28px;text-align:center;width:300px}.popup-box h2{font-size:1.25rem;margin-bottom:14px;margin-top:0}.popup-input{border:none;border-radius:6px;font-size:1rem;margin-bottom:18px;padding:8px;text-align:center;width:100%}.popup-buttons{display:flex;gap:10px;justify-content:space-between}.popup-cancel{background:#ff50504d;border:1px solid #ff505080;border-radius:8px}.popup-cancel,.popup-validate{color:#fff;cursor:pointer;flex:1 1;padding:8px}.popup-validate{background:#50ff784d;border:1px solid #50ff7880;border-radius:8px}.popup-cancel:hover{background:#ff505080}.popup-validate:hover{background:#50ff7880}.archives-container{color:#fff;min-height:100vh;padding:20px;text-align:center;width:100%}.archives-container h1{font-size:2.4rem;font-weight:700;margin-bottom:20px}.search-bar{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;border:1px solid #555;border-radius:10px;color:#fff;margin-bottom:25px;max-width:350px;padding:12px;width:90%}.archive-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));justify-items:center}.archive-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0000008c;border-radius:12px;box-shadow:0 4px 14px #0006;padding:15px;text-align:center;width:280px}.archive-header{align-items:center;display:flex;gap:12px;margin-bottom:15px}.archive-thumb{border-radius:8px;height:60px;object-fit:cover;width:60px}.archive-name{font-size:1.2rem;font-weight:700}.archive-info p{font-size:.95rem;margin:2px 0}.archive-date{font-size:.8rem;margin-top:8px;opacity:.7}.delete-btn{background:#c80000cc;border:none;border-radius:8px;color:#fff;cursor:pointer;margin-top:10px;padding:8px 14px}.delete-btn:hover{background:#f00000}.back-btn{background:#0078c8d9;border-radius:10px;font-size:1.1rem;margin-top:35px;padding:10px 20px}.back-btn,.open-btn{border:none;color:#fff;cursor:pointer}.open-btn{background:#0096ffd9;border-radius:8px;margin-top:10px;padding:8px 14px;transition:background .2s;width:130px}.open-btn:hover{background:#0af}.delete-btn,.open-btn{margin-bottom:6px}.app-footer{align-items:center;bottom:12px;color:#ffffffd9;display:flex;font-size:.85rem;font-weight:500;gap:8px;left:12px;pointer-events:none;position:fixed;text-shadow:0 0 4px #0009;-webkit-user-select:none;user-select:none;z-index:9999}.footer-logo{filter:drop-shadow(0 0 4px rgba(0,0,0,.5));height:26px;object-fit:contain;opacity:.9;width:26px}.lockscreen{align-items:center;background:#0b0f1a;display:flex;justify-content:center;min-height:100vh;padding:24px}.lockscreen-card{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:16px;color:#fff;max-width:460px;padding:22px;width:100%}.lockscreen-card h1{font-size:22px;margin:0 0 8px}.lockscreen-card p{margin:0 0 18px;opacity:.85}.lockscreen-card form{display:flex;flex-direction:column;gap:10px}.lockscreen-card input{background:#00000040;border:1px solid #ffffff29;border-radius:12px;color:#fff;font-size:16px;outline:none;padding:12px 14px}.lockscreen-card button{border:none;border-radius:12px;cursor:pointer;font-size:16px;padding:12px 14px}.lockscreen-card button:disabled{cursor:not-allowed;opacity:.6}.lockscreen-error{background:#ff00001f;border:1px solid #ff000038;border-radius:12px;padding:10px 12px}.lockscreen-hint{font-size:13px;margin-top:14px;opacity:.75}
/*# sourceMappingURL=main.962b5f3a.css.map*/