@charset "UTF-8";:root{--ui-scale: 1;--british-navy: #036;--german-steel: #7c7c7c;--french-blue: #0055a4;--french-light-1900: #7fb3e6;--austrian-gold: #fc0;--steel-grey: #43464b;--ottoman-burgundy: #800020;--canvas-cream: #f5f5dc;--brass: #b5a642;--cell-color: #000;--cell-font: "serif";--cell-left: 0px;--cell-opacity: 1;--cell-size: 20px;--cell-top: 0px;--error-red: #f00;--grid-bg: rgb(0 0 0 / 10%);--grid-offset: 0px;--grid-size: 50px;--ink-dark: #000;--pan-cursor: grab;--pan-transform: translate(0, 0);--parchment: #f4e4bc;--russian-imperial: #0033a0;--unit-font: "serif";--unit-left: 0px;--unit-size: 20px;--unit-top: 0px}*{box-sizing:border-box;-ms-overflow-style:none;scrollbar-width:none}html,body{height:100%;margin:0;padding:0;background:var(--british-navy);color:var(--canvas-cream);font-family:Crimson Text,serif;overflow:hidden}app-root{display:block;width:100%;height:100%}::-webkit-scrollbar{display:none}input[type=number]{appearance:none;appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.btn-primary{width:100%;min-height:44px;margin-bottom:1rem;padding:.75rem 1.25rem;border:2px solid var(--brass);border-radius:6px;background:linear-gradient(135deg,#b8860b1a,#b8860b33);color:var(--canvas-cream);font-family:Crimson Text,serif;font-size:.9rem;font-weight:600;box-shadow:0 2px 4px #0003;transition:all .2s ease;cursor:pointer;text-transform:uppercase;letter-spacing:.03em}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--brass),var(--austrian-gold));color:var(--ink-dark)}.btn-primary:focus{outline:2px solid var(--austrian-gold);outline-offset:2px}.btn-small{min-width:auto;min-height:32px;padding:.25rem .5rem;font-size:.75rem}.modal-overlay{position:fixed;top:0;left:0;z-index:2000;display:flex;justify-content:center;align-items:center;width:100vw;height:100vh;background:#000000b3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.create-modal-overlay{z-index:2100}.modal-content{max-width:90vw;max-height:90vh;padding:1.5rem;border:3px solid var(--austrian-gold);border-radius:8px;background:linear-gradient(135deg,#2a3a4a,#1a2a3a);color:var(--canvas-cream);box-shadow:0 8px 32px #00000080;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(184,134,11,.3)}.modal-header h3{margin:0;color:var(--austrian-gold);font-family:Crimson Text,serif;font-size:1.25rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.modal-close{padding:.25rem;border:none;background:none;color:var(--canvas-cream);font-size:1.5rem;line-height:1;transition:opacity .2s ease;cursor:pointer;opacity:.7}.modal-close:hover{opacity:1}.modal-actions{display:flex;justify-content:flex-end;margin-top:.75rem;padding-top:.75rem;gap:.5rem;border-top:1px solid rgba(184,134,11,.3)}.form-group{margin-bottom:.75rem}.form-group label{display:block;margin-bottom:.25rem;color:var(--canvas-cream);font-family:Crimson Text,serif;font-size:.85rem;font-weight:500}.form-input,input[type=email],input[type=password],select,textarea{width:100%;min-height:44px;padding:.5rem .75rem;border:2px solid var(--brass);border-radius:4px;background:#1a2a3acc;color:var(--canvas-cream);font-family:Crimson Text,serif;font-size:.9rem}.form-input::placeholder,input[type=email]::placeholder,input[type=password]::placeholder,select::placeholder,textarea::placeholder{color:#e8dcc880}.form-input:focus,input[type=email]:focus,input[type=password]:focus,select:focus,textarea:focus{outline:none;border-color:var(--austrian-gold);box-shadow:0 0 0 2px #b8860b33}.form-input:disabled,input[type=email]:disabled,input[type=password]:disabled,select:disabled,textarea:disabled{opacity:.5;cursor:not-allowed}.btn-action,.btn-negative,.btn-positive,.btn-edit{min-width:auto;min-height:32px;padding:.3rem .6rem;border-radius:4px;font-weight:600;font-size:.8rem;cursor:pointer;box-shadow:0 1px 3px #00000026;transition:transform .08s ease,box-shadow .08s ease,filter .08s ease;border:2px solid rgba(127,179,230,.9)}.compact-input{height:28px;padding:.18rem .4rem;border:1px solid var(--brass);border-radius:4px;background:#1a2a3acc;color:var(--canvas-cream);font-size:.85rem;text-align:center}.year-input,.month-input,.day-input,.timestamp-input{height:18px;min-height:18px;padding:0 6px;font-family:Crimson Text,serif;font-size:.9rem;box-sizing:border-box;text-align:center}.form-input input.year-input,input.month-input,input.day-input{width:auto;max-width:100px}.selected-chip{display:inline-flex;align-items:center;padding:.2rem .4rem;border-radius:4px;border:1px solid rgba(184,134,11,.2);background:#ffffff0d;color:var(--canvas-cream);font-size:.85rem}.btn-action:hover:not(:disabled),.btn-negative:hover:not(:disabled),.btn-positive:hover:not(:disabled),.btn-edit:hover:not(:disabled){filter:brightness(.95);box-shadow:0 2px 6px #0003}.btn-action:active:not(:disabled),.btn-negative:active:not(:disabled),.btn-positive:active:not(:disabled),.btn-edit:active:not(:disabled){transform:translateY(1px)}.btn-action:focus,.btn-negative:focus,.btn-positive:focus,.btn-edit:focus{outline:2px solid var(--austrian-gold);outline-offset:2px}.btn-action.btn-small,.btn-small.btn-negative,.btn-small.btn-positive,.btn-small.btn-edit{padding:.2rem .45rem;font-size:.75rem;min-height:28px}.btn-edit{background:linear-gradient(135deg,var(--french-light-1900),#5f9ed6);color:var(--canvas-cream);border-color:#7fb3e6e6}.btn-edit:hover:not(:disabled){filter:brightness(.95);box-shadow:0 2px 6px #0003}.btn-edit:active:not(:disabled){transform:translateY(1px)}.btn-edit:focus{outline:2px solid var(--austrian-gold);outline-offset:2px}.btn-edit.btn-small{padding:.2rem .45rem;font-size:.75rem;min-height:28px}.btn-positive{background:linear-gradient(135deg,#2d5a2d,#1e4a1e);color:var(--canvas-cream);border-color:#4a8a4a}.btn-positive:hover:not(:disabled){filter:brightness(.95);box-shadow:0 2px 6px #0003}.btn-negative{background:linear-gradient(135deg,var(--ottoman-burgundy),#6a2a2a);color:var(--canvas-cream);border-color:#c08080}.btn-negative:hover:not(:disabled){filter:brightness(1.02);box-shadow:0 2px 6px #0003}.managed-modal,.time-settings-modal,.time-checkpoints-modal{max-width:85vw;max-height:85vh;padding:1.25rem;border:3px solid var(--austrian-gold);border-radius:8px;background:linear-gradient(135deg,#2a3a4a,#1a2a3a);color:var(--canvas-cream);box-shadow:0 8px 32px #00000080;overflow-y:auto;font-family:Crimson Text,serif}.create-dialog.managed-modal:not(.time-checkpoints-modal):not(.time-settings-modal){width:90vw;max-width:500px}.managed-modal .modal-header,.time-settings-modal .modal-header,.time-checkpoints-modal .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(184,134,11,.3)}.managed-modal .modal-header h3,.time-settings-modal .modal-header h3,.time-checkpoints-modal .modal-header h3{margin:0;color:var(--austrian-gold);font-size:1.25rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}input[type=checkbox],input[type=radio]{width:16px;height:16px;min-height:unset;min-width:unset;padding:0;flex-shrink:0;cursor:pointer;accent-color:var(--austrian-gold)}.managed-modal input:not([type=checkbox]):not([type=radio]),.managed-modal select,.managed-modal textarea,.time-settings-modal input:not([type=checkbox]):not([type=radio]),.time-settings-modal select:not([type=checkbox]):not([type=radio]),.time-settings-modal textarea,.time-checkpoints-modal input:not([type=checkbox]):not([type=radio]),.time-checkpoints-modal select,.time-checkpoints-modal textarea{background:#1a2a3afa!important;color:var(--canvas-cream)!important;padding:6px 8px!important;font-size:13px!important;border:1px solid rgba(184,134,11,.2)!important;border-radius:4px!important;width:auto!important;min-height:32px!important}.time-settings-modal .field-input{height:32px!important}.managed-modal .hour-input,.managed-modal input[placeholder="1.00"],.managed-modal input[placeholder="HH.hh"],.managed-modal input[placeholder="HH.HH"]{width:64px!important;height:32px!important;padding:6px 8px!important;text-align:center!important;box-sizing:border-box}.managed-modal select,.time-settings-modal select,.time-checkpoints-modal select{padding-right:2.5rem!important;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23b8860b' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right .75rem center!important;background-repeat:no-repeat!important;background-size:1rem!important;width:auto!important;min-width:80px!important;max-width:260px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.managed-modal input[placeholder=YYYY],.managed-modal input[id$=-year],.time-settings-modal input[placeholder=YYYY],.time-settings-modal input[id$=-year],.time-checkpoints-modal input[placeholder=YYYY],.time-checkpoints-modal input[id$=-year],.managed-modal .year-input,.time-settings-modal .year-input,.time-checkpoints-modal .year-input{width:72px!important}.managed-modal input[placeholder=MM],.managed-modal input[placeholder=DD],.managed-modal input[id$=-month],.managed-modal input[id$=-day],.time-settings-modal input[placeholder=MM],.time-settings-modal input[placeholder=DD],.time-settings-modal input[id$=-month],.time-settings-modal input[id$=-day],.time-checkpoints-modal input[placeholder=MM],.time-checkpoints-modal input[placeholder=DD],.time-checkpoints-modal input[id$=-month],.time-checkpoints-modal input[id$=-day],.managed-modal .month-input,.managed-modal .day-input,.time-settings-modal .month-input,.time-settings-modal .day-input,.time-checkpoints-modal .month-input,.time-checkpoints-modal .day-input{width:48px!important}.managed-modal input:not([type=checkbox])[placeholder="HH.hh"],.managed-modal input:not([type=checkbox])[placeholder="1.00"],.managed-modal input:not([type=checkbox])[id$=-time],.managed-modal input:not([type=checkbox])[id$=-hour],.time-settings-modal input:not([type=checkbox])[placeholder="HH.hh"],.time-settings-modal input:not([type=checkbox])[placeholder="1.00"],.time-settings-modal input:not([type=checkbox])[id$=-time],.time-settings-modal input:not([type=checkbox])[id$=-hour],.time-settings-modal .field-input.hour-input,.time-checkpoints-modal input:not([type=checkbox])[placeholder="HH.hh"],.time-checkpoints-modal input:not([type=checkbox])[placeholder="1.00"],.time-checkpoints-modal input:not([type=checkbox])[id$=-time],.time-checkpoints-modal input:not([type=checkbox])[id$=-hour],.managed-modal .timestamp-input,.time-settings-modal .timestamp-input,.time-checkpoints-modal .timestamp-input{width:64px!important;text-align:center!important;height:32px!important;min-height:32px!important}.managed-modal .date-inputs-compact,.managed-modal .date-row,.time-settings-modal .date-row,.time-checkpoints-modal .date-inputs{display:flex;gap:.5rem;justify-content:center;align-items:flex-end}.managed-modal .date-field,.managed-modal .form-group.date-field,.time-settings-modal .date-field,.time-checkpoints-modal .form-group.date-field{display:flex;flex-direction:column;align-items:center}.managed-modal .date-field label,.managed-modal .form-group.date-field label,.time-settings-modal .field-label,.time-checkpoints-modal .form-group.date-field label{text-align:center;display:block;margin-bottom:4px}.managed-modal .timestamp-input,.time-settings-modal .timestamp-input,.time-checkpoints-modal .timestamp-input{text-align:center!important}.camera-paths-root .date-field .field-label{text-align:center;display:block;margin-bottom:4px}.managed-modal input[type=number],.time-settings-modal input[type=number],.time-checkpoints-modal input[type=number],.timestamp-input,.date-row input[type=number]{text-align:center}.seconds-input{width:80px!important}.create-form .date-row,.timestamp-edit-form .date-row,.date-inputs-compact.date-row,.date-row{display:flex;gap:.5rem;align-items:flex-end;justify-content:center}.create-form .date-field,.timestamp-edit-form .date-field,.date-field{display:flex;flex-direction:column;align-items:center}.create-form .date-field label,.timestamp-edit-form .date-field label,.date-field label{text-align:center;display:block;margin-bottom:4px}.managed-modal .modal-actions .btn-primary,.managed-modal .modal-actions .btn-positive,.managed-modal .modal-actions .btn-negative,.time-settings-modal .modal-actions .btn-primary,.time-settings-modal .modal-actions .btn-positive,.time-settings-modal .modal-actions .btn-negative,.time-checkpoints-modal .modal-actions .btn-primary,.time-checkpoints-modal .modal-actions .btn-positive,.time-checkpoints-modal .modal-actions .btn-negative{min-width:100px;padding:.5rem .9rem;border-radius:4px;font-weight:600}.managed-modal .modal-close,.time-settings-modal .modal-close,.time-checkpoints-modal .modal-close{display:none!important}.camera-path-create-dialog{width:fit-content;max-width:min(90vw,360px);min-width:320px}.camera-path-create-dialog .form-group{margin-bottom:0}.camera-path-create-dialog .form-group input[type=text]{width:100%!important;min-width:260px}textarea{resize:vertical;min-height:80px}.help-text{margin-top:.25rem;color:var(--brass);font-size:.8rem;font-style:italic}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(0 0 0 0);white-space:nowrap}.text-center{text-align:center}.flex-center{display:flex;justify-content:center;align-items:center}.no-items{padding:2rem;color:var(--brass);text-align:center;font-style:italic}.search-input{width:100%;padding:.5rem;border:1px solid var(--brass);border-radius:4px;background:#1a2a3acc;color:var(--canvas-cream);font-size:.9rem;box-sizing:border-box;min-height:44px}.management .header{display:flex;gap:8px;align-items:center;padding:8px;margin-top:0}.management .search{flex:1;width:100%;padding:.5rem;border:1px solid var(--brass);border-radius:4px;background:#1a2a3acc;color:var(--canvas-cream);font-size:.9rem;box-sizing:border-box;min-height:44px}.management .header .btn-action,.management .header .btn-edit,.management .header .btn-positive,.management .header .btn-negative,.management .header .btn{min-height:44px;padding:.4rem .75rem}.management .list{list-style:none;padding:0;margin:0}.management .list-item{display:flex;flex-direction:column;align-items:stretch;padding:8px;margin-bottom:8px;border:1px solid rgba(0,0,0,.06);border-bottom:1px solid #eee;border-radius:6px}.management .item-top{display:flex;align-items:center;justify-content:space-between}.management .name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:8px;flex:1 1 auto;min-width:0}.management .actions-vertical{display:flex;flex-direction:column;gap:8px;flex:0 0 72px;align-items:flex-end}.management .actions-vertical .btn,.management .actions-vertical .btn-small{width:72px;box-sizing:border-box}.management .modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.hierarchies-management,.citations-management,.units-management,.events-management,.camera-paths-root,.selection-dialog{margin-top:0}.sidebar-panel>.header{margin-top:0;display:flex;gap:8px;align-items:center}.management>.header+.list,.management>.header+.management-list-standard,.management>.header+.units-list,.management>.header+.no-items,.management .header+.list{margin-top:0!important}.management .units-list{margin-top:0!important;padding-top:0!important}.management-list-standard .management-item,.management-list-standard .list-item{padding:10px 12px;margin-bottom:0;border:none;border-radius:0;box-sizing:border-box;background:transparent;overflow:hidden;cursor:pointer;position:relative}.management-list-standard .list-item+.list-item{border-top:1px solid rgba(255,255,255,.04)}.management-list-standard .list-item:hover{background:#ffffff03}.management-list-standard .item-top{display:flex;align-items:center;gap:12px;justify-content:flex-start;height:100%;box-sizing:border-box;padding-right:84px}.management-list-standard .item-left{display:flex;flex-direction:column;gap:4px;flex:1 1 auto;min-width:0}.management-list-standard .item-left .meta-label{font-size:.7rem;color:var(--brass);text-transform:uppercase}.management-list-standard .item-left .meta-value{color:var(--canvas-cream);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.management-list-standard .item-actions-vertical,.actions-vertical,.management-actions-vertical,.item-actions-vertical{display:flex;flex-direction:column;gap:6px;flex:0 0 72px;align-items:flex-end}.management-list-standard .list-item .item-actions-vertical{position:absolute;right:12px;top:50%;transform:translateY(-50%);flex:none;width:72px}.management-list-standard .item-actions-vertical .btn-small,.actions-vertical .btn-small,.management-actions-vertical .btn-small,.item-actions-vertical .btn-small,.camera-node-actions .btn-small{width:72px;box-sizing:border-box}.management-list-standard .item-image{flex:0 0 auto;width:44px;height:44px;object-fit:cover;border-radius:4px}.management-list-standard .management-item,.management-list-standard .list-item{min-height:94px;height:94px}.management .management-list-standard,.management .units-list{max-height:470px;overflow-y:auto;box-sizing:border-box;padding-right:6px}@media(max-height:900px){:root{--ui-scale: .82}}@media(max-height:800px){:root{--ui-scale: .75}}@media(max-height:700px){:root{--ui-scale: .67}}.modal-content,.managed-modal,.time-settings-modal,.time-checkpoints-modal{zoom:var(--ui-scale)}:root{--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--safe-area-right: env(safe-area-inset-right, 0px)}@media(hover:none)and (pointer:coarse){button,[role=button],input[type=range],select,.btn-action,.btn-edit,.btn-positive,.btn-negative,.btn-primary,.sidebar-tab,.mode-button,input[type=checkbox],input[type=radio]{min-height:44px;min-width:44px}.btn-small,.btn-action.btn-small{min-height:38px;min-width:38px;padding:.3rem .6rem;font-size:.8rem}.tl-scroll-thumb{min-height:20px}}@media(max-width:768px){html,body{overflow:hidden;overscroll-behavior:none;-webkit-overflow-scrolling:touch}.modal-overlay{align-items:center;padding:1rem}.modal-content{width:100%;max-width:520px;max-height:85vh;margin:0 auto;border-radius:8px;padding:1.25rem;padding-bottom:calc(1.25rem + var(--safe-area-bottom))}.managed-modal,.time-settings-modal,.time-checkpoints-modal{width:100%;max-width:520px;max-height:85vh;margin:0 auto;border-radius:8px;padding:1rem;padding-bottom:calc(1rem + var(--safe-area-bottom))}.create-dialog.managed-modal:not(.time-checkpoints-modal):not(.time-settings-modal):not(.camera-path-create-dialog){width:100%;max-width:500px}.managed-modal input:not([type=checkbox]):not([type=radio]),.managed-modal select,.managed-modal textarea,.modal-content input:not([type=checkbox]):not([type=radio]),.modal-content select,.modal-content textarea{font-size:16px!important}.modal-actions{flex-direction:column;gap:.5rem}.modal-actions button{width:100%}.management .management-list-standard,.management .units-list{max-height:282px}.form-group{margin-bottom:1rem}.date-row,.managed-modal .date-inputs-compact,.managed-modal .date-row{flex-wrap:wrap;justify-content:center}.search-input,.management .search{min-height:48px;font-size:16px}.session-expired-banner{max-width:95vw!important;font-size:.85rem}}@media(max-width:480px){.modal-content{max-width:95vw;padding:1rem;padding-bottom:calc(1rem + var(--safe-area-bottom))}.managed-modal,.time-settings-modal,.time-checkpoints-modal,.create-dialog.managed-modal:not(.time-checkpoints-modal):not(.time-settings-modal){max-width:95vw}.managed-modal .modal-header h3,.modal-content h3{font-size:1.1rem}.management-list-standard .management-item,.management-list-standard .list-item{min-height:80px;height:80px;padding:8px}.management .management-list-standard,.management .units-list{max-height:240px}}
