:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff00}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff00}button{background-color:#f9f9f9}}:root{--bg-root: #161a20;--bg-panel: #202732;--bg-bar: #10151c;--fg-weak: #9ab0c7;--fg: #c4ccd5;--fg-strong: #dbe6f3;--accent-1: #304c68b0;--accent-2: #4577a3;--danger: #e53935;--success: #159c63;--shadow-strong: rgba(0,0,0,.44);scrollbar-color:rgba(69,119,163,.7) #141a21;scrollbar-width:thin}html,body,#root,.app{font-family:Segoe UI,Arial,sans-serif;background:var(--bg-root)!important;color:var(--fg);min-height:100vh;width:100%;font-size:15px!important;margin:0;padding:0}.app{display:flex;flex-direction:column;min-height:100vh}.title{font-weight:700;font-size:1.1rem!important;color:var(--fg-strong)!important;letter-spacing:.03em}.top-bar{background:var(--bg-bar)!important;color:var(--fg-weak)!important;font-weight:600;font-size:1.16rem;letter-spacing:.04em;min-height:50px;max-height:50px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;box-shadow:0 2px 14px var(--shadow-strong);padding:0 12px;position:sticky;top:0;z-index:11}.top-bar-left{grid-column:1;display:flex;align-items:center;justify-content:flex-start;margin-left:30px}.top-bar-center{grid-column:2;display:flex;align-items:center;justify-content:center}.top-bar-right{grid-column:3;display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-right:3px}.top-bar-right .project-selector,.top-bar-right .profile-menu-wrapper,.top-bar-right .logout-btn{display:flex;align-items:center}.topbar-project-select{padding:3px 0;font-size:1rem!important;border-radius:4px;background:#1a222c;color:#e6edf5;border:1px solid rgba(69,119,163,.4);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-shadow:0 1px 6px #00000047;min-width:-moz-fit-content;min-width:fit-content;max-height:-moz-fit-content;max-height:fit-content;transition:box-shadow .2s ease,border-color .2s ease,background .2s ease}.topbar-project-select:focus{outline:none;border-color:#4577a3bf;box-shadow:0 0 0 2px #4577a359}.topbar-project-select:disabled{opacity:.6;cursor:not-allowed}.project-selector-upper{display:flex;align-items:center}.topbar-project-select option{background:#1a222c;color:#dbe6f3;font-size:.82rem}.topbar-project-select::-webkit-scrollbar{width:8px}.topbar-project-select::-webkit-scrollbar-track{background:#141a21}.topbar-project-select::-webkit-scrollbar-thumb{background:#4577a3b3;border-radius:8px}.topbar-project-select::-webkit-scrollbar-thumb:hover{background:#4577a3d9}.profile-btn,.logout-btn{padding:4px 12px;font-size:.82rem;border-radius:4px;background:#1a222c;color:#e6edf5;border:1px solid rgba(69,119,163,.4);cursor:pointer;box-shadow:0 1px 6px #00000047;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.profile-btn:hover,.logout-btn:hover{background:#233042;border-color:#4577a399;box-shadow:0 2px 8px #00000052}.bottom-bar{background:var(--bg-bar)!important;color:var(--fg-weak)!important;font-weight:400;font-size:1rem;letter-spacing:.04em;min-height:50px;max-height:50px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 2px 14px #0007;padding:0 32px;position:sticky;bottom:0;z-index:10}.left-panel-bar,.center-panel-bar,.right-panel-bar{min-height:46px!important;height:46px!important;background:var(--bg-bar)!important;color:var(--fg-weak)!important;border-bottom:1.5px solid #232d3b!important;font-weight:700;font-size:1.07rem!important;letter-spacing:.04em;display:flex!important;align-items:center!important;justify-content:space-between;box-shadow:0 2px 14px #0007;padding:0 18px!important;position:sticky;top:0;z-index:9;width:100%;border-radius:20px 20px 0 0;box-sizing:border-box!important}.content{display:flex;gap:50px;width:100%;align-items:flex-start;justify-content:flex-start;background:var(--bg-root)!important;padding:20px 10px 0;box-sizing:border-box;min-height:92vh;flex:1 1 auto;border-radius:20px 20px 0 0;max-height:calc(100vh - 100px)}.left-panel,.center-panel,.right-panel{background:var(--bg-panel)!important;box-shadow:0 6px 36px #131d2c44,0 1.5px 3px #11192033;padding:0!important;min-height:calc(100vh - 100px);max-height:calc(100vh - 100px);height:calc(100vh - 100px);display:flex;flex-direction:column;position:relative;border-radius:20px 20px 0 0!important;margin:0!important;scrollbar-width:thin;scrollbar-color:#31405a #1c2430}.left-panel{flex:0 0 auto;min-width:0;position:relative;z-index:3;transition:width .2s ease}.center-panel{flex:1 1 auto;min-width:0;position:relative;z-index:2}.right-panel{flex:0 0 auto;min-width:200px;position:relative;z-index:1}.left-panel-inner{padding:0;overflow-y:auto;flex:1 1 auto}.center-panel-content{flex:1 1 auto;display:flex;flex-direction:column;position:relative;overflow:visible!important;align-items:stretch;justify-content:flex-start}.left-panel-resizer{position:absolute;top:0;right:-6px;width:12px;height:100%;cursor:col-resize;z-index:20;background:linear-gradient(to right,transparent 4px,#2a3442 6px,transparent 8px);opacity:.4}.left-panel-resizer:hover{opacity:.8}@media (max-width: 1200px){.content{gap:12px}.center-panel{min-width:280px}}@media (max-width: 900px){.content{flex-direction:column;gap:14px;padding:14px 0}.left-panel,.center-panel,.right-panel{max-width:100vw;border-radius:14px!important;min-width:0}}@media (max-width: 600px){.left-panel,.center-panel,.right-panel,.top-bar,.bottom-bar,.left-panel-bar,.center-panel-bar,.right-panel-bar,.center-panel-image-container{min-width:0!important}}.primary-btn,.save-btn,button{background:#2c3643!important;color:var(--fg)!important;border-radius:6px!important;font-weight:500;box-shadow:none;border:none;transition:background .14s;padding:7px 13px!important;font-size:.98rem!important}.primary-btn:hover,.save-btn:hover,button:hover{background:#375170!important;color:#fff!important}.primary-btn:disabled,.save-btn:disabled{background:#232d3b!important;color:#788293!important;cursor:not-allowed}.tree-flag-btn{background:linear-gradient(90deg,#e53935 60%,#b71c1c)!important;color:#fff!important;border:2px solid #249179ff!important;font-weight:700;box-shadow:0 2px 8px #e5393555;transition:background .2s,color .2s,border .2s}table{border-collapse:separate;border-spacing:0;background:#222a36!important;width:100%;min-width:-moz-max-content;min-width:max-content;font-size:1rem;color:var(--fg);box-shadow:none}th,td{border:none;padding:.3rem .7rem!important;text-align:left;font-size:.97rem!important;background:transparent!important;color:var(--fg)}th{background:#232d3b!important;color:#96afc9!important;font-weight:600;border-bottom:2.5px solid #2d3a48!important;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}td{color:var(--fg-strong)!important}table tbody tr:nth-child(2n) td{background:#232d3b!important}table tbody tr:nth-child(odd) td{background:#202732!important}.table-row:hover td,.table-row:hover th{background:#2f3e52!important;color:#fff!important}.selected-row,.selected-row td,.selected-row th{background:#4577a3!important;color:#fff!important;font-weight:700!important}.tree-table-th{position:relative;padding-right:40px}.tree-table-sort{cursor:pointer;color:#96afc9}.tree-table-dropdown-arrow{cursor:pointer;margin-left:5px;color:#6a8198}.tree-table-dropdown-arrow.active-filter{color:#e05a5a!important;filter:drop-shadow(0 0 2px #e05a5a)}.tree-table-container{box-shadow:0 2px 16px #111e3640;overflow:visible;width:100%;padding-bottom:18px;min-height:0;position:relative;margin:auto;background:var(--bg-panel)}.tree-table-scroll-wrapper{width:100%!important;max-width:100%!important;max-height:calc(100vh - 185px)!important;overflow-x:auto!important;overflow-y:auto!important;position:relative!important}.tree-table-scroll-wrapper table{background:#222a36!important;color:var(--fg);font-size:1rem;box-shadow:none;width:max(100%,-moz-max-content);width:max(100%,max-content);table-layout:auto;border-collapse:separate;border-spacing:0}.tree-table-scroll-wrapper th{position:sticky;top:0;z-index:10;background:#232d3b!important;color:#96afc9!important;font-weight:600;border-bottom:2.5px solid #2d3a48!important;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tree-table-scroll-wrapper td{background:#202732!important;color:var(--fg-strong)!important}.tree-table-scroll-wrapper tbody tr:nth-child(2n) td{background:#232d3b!important}.tree-table-scroll-wrapper tbody tr:nth-child(odd) td{background:#202732!important}.tree-table-scroll-wrapper .table-row:hover td,.tree-table-scroll-wrapper .table-row:hover th{background:#2f3e52!important;color:#fff!important}.tree-table-scroll-wrapper .selected-row td,.tree-table-scroll-wrapper .selected-row th{background:#007af3!important}.tree-table-col-btn{position:absolute;right:6px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#2c3643!important;color:var(--fg)!important;border:none;border-radius:6px;font-size:18px;box-shadow:0 1px 4px #0000001a;z-index:20;cursor:pointer;margin:0;transition:background .14s}.tree-table-col-btn:hover{background:#375170!important;color:#fff!important}.tree-table-col-btn-icon{font-weight:700;font-size:18px;line-height:1}.tree-table-col-btn-active{padding:8px 16px;border-radius:20px;border:2px solid var(--accent-2);background:var(--accent-2)!important;color:#fff!important;font-weight:700;font-size:15px;margin-bottom:4px;cursor:pointer;box-shadow:0 2px 8px #4577a355}.tree-table-col-btn-inactive{padding:8px 16px;border-radius:20px;border:2px solid transparent;background:#2a2a2a!important;color:#cbd4d2!important;font-weight:400;font-size:15px;margin-bottom:4px;cursor:pointer}.tree-table-col-selector{position:fixed;background:#181b22!important;color:#e3eefb!important;border:1px solid rgba(69,119,163,.6)!important;border-radius:12px!important;box-shadow:0 24px 48px #0000008c;padding:16px 20px;min-width:220px;max-width:320px;max-height:calc(100vh - 140px);overflow-y:auto;z-index:2147483646;display:flex;flex-direction:column;gap:12px}.tree-table-col-selector-title{color:#a4b8ce!important;font-weight:600;margin-bottom:8px}.tree-table-col-selector-list{display:flex;flex-wrap:wrap;gap:8px}.tree-table-col-selector-close{margin-top:12px;background:#2c3643!important;color:var(--fg)!important;border:none;border-radius:8px;padding:7px 13px!important;font-weight:600;cursor:pointer;align-self:flex-end}.tree-table-dropdown-datalist{background:#181b22!important;color:#e3eefb!important;border:1px solid rgba(69,119,163,.6)!important;border-radius:12px!important;padding:16px 20px;max-width:min(420px,60vw);position:fixed;z-index:2147483647;box-shadow:0 18px 40px #00000073,0 0 0 1px #4577a352;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.tree-table-slider-col{display:flex;flex-direction:column;gap:10px}.tree-table-slider-input,.tree-table-filter-input,.dropdown-input{background:#222a36!important;color:var(--fg)!important;border:1px solid #253043!important;border-radius:6px;font-size:1em;padding:7px 10px!important;width:100%}.tree-table-slider-range-row{display:flex;gap:0}.tree-table-slider-range{width:100%;accent-color:#6c86a7}.tree-table-filter-row{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-bottom:10px}.tree-table-filter-options{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px;max-height:400px;overflow-y:auto;background:#232d3b;border-radius:10px;padding:8px;z-index:99999}.tree-table-filter-option{background:#262f3d;color:#b5c8de;border-radius:14px;font-size:.99em;padding:4px 12px;margin:2px;cursor:pointer;transition:background .12s,color .12s;border:none}.tree-table-filter-option.selected{background:#426193;color:#fff;border:1.5px solid #5c7ca4}.tree-table-filter-option.disabled{background:#2b333d;color:#7e8da1;opacity:.48;cursor:not-allowed}.tree-table-filter-apply,.tree-table-slider-apply,.tree-table-slider-clear{padding:7px 13px!important;border-radius:6px!important;background:#2c3643!important;color:var(--fg)!important;border:none!important;min-width:90px!important;font-weight:700!important;font-size:.98rem!important;box-shadow:none!important;outline:none!important;cursor:pointer!important;transition:background .14s!important;align-self:flex-end}.tree-table-slider-clear{background:#384251!important;color:#9babbb!important}.tree-validation-panel{background:#23272f;border-radius:16px;min-width:30vh;max-width:30vh;margin:0 auto;padding:0 0 12px;box-shadow:0 4px 24px #0004;display:flex;flex-direction:column;gap:20px;min-height:90vh;position:relative}.panel-section{background:#232d3b!important;border-radius:14px;box-shadow:0 2px 10px #131e2c10;margin:0 0 18px;padding:10px 12px!important;display:flex;flex-direction:column;gap:14px}.section-title,.panel-section .section-title{color:#6ea8d8!important;font-weight:700;font-size:.97rem!important}.panel-section.ground-truth .section-title{color:#76b3e2!important}.panel-section.prediction .section-title{color:#83d8c9!important}.panel-section.manual .section-title{color:var(--fg)!important}.panel-section.growth .section-title{color:var(--success)!important}.panel-section.prediction{border-left:5px solid #59adc2!important}.panel-section.ground-truth{border-left:5px solid var(--accent-2)!important}.panel-section.manual{border-left:5px solid #454e5c!important}.panel-section.growth{border-left:5px solid var(--success)!important}.panel-section.ground-truth .section-content div>div,.panel-section.prediction .section-content div>div{display:grid;grid-template-columns:60px 1fr;-moz-column-gap:20px;column-gap:20px;-moz-column-width:100px;column-width:100px}.section-content{display:flex;align-items:center;gap:10px;justify-content:space-between}.validated-row td,.validated-row th{color:#24916d!important;font-weight:600!important}.flagged-row td,.flagged-row th{color:#cf514f!important;font-weight:600!important}.panel-section.manual .section-content{justify-content:flex-start;align-items:stretch;width:100%}.panel-section.growth .growth-icons{display:flex;align-items:center;justify-content:center;gap:16px;padding:6px 0 2px}.panel-section.growth .growth-icon{display:block;-o-object-fit:contain;object-fit:contain}.panel-section.growth .growth-icon-btn{background:none!important;border:none!important;padding:6px 12px!important;margin:0;width:auto;height:auto;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;cursor:pointer;transition:background .16s ease,box-shadow .16s ease,transform .12s ease;box-shadow:none!important;flex-direction:column;gap:6px}.panel-section.growth .growth-icon-btn:disabled{cursor:not-allowed;opacity:.45}.panel-section.growth .growth-icon-btn:not(:disabled):hover,.panel-section.growth .growth-icon-btn:not(:disabled):focus-visible{background:#4577a32e;box-shadow:0 0 0 1px #6ea8d859}.panel-section.growth .growth-icon-btn:focus-visible{outline:2px solid rgba(110,168,216,.45);outline-offset:2px}.panel-section.growth .growth-icon-btn--active{background:#159c6338!important;box-shadow:0 0 0 1px #159c6380!important}.panel-section.growth .growth-icon-btn--active .growth-icon{filter:drop-shadow(0 0 6px rgba(21,156,99,.4))}.panel-section.growth .growth-label{font-size:.8rem;font-weight:600;letter-spacing:.02em;color:#b6c9dd;text-transform:uppercase}.panel-section.growth .growth-note{margin-top:10px;font-size:.85rem;color:#9db9d0;text-align:center}.panel-section.manual .manual-toggle{background:none!important;border:none!important;padding:0!important;margin:0!important;width:100%;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;appearance:none;-webkit-appearance:none;-moz-appearance:none;-webkit-tap-highlight-color:transparent;box-shadow:none!important}.panel-section.manual .manual-toggle:hover,.panel-section.manual .manual-toggle:focus,.panel-section.manual .manual-toggle:active{background:none!important;border:none!important;box-shadow:none!important;outline:none!important}.panel-section.manual .manual-toggle:focus-visible{outline:none!important;box-shadow:none!important}.panel-section.manual .manual-title{display:inline-flex;align-items:center;gap:8px}.panel-section.manual .manual-toggle-icon{font-size:.9rem;color:#9cafc6;transition:transform .2s ease}.panel-section.manual.manual--open .manual-toggle-icon{transform:rotate(180deg)}.panel-section.manual .manual-collapse{display:flex;flex-direction:column;gap:14px}.panel-section.manual .manual-collapse[hidden]{display:none}.panel-section.manual .genus-row,.panel-section.manual .species-row{display:grid;grid-template-columns:50px 1fr;align-items:center;width:90%;margin-bottom:3px}.panel-section.manual .genus-row>span:first-child,.panel-section.manual .species-row>span:first-child{white-space:nowrap;font-weight:600;color:#cbd4d2}.panel-section.manual .dropdown-input{flex:1 1 auto;min-width:0;background:none;border:0;box-shadow:none;width:100%;color:var(--fg);margin-left:10px;display:block}.accepted-badge{color:#32aa42;font-weight:700;margin-left:8px;font-size:.9rem}.center-panel-image-container{background:var(--bg-panel)!important;box-shadow:0 2px 8px #131e2c16;min-height:60vh;height:70vh;width:100%!important;max-width:none!important;position:relative;padding:0!important;flex:1 1 auto;display:grid;place-items:center;overflow:hidden}.image-viewer-container,.image-viewer-main{width:100%!important;height:100%!important;max-width:100%;max-height:100%;min-height:30vh;position:relative!important;overflow:hidden!important;display:block!important;background:var(--bg-panel, #0f141d)}.image-viewer-main{position:absolute!important;inset:0;outline:none;opacity:0;transition:opacity .16s ease}.image-viewer-main-ready{opacity:1}.image-viewer-main.zoomed{cursor:grab}.image-viewer-img,.image-viewer-mask{position:absolute!important;left:0!important;top:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;-o-object-fit:contain!important;object-fit:contain!important;transform-origin:50% 50%!important;-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important;margin:0!important}.image-viewer-mask{image-rendering:pixelated;mix-blend-mode:multiply;pointer-events:none}.image-viewer-overlay{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:opacity .2s}.image-viewer-loader{border:6px solid #444;border-top:6px solid #1b5fb99d;border-radius:50%;width:48px;height:48px;animation:spin 1s linear infinite}.image-viewer-container:focus,.image-viewer-main:focus,.image-viewer-img:focus,.image-viewer-container:focus-visible,.image-viewer-main:focus-visible,.image-viewer-img:focus-visible{outline:none!important;box-shadow:none!important}.image-index{display:inline-block;text-align:center;min-width:10ch;margin:0 10px;font-size:1rem;opacity:.9}.center-panel-mask-utils{font-size:1rem;font-weight:600;gap:8px}.nav-footer .navigation-btn{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 12px}.nav-footer .navigation-btn:disabled{background:#eee;cursor:not-allowed}.flag-text.flagged{color:#b52222}.login-screen-bg{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#23272f}.login-screen-container{background:#2d323c;padding:32px;border-radius:16px;box-shadow:0 2px 24px #0006;min-width:40vh;max-width:40vh;color:#f3f3f3}.login-screen-title{margin-bottom:24px;color:#fff;font-weight:700;letter-spacing:1px}.login-screen-input{width:100%;max-width:100%;margin-bottom:12px;padding:10px;background:#23272f;color:#f3f3f3;border:1px solid #444a57;border-radius:6px;font-size:16px;box-sizing:border-box}.login-screen-error{color:#b52222;margin-bottom:8px}.login-screen-btn{width:100%;padding:10px;background:linear-gradient(90deg,var(--success) 60%,#1e7e4a 100%);color:#fff;border:none;border-radius:6px;font-weight:700;margin-bottom:8px;font-size:16px;letter-spacing:1px;box-shadow:0 1px 4px #0003;transition:background .18s,box-shadow .18s;cursor:pointer}.login-screen-btn-alt{width:100%;padding:10px;background:#444a57;color:#fff;border:none;border-radius:6px;font-weight:700;margin-bottom:8px;font-size:16px;letter-spacing:1px;box-shadow:0 1px 4px #0002;transition:background .18s,box-shadow .18s;cursor:pointer}.login-screen-btn-forgot{width:100%;padding:10px;background:#23272f;color:#b0b6c3;border:1px solid #444a57;border-radius:6px;font-weight:700;font-size:16px;letter-spacing:1px;box-shadow:0 1px 4px #0001;margin-bottom:0;cursor:pointer;transition:background .18s,color .18s,box-shadow .18s}.modal-overlay{position:fixed;inset:0;background:#000a;display:flex;align-items:center;justify-content:center;z-index:1000}.login-screen-modal{background:#2d323c;padding:32px;border-radius:16px;min-width:40vh;max-width:40vh;position:relative;color:#f3f3f3;box-shadow:0 2px 24px #0006}.login-screen-modal-close{position:absolute;top:12px;right:12px;background:none;border:none;font-size:28px;color:#b0b6c3;cursor:pointer;font-weight:700}.login-screen-success-modal{color:#4be18a;margin-bottom:8px}.login-screen-error-modal{color:#ff5a5a;margin-bottom:8px}.forgot-bg{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh}.forgot-title{color:#fff;margin-bottom:2rem}.forgot-form{display:flex;flex-direction:column;gap:16px;min-width:340px}.forgot-input{padding:8px;font-size:16px;border-radius:6px;border:1px solid #ccc}.forgot-btn{padding:10px;font-size:16px;background:#3498db;color:#fff;border:none;border-radius:6px;cursor:pointer}.forgot-btn.loading{cursor:not-allowed}.forgot-message{margin-top:24px}.reset-password-bg,.login-bg,.landing-bg{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:#28383e}.login-title{color:#fff;margin-bottom:2rem}.login-btn,.landing-select{padding:10px 30px;font-size:1.2rem;border-radius:7px;background:#232d3b;color:#fff;border:none;cursor:pointer}.landing-select option{background:#232d3b;color:#dbe6f3;font-size:1.08rem}.landing-img{width:500px;margin-bottom:2rem}.reset-password-container{background:#2d323c;padding:32px;border-radius:12px;box-shadow:0 2px 16px #0001;min-width:340px;display:flex;flex-direction:column;align-items:center}.reset-password-title{color:#28383e;margin-bottom:24px}.reset-password-form{display:flex;flex-direction:column;gap:16px;min-width:340px}.reset-password-input{padding:10px;font-size:16px;border-radius:7px;border:1px solid #ccc}.reset-password-btn{padding:12px;font-size:16px;background:var(--success);color:#fff;border:none;border-radius:7px;cursor:pointer;font-weight:600}.reset-password-btn.loading{cursor:not-allowed}.reset-password-back-btn{margin-top:18px;padding:10px;font-size:16px;background:#28383e;color:#fff;border:none;border-radius:7px;cursor:pointer;font-weight:600;width:100%}.reset-password-message{margin-top:24px}.reset-password-message.success{color:var(--success)}.reset-password-message.error{color:#b52222}.verify-email-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh}.verify-email-message.error{color:#ff5a5a}.verify-email-message.success{color:#4be18a}.verify-email-message.info{color:#b0b6c3}.notification-toast{position:absolute;left:0;right:0;bottom:40px;margin:0 auto;z-index:999;padding:10px 24px;border-radius:8px;font-size:1.08rem;font-weight:600;width:-moz-fit-content;width:fit-content;background:var(--accent-1)!important;color:#e3eefb!important;box-shadow:0 2px 16px #304c6870;animation:fadeOut 2.2s forwards}.notification-toast.error{background:#6c3749!important;color:#fff!important;box-shadow:0 2px 16px #6c374977}@keyframes fadeOut{0%{opacity:1}80%{opacity:1}to{opacity:0}}.project-select,select.dropdown-input{padding:7px 10px!important;border:1.5px solid #444a57;border-radius:8px;font-size:.97rem!important;background-color:#23272f;color:#dbe6f3;width:100%;margin-bottom:18px;box-shadow:0 4px 18px #0005;transition:border-color .14s,background .14s;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none}.project-select:focus,.dropdown-input:focus,select.dropdown-input:focus{outline:2px solid var(--accent-2)!important;border-color:var(--accent-2);background-color:#23272f}.project-select option{background:#23272f;color:#dbe6f3;font-size:1.08rem}.dropdown-datalist{position:absolute;top:105%;left:0;right:0;width:100%;background-color:#23272f;border:1.5px solid #444a57;border-radius:10px;max-height:220px;overflow-y:auto;z-index:50;padding:0;margin:0;box-shadow:0 4px 15px #0005}.dropdown-datalist-item{background:#23272f;color:#d1d1d1;cursor:pointer;padding:5px 10px;font-size:1rem}.dropdown-datalist-item:hover,.dropdown-datalist-item-selected,.dropdown-datalist-item-highlighted{background:#353a44;color:#fff;font-weight:600}.dropdown-container{position:relative;display:flex;width:100%;align-items:center;gap:8px}:root{--field-bg: #1f2630;--field-text: #e5e7eb;--field-border: #314455}input:-webkit-autofill,textarea:-webkit-autofill,select:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--field-bg) inset!important;-webkit-text-fill-color:var(--field-text)!important;caret-color:var(--field-text);border:1px solid var(--field-border);border-radius:10px}input:-moz-autofill,textarea:-moz-autofill,select:-moz-autofill{box-shadow:0 0 0 1000px var(--field-bg) inset!important;-moz-text-fill-color:var(--field-text)!important;border:1px solid var(--field-border);border-radius:10px}::-webkit-scrollbar{width:10px;background:#1c2430}::-webkit-scrollbar-thumb{background:#31405a;border-radius:7px}::-webkit-scrollbar-thumb:hover{background:#39577a}::-webkit-scrollbar-corner{background:#1c2430}.loading-screen{display:flex;justify-content:center;align-items:center;height:100vh}.loading-spinner{width:60px;height:60px;border:8px solid #eee;border-top:8px solid var(--accent-1);border-radius:50%;animation:spin 1s linear infinite}.profile-menu-wrapper{position:relative;display:inline-block}.profile-dropdown{position:absolute;right:0;top:40px;background:#181b22;border:1px solid var(--accent-1);border-radius:6px;box-shadow:0 2px 8px #0001;padding:12px 16px;z-index:1000;min-width:200px;font-size:.95rem;color:#ced8e2}.profile-dropdown-section-title{font-weight:500;margin-bottom:6px;font-size:1rem;color:#ced8e2}.profile-dropdown-section-title--spaced{margin-top:8px}.profile-range-controls{margin-bottom:8px;display:flex;gap:8px}.profile-filter-row{margin-bottom:8px;display:flex;gap:8px;align-items:center}.profile-divider{border-top:1px solid rgba(117,162,196,.3);margin:12px 0}.profile-filter-label{font-size:.95rem;color:#9ab0c7;min-width:72px}.profile-select{flex:1;font-size:.95rem;padding:4px 8px;border-radius:6px;border:1px solid #2f3e52;background:#202732;color:var(--fg);-webkit-appearance:none;-moz-appearance:none;appearance:none}.profile-select:focus{outline:none;border-color:var(--accent-2);box-shadow:0 0 0 1px #4577a373}.profile-date-label{font-size:.95rem;display:flex;flex-direction:column;gap:4px}.profile-date-input{font-size:.95rem;padding:2px 4px;border-radius:4px;border:1px solid var(--accent-1);background:#0f141b;color:var(--fg)}.profile-feedback{font-size:.95rem}.profile-feedback--error{color:#b91c1c}.profile-feedback--empty{font-size:.95rem}.profile-stats-block{margin-bottom:10px}.profile-stat-label{color:#ced8e2;font-weight:500}.profile-stat-label--muted{font-weight:400}.profile-dropdown-close{margin-top:14px;width:100%;font-size:.95rem;padding:4px 0;border-radius:4px;background:var(--accent-1);color:#fff;border:none;cursor:pointer;transition:background .2s ease}.profile-dropdown-close:hover{background:var(--accent-2)}.user-warning{color:#ff4d4d;font-weight:700;margin:16px}.filters{display:flex;gap:12px;align-items:center;margin-left:100px}.checkbox-compact{position:relative;top:1px;transform:scale(.8);transform-origin:left center}.landing-spinner{width:40px;height:40px;border:6px solid #eee;border-top:6px solid var(--accent-1);border-radius:50%;animation:spin 1s linear infinite}.verify-email-countdown{font-size:.95em;color:#888;margin-top:8px}.dropdown-datalist-item-empty{cursor:not-allowed;color:#888}.street-view-modal{position:fixed;inset:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.street-view-card{background:#fff;border-radius:12px;box-shadow:0 10px 30px #00000040;width:min(100%,980px);height:min(85vh,720px);display:flex;flex-direction:column;overflow:hidden}.street-view-header{padding:12px 16px;border-bottom:1px solid #eee;display:flex;align-items:center;justify-content:space-between;gap:8px}.street-view-title{font-weight:600}.street-view-actions{display:flex;gap:8px}.street-view-link{display:inline-flex;align-items:center;gap:6px;background:#f6f6f6;border:1px solid #ddd;padding:6px 10px;border-radius:8px;text-decoration:none;color:#333;font-size:12px}.street-view-close{background:#eee;border:1px solid #ccc;padding:6px 10px;border-radius:8px;cursor:pointer}.street-view-body{flex:1;position:relative;display:flex;min-height:200px}.street-view-pano{flex:1;min-height:320px;background:#e5e5e5}.street-view-message{margin:auto;font-size:14px;text-align:center}.street-view-message--error{color:#c0392b}.street-view-fallback{text-align:center;color:#c0392b;padding:24px}.center-panel-navigation{display:flex;align-items:center;gap:8px}.navigation-btn--spaced{margin-left:8px}.mask-toggle-label{font-weight:600;padding-right:15px;padding-left:5px}.left-panel-count{font-weight:400;font-size:1rem;margin-left:10px;color:#9ab0c7}.tree-table-col-btn--spaced{margin-left:8px}.tree-table-filter-actions{display:flex;gap:8px;justify-content:flex-end}.tree-table-col-resizer{cursor:col-resize;padding:0 4px;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:absolute;right:0;top:0;height:100%;z-index:10}.taxonomy-link{color:#74b398;text-decoration:none}.taxonomy-link:hover{text-decoration:underline}.right-panel-actions{display:flex;flex-direction:column;gap:8px;width:100%}.right-panel-action-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;padding:0 8px;box-sizing:border-box}.right-panel-action-row .navigation-btn{width:100%;text-align:center;min-width:0;max-width:100%}.undo-btn{background:#eee;transition:background .2s ease}.undo-btn--active{background:#f5c542}.left-panel--dragging{transition:none!important}.panel-section.manual .action-row{display:flex;justify-content:center;margin-top:12px}.manual-save-btn{width:100%;display:block;margin:0 auto}.table-row.selected-row,.table-row.selected-row td,.table-row.selected-row th,.tree-table-scroll-wrapper .table-row.selected-row,.tree-table-scroll-wrapper .table-row.selected-row td,.tree-table-scroll-wrapper .table-row.selected-row th{background:var(--accent-1)!important;font-weight:600;transition:background .2s ease}.table-row.selected-row:hover,.table-row.selected-row:hover td,.table-row.selected-row:hover th,.tree-table-scroll-wrapper .table-row.selected-row:hover,.tree-table-scroll-wrapper .table-row.selected-row:hover td,.tree-table-scroll-wrapper .table-row.selected-row:hover th{background:var(--accent-2)!important}.pointcloud-inline-controls{position:absolute!important;right:14px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;background:#0f141cd6;border:1px solid rgba(88,138,184,.45);border-radius:18px;padding:12px 10px;box-shadow:0 4px 18px #00000059;z-index:5;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pointcloud-inline-btn{border:none;background:transparent;color:#7fe08a;font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;transition:transform .15s ease,filter .15s ease}.pointcloud-inline-btn:hover{transform:scale(1.05);filter:drop-shadow(0 0 4px rgba(110,213,128,.7))}.pointcloud-inline-btn--off{color:#456054;filter:grayscale(.5) opacity(.65)}.pointcloud-inline-btn--flagged-active{color:#fff;background:linear-gradient(135deg,#ff4d4d,#d92626);box-shadow:0 0 10px #ff4d4db3;border:1px solid rgba(255,206,206,.45)}.pointcloud-inline-btn--flagged-active:hover{transform:scale(1.08);box-shadow:0 0 14px #ff4d4dd9}.pointcloud-size-controls{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;font-size:.85rem;color:#d9e7f5}.pointcloud-size-controls button{width:26px;height:26px;border-radius:50%;border:none;background:#4675a059;color:#e1ecf9;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease}.pointcloud-size-controls button:hover{background:#5fa8ff73}.pointcloud-inline-controls button:disabled,.pointcloud-size-controls button:disabled{opacity:.45;cursor:not-allowed;background:#4675a02e}.viewer-inline-slider{width:32px;height:120px;padding:0 6px;display:flex;align-items:center;justify-content:center}.viewer-inline-slider input[type=range]{width:100%;height:100%;writing-mode:vertical-rl;direction:rtl;-moz-appearance:slider-vertical;appearance:slider-vertical;-webkit-appearance:slider-vertical;background:transparent}.viewer-flag-toggle{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.viewer-flag-checkbox{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap}.viewer-flag-checkbox:focus-visible+.pointcloud-inline-btn{box-shadow:0 0 0 2px #5fa8ffa6}.pointcloud-inline-btn--disabled{opacity:.45;cursor:not-allowed;pointer-events:none;transform:none!important;filter:none!important}.viewer-flag-status{margin-top:6px;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.7rem;color:#c7d6e6;text-transform:uppercase;letter-spacing:.05em}.viewer-flag-status__current--flagged{color:#ffe3e3}.viewer-flag-status__server--flagged{color:#ffbcbc}.viewer-flag-status__pending{font-size:.65rem;color:#ffd89c}.pointcloud-viewer{position:relative;width:100%;height:100%;min-height:30vh;display:grid;place-items:center;overflow:hidden;background:transparent}.pointcloud-viewer canvas{display:block;width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important}.pointcloud-viewer-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:10px;background:transparent;color:#cfe3ff;font-weight:600;z-index:6;pointer-events:none}.pointcloud-spinner{width:28px;height:28px;border:4px solid #3a4a61;border-top:4px solid #6ea8d8;border-radius:50%;animation:spin .9s linear infinite}.center-panel .center-panel-bar.center-panel-bar--grid{display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;gap:50px!important}.cpb-left{justify-self:end}.cpb-center{justify-self:center}.cpb-right{justify-self:start}.icon-square-btn{width:32px;height:32px;border-radius:0;padding:0;display:inline-flex;align-items:center;justify-content:center;background:#121a26;border:1px solid #2f3e52;color:#e1ecf9;font-size:18px;line-height:1;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .06s ease,opacity .15s ease}.icon-square-btn:hover:not(.is-disabled){transform:translateY(-1px);border-color:#3a4c66}.icon-square-btn.is-disabled{opacity:.5;cursor:not-allowed}.flag-btn-square.is-active{border-color:#ff6b6b;box-shadow:inset 0 0 0 2px #ff6b6b8c}.mask-btn-square.is-active{border-color:#5fa8ff;box-shadow:inset 0 0 0 2px #5fa8ff73}.pointcloud-editing-panel{background:#1f2530;border-radius:12px;padding:12px;box-shadow:0 6px 20px #0a0a0f59;display:flex;flex-direction:column;gap:12px;color:#e6edf6;font-size:.85rem;width:min(300px,85%);margin:0 auto}.pointcloud-editing-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}.pointcloud-editing-title-group{display:flex;flex-direction:column;gap:4px}.pointcloud-editing-title{font-weight:600;font-size:.95rem}.pointcloud-editing-subtitle{font-size:.78rem;color:#8fa5c0}.pointcloud-editing-pill{align-self:flex-start;background:#ff8d4f;color:#1f130b;font-weight:700;font-size:.72rem;padding:3px 8px;border-radius:999px}.pointcloud-editing-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;text-align:center}.pointcloud-editing-stats .label{display:block;font-size:.7rem;color:#96a9c0;margin-bottom:2px}.pointcloud-editing-section{background:#1a202a;border:1px solid #2d3645;border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:10px}.pointcloud-editing-section .section-title{font-size:.85rem;font-weight:600}.pointcloud-editing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pointcloud-editing-grid label{display:flex;flex-direction:column;font-size:.85rem;color:#b6c4d9;gap:6px}.pointcloud-editing-grid input,.pointcloud-editing-outlier input{background:#111620;border:1px solid #2f3b4e;border-radius:8px;padding:6px 10px;color:#e6edf6;font-size:.9rem}.pointcloud-editing-actions{display:flex;gap:10px;flex-wrap:wrap}.pointcloud-editing-actions button{border-radius:8px;border:1px solid #324057;background:#232b37;color:#d0dae9;padding:8px 14px;font-weight:600;cursor:pointer}.pointcloud-editing-actions button:disabled{opacity:.45;cursor:not-allowed}.pointcloud-editing-actions .primary-btn{background:linear-gradient(120deg,#3383ff,#5b9dff);border-color:#3383ff;color:#fff}.pointcloud-editing-actions--stacked{flex-direction:column}.pointcloud-editing-outlier{display:flex;flex-direction:column;gap:12px}.pointcloud-editing-error{color:#ffb4a2;font-size:.85rem}.pointcloud-editing-success{color:#8fd19e;font-size:.85rem}.pointcloud-editing-wrapper{margin-top:18px}.pointcloud-selection-section .selection-section-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.selection-subtitle{font-size:.8rem;color:#8ea9c7;margin-top:4px}.selection-pill{background:#2d3e52;color:#b6c8dc;font-size:.78rem;font-weight:600;padding:4px 10px;border-radius:999px;align-self:flex-start}.pointcloud-selection-stats{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:8px;text-align:center}.pointcloud-selection-stats .label{display:block;align-items:center;font-size:.7rem;color:#96a9c0;margin-bottom:2px}.pointcloud-selection-stats>div{min-width:80px}.pointcloud-selection-toggle{flex-wrap:nowrap;width:100%}.pointcloud-selection-toggle button{flex:1;min-width:0}.pointcloud-selection-actions{display:flex;flex-direction:column;gap:6px;align-items:center}.pointcloud-selection-actions button{width:100%}.pointcloud-selection-overlay{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:2}.pointcloud-variant-toggle{display:flex;gap:10px;width:70%;margin:4px auto 0;justify-content:center}.pointcloud-variant-toggle--full .pointcloud-variant-btn{flex:1}.pointcloud-variant-btn{padding:6px 12px;border-radius:6px;border:1px solid #374455;background:#202733;color:#cdd9ea;font-size:.85rem;font-weight:600;cursor:pointer}.pointcloud-variant-btn:disabled{opacity:.4;cursor:not-allowed}.pointcloud-variant-btn--active{background:linear-gradient(120deg,#ffd166,#f9a826);border-color:#5b8697;color:#1b1f29}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
