.vertical-sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:1040}.vertical-sidebar-panel{position:fixed;top:0;left:0;height:100vh;background-color:#2c3e50;color:#fff;transition:width .3s ease;z-index:1050;overflow:hidden;white-space:nowrap;box-shadow:2px 0 5px #0000001a;display:flex;flex-direction:column}.vertical-sidebar-panel.vertical-sidebar-panel--open{width:280px}.vertical-sidebar-panel.vertical-sidebar-panel--closed{width:var(--geo-sidebar-collapsed-w, 64px)}.vertical-sidebar-header{border-bottom:1px solid #34495e;flex-shrink:0;padding:.85rem 1rem;min-height:60px}.vertical-sidebar-nav{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#7f8c8d #2c3e50;padding:.35rem 0 1rem}.vertical-sidebar-nav::-webkit-scrollbar{width:8px}.vertical-sidebar-nav::-webkit-scrollbar-track{background:#243342}.vertical-sidebar-nav::-webkit-scrollbar-thumb{background:#7f8c8d;border-radius:4px}.vertical-sidebar-nav::-webkit-scrollbar-thumb:hover{background:#95a5a6}.vertical-sidebar-section{padding:.35rem 0 .55rem}.vertical-sidebar-section-label{padding:.55rem 1rem .3rem;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#ffffff73}.vertical-sidebar-brand{font-size:1.2rem;font-weight:700;color:#fff}.vertical-sidebar-brand-accent{color:#0189cc}.vertical-sidebar-brand-mark{font-size:.7em;margin-left:1px}.vertical-sidebar-close-btn{font-size:1.5rem;color:#fff!important}.vertical-sidebar-icon{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;color:#ffffffd9;flex-shrink:0}.vertical-sidebar-nav-link{transition:all .2s ease;text-decoration:none;cursor:pointer;color:#fff!important;padding:.75rem 1rem!important;position:relative}.vertical-sidebar-nav-link:hover{background-color:#34495e}.vertical-sidebar-nav-link.active{background-color:#0189cc;border-left:4px solid #0170a7;text-decoration:none}.vertical-sidebar-nav-link.active .vertical-sidebar-icon{color:#fff}.vertical-sidebar-nav-link.active:hover{background-color:#0189cc}.vertical-sidebar-expand-icon{font-size:1rem}.vertical-sidebar-submenu{background-color:#34495e;flex-direction:column!important;flex-wrap:nowrap!important}.vertical-sidebar-submenu .nav-item{width:100%}.vertical-sidebar-submenu--horizontal{display:flex;flex-direction:row;flex-wrap:nowrap;width:100%}.vertical-sidebar-submenu--horizontal .nav-item{flex:1 1 0;min-width:0}.vertical-sidebar-submenu-item{transition:all .2s ease;text-decoration:none;font-size:.9rem;width:100%;box-sizing:border-box;color:#fff!important}.vertical-sidebar-submenu-item--horizontal{font-size:.7rem;line-height:1.2;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:.25rem!important;padding-right:.25rem!important;border-left:none!important}.vertical-sidebar-submenu-item--horizontal span{display:block;overflow:hidden;text-overflow:ellipsis}.vertical-sidebar-submenu-item:hover{background-color:#2c3e50}.vertical-sidebar-submenu-item.active{background-color:#0189cc;border-left:4px solid #0170a7;text-decoration:none}.vertical-sidebar-submenu-item--horizontal.active{border-left:none;border-bottom:3px solid #0170a7}.vertical-sidebar-submenu-item.active:hover{background-color:#0189cc}.vertical-sidebar-badge{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background-color:#ef4444;color:#fff;font-size:.72rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.vertical-sidebar-nav-label--alert{color:#f87171;font-weight:600}.vertical-sidebar-nav-link--alert:hover .vertical-sidebar-nav-label--alert{color:#fecaca}.vertical-sidebar-brand-compact{display:none;font-size:1.75rem;font-weight:700;line-height:1;color:#fff}.vertical-sidebar-panel--closed{overflow-x:hidden}.vertical-sidebar-panel--closed .vertical-sidebar-header{justify-content:center!important;padding:.75rem 0}.vertical-sidebar-panel--closed .vertical-sidebar-brand{display:flex;width:100%;justify-content:center;text-align:center}.vertical-sidebar-panel--closed .vertical-sidebar-brand-full,.vertical-sidebar-panel--closed .vertical-sidebar-close-btn,.vertical-sidebar-panel--closed .vertical-sidebar-section-label,.vertical-sidebar-panel--closed .vertical-sidebar-label,.vertical-sidebar-panel--closed .vertical-sidebar-expand-icon,.vertical-sidebar-panel--closed .vertical-sidebar-submenu{display:none}.vertical-sidebar-panel--closed .vertical-sidebar-brand-compact{display:inline}.vertical-sidebar-panel--closed .vertical-sidebar-section{padding:.2rem 0}.vertical-sidebar-panel--closed .vertical-sidebar-nav-link{justify-content:center!important;padding:.7rem 0!important;margin:.1rem .4rem;border-radius:8px;border-left:none}.vertical-sidebar-panel--closed .vertical-sidebar-nav-link.active{border-left:none;padding-left:0!important}.vertical-sidebar-panel--closed .vertical-sidebar-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;padding:0 4px;font-size:.6rem}.vertical-sidebar-flyout{position:fixed;left:calc(var(--geo-sidebar-collapsed-w, 64px) + 8px);transform:translateY(-50%);z-index:1060;padding:.5rem .9rem;border-radius:8px;background-color:#34495e;color:#fff;font-size:.875rem;font-weight:500;line-height:1.3;white-space:nowrap;pointer-events:none;box-shadow:0 6px 18px #00000047;animation:vertical-sidebar-flyout-in .18s ease-out both}.vertical-sidebar-flyout:before{content:"";position:absolute;top:50%;left:-4px;width:8px;height:8px;transform:translateY(-50%) rotate(45deg);background-color:#34495e;border-radius:1px}.vertical-sidebar-flyout--menu{transform:none;pointer-events:auto;display:flex;flex-direction:column;min-width:196px;padding:.4rem 0;animation-name:vertical-sidebar-flyout-menu-in}.vertical-sidebar-flyout--menu:before{top:var(--flyout-caret-top, 22px)}.vertical-sidebar-flyout--menu:after{content:"";position:absolute;top:0;left:-12px;width:12px;height:100%}.vertical-sidebar-flyout-title{padding:.35rem .95rem .45rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#ffffff80}.vertical-sidebar-flyout-item{display:block;padding:.5rem .95rem;color:#fff;text-decoration:none;font-size:.875rem;font-weight:500;line-height:1.3}.vertical-sidebar-flyout-item:hover{background-color:#2c3e50;color:#fff}.vertical-sidebar-flyout-item.active,.vertical-sidebar-flyout-item.active:hover{background-color:#0189cc;color:#fff}@keyframes vertical-sidebar-flyout-in{0%{opacity:0;transform:translateY(-50%) translate(-8px) scale(.96)}to{opacity:1;transform:translateY(-50%) translate(0) scale(1)}}@keyframes vertical-sidebar-flyout-menu-in{0%{opacity:0;transform:translate(-8px) scale(.96)}to{opacity:1;transform:translate(0) scale(1)}}@media(prefers-reduced-motion:reduce){.vertical-sidebar-flyout{animation:none}}.chat-notification-toggle{display:inline-flex;align-items:center;gap:6px;border:1px solid transparent;background:transparent;color:var(--geo-text-muted, #5c6770);border-radius:999px;padding:6px 10px;font-size:.8125rem;cursor:pointer;line-height:1;height:36px}.chat-notification-toggle.compact{padding:0;width:36px;min-width:36px;justify-content:center}.chat-notification-toggle.active{background:var(--geo-accent-soft, rgba(1, 137, 204, .12));border-color:transparent;color:var(--geo-accent-active, #015d8b);text-decoration:none}.chat-notification-toggle:hover{background:#f4f7fa;color:var(--geo-text, #111827)}.chat-notification-toggle-label{font-weight:600}.top-navbar-actions{display:flex;align-items:center;gap:8px;margin-right:4px}.top-navbar{height:60px;border-top:3px solid #0189CC;border-bottom:3px solid #0189CC;z-index:1030;padding-top:0;padding-bottom:0;display:flex;align-items:center}.top-navbar .container-fluid{height:100%;flex-wrap:nowrap;align-items:center}.top-navbar-menu-btn{font-size:1.5rem}.top-navbar-center{left:50%;top:50%;transform:translate(-50%,-50%)}.top-navbar-brand{font-size:1.5rem;margin:0;padding:0;line-height:1;display:flex;align-items:center}.top-navbar-brand-accent{color:#0189cc}.top-navbar-user-section{gap:.35rem}.top-navbar-user{position:relative}.top-navbar-avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#868686;color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.02em;flex-shrink:0;line-height:1}.top-navbar-avatar--lg{width:40px;height:40px;font-size:.85rem}.top-navbar-user-btn{display:inline-flex;align-items:center;gap:.45rem;height:36px;padding:0 .45rem 0 .3rem;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--geo-text, #111827);font-size:.875rem;font-weight:600;white-space:nowrap;text-decoration:none;line-height:1;cursor:pointer}.top-navbar-user-btn:hover,.top-navbar-user-btn.is-open{background:#f4f7fa;border-color:var(--geo-border, rgba(16, 24, 40, .08))}.top-navbar-user-name{max-width:11rem;overflow:hidden;text-overflow:ellipsis}.top-navbar-user-caret{font-size:1.15rem!important;color:var(--geo-text-muted, #5c6770);transition:transform .15s ease}.top-navbar-user-btn.is-open .top-navbar-user-caret{transform:rotate(180deg)}.top-navbar-user-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:240px;padding:.35rem;z-index:1050;border:1px solid var(--geo-card-border, rgba(16, 24, 40, .08));border-radius:14px;background:var(--geo-card, #fff);box-shadow:var(--geo-card-shadow, 0 1px 2px rgba(16, 24, 40, .04), 0 10px 28px rgba(16, 24, 40, .07))}.top-navbar-user-menu-header{display:flex;align-items:center;gap:.7rem;padding:.65rem .7rem .75rem}.top-navbar-user-menu-meta{min-width:0}.top-navbar-user-menu-name{font-size:.9rem;font-weight:650;color:var(--geo-text, #111827);line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-navbar-user-menu-email{margin-top:.15rem;font-size:.75rem;color:var(--geo-text-muted, #5c6770);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-navbar-user-menu-list{display:flex;flex-direction:column;gap:.15rem;padding:.15rem .2rem .25rem;border-top:1px solid var(--geo-border, rgba(16, 24, 40, .08))}.top-navbar-user-menu-item{display:flex;align-items:center;gap:.55rem;width:100%;padding:.5rem .65rem;border:0;border-radius:10px;background:transparent;color:var(--geo-text, #111827);font-size:.875rem;font-weight:500;text-align:left;text-decoration:none;line-height:1.2}.top-navbar-user-menu-item svg{font-size:1.1rem;color:var(--geo-text-muted, #5c6770)}.top-navbar-user-menu-item:hover{background:#f4f7fa;color:var(--geo-text, #111827)}.top-navbar-user-menu-item--danger{color:var(--geo-danger, #b42318)}.top-navbar-user-menu-item--danger svg{color:var(--geo-danger, #b42318)}.top-navbar-user-menu-item--danger:hover{background:#b4231814;color:var(--geo-danger, #b42318)}@media(max-width:768px){.top-navbar-user-name{display:none}}.toast-container{z-index:1500}.toast{min-width:250px;margin-bottom:.5rem;animation:fadeIn .3s ease-in-out;opacity:1}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.bg-success{background-color:#10b981!important}.bg-danger{background-color:#ef4444!important}.bg-warning{background-color:#f59e0b!important}.bg-info{background-color:#0189cc!important}.home-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - var(--geo-navbar-h, 60px));padding-bottom:7vh;background-color:#2c3e50;background-image:linear-gradient(180deg,#1018282e,#10182852),url(/terean-background.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.home-workspace{width:100%;max-width:960px;margin:0 auto;padding:3rem 1rem;text-align:center}.home-hero{margin-bottom:3.5rem}.home-hero__title{margin:0 0 .5rem;font-size:2.5rem;font-weight:500;color:#fff;text-shadow:0 1px 2px rgba(16,24,40,.35)}.home-hero__lead{margin:0 auto;max-width:36rem;color:#ffffffe6;font-size:1.25rem;line-height:1.5;text-shadow:0 1px 2px rgba(16,24,40,.3)}.home-hero__actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem;margin-top:1.1rem}.home-hero__actions .btn{min-width:8.5rem}.home-hero__actions .text-muted{color:#ffffffe0!important}.home-hero__actions .btn-outline-primary{background:#ffffff29;color:#fff;border-color:#ffffffb3}.home-hero__actions .btn-outline-primary:hover{background:#ffffff47;color:#fff;border-color:#fff}.home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;max-width:860px;margin:0 auto}.home-card{background:var(--geo-card-gradient, linear-gradient(180deg, #ffffff 0%, #f5f7fb 100%));background-color:#fff;border:1px solid var(--geo-card-border, rgba(16, 24, 40, .08));border-radius:var(--geo-radius-lg, 8px);box-shadow:var(--geo-card-shadow, 0 1px 2px rgba(16, 24, 40, .04), 0 10px 28px rgba(16, 24, 40, .07));padding:2rem 1.75rem 1.75rem;display:flex;flex-direction:column;align-items:center;text-align:center;min-height:15rem}.home-card h2{font-size:1.75rem;font-weight:500;margin:0 0 .65rem;color:var(--geo-text, #000000)}.home-card p{margin:0 0 1.5rem;color:var(--geo-text-muted, #5c6770);flex:1;max-width:22rem}.home-card__btn{width:100%;max-width:100%;padding:.6rem 1rem;border-radius:var(--geo-radius-sm);font-weight:500}.home-card__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;width:100%}.home-card__actions .btn{border-radius:var(--geo-radius-sm);padding:.5rem .9rem}@media(max-width:768px){.home-workspace{padding:2rem 1rem 2.5rem}.home-grid{grid-template-columns:1fr}}.admin-list-page{min-height:calc(100vh - var(--geo-navbar-h, 60px));background:var(--geo-canvas, #eef2f6)}.admin-list-page .page-toolbar-wrap h4{font-weight:650;color:var(--geo-text, #111827)}.admin-list-page .data-table-card .table th.sticky-name-header,.admin-list-page .data-table-card .table td.sticky-name-cell{text-align:center}.admin-modal .modal-content{border:1px solid var(--geo-card-border, rgba(16, 24, 40, .08));border-radius:var(--geo-radius-lg, 8px);box-shadow:var(--geo-card-shadow, 0 1px 2px rgba(16, 24, 40, .04), 0 10px 28px rgba(16, 24, 40, .07));overflow:hidden}.admin-modal .modal-header{background:var(--geo-header-bg, #f7f9fb);border-bottom:1px solid var(--geo-border, rgba(16, 24, 40, .08));padding:.85rem 1.1rem}.admin-modal .modal-title{font-size:1rem;font-weight:650;color:var(--geo-text, #111827)}.admin-modal .modal-body{padding:1.1rem 1.15rem}.admin-modal .modal-footer{background:var(--geo-header-bg, #f7f9fb);border-top:1px solid var(--geo-border, rgba(16, 24, 40, .08));padding:.75rem 1.1rem;gap:.45rem}.admin-modal .form-label{font-size:.78rem;font-weight:600;letter-spacing:.02em;color:var(--geo-text-muted, #5c6770)}.admin-modal .form-control,.admin-modal .form-select{border-radius:var(--geo-radius-sm);border-color:var(--geo-border, rgba(16, 24, 40, .12))}.admin-modal .form-control:focus,.admin-modal .form-select:focus{border-color:var(--geo-accent, #0189CC);box-shadow:0 0 0 .2rem var(--geo-accent-soft, rgba(1, 137, 204, .12))}.admin-modal .form-check-input:checked{background-color:var(--geo-accent, #0189CC);border-color:var(--geo-accent, #0189CC)}.admin-modal .btn{border-radius:var(--geo-radius-sm)}.admin-modal .btn-primary{background-color:var(--geo-accent, #0189CC);border-color:var(--geo-accent, #0189CC)}.admin-modal .btn-primary:hover,.admin-modal .btn-primary:focus{background-color:var(--geo-accent-hover, #0170a7);border-color:var(--geo-accent-hover, #0170a7)}.admin-modal .card{border:1px solid var(--geo-card-border, rgba(16, 24, 40, .08));border-radius:var(--geo-radius-lg, 8px);box-shadow:none}.admin-modal .card-header{background:var(--geo-header-bg, #f7f9fb);border-bottom:1px solid var(--geo-border, rgba(16, 24, 40, .08))}.admin-modal .card-header h6{font-size:.9rem;font-weight:600;color:var(--geo-text, #111827)}.profile-page{width:100%;max-width:none;margin:0;padding:.75rem 1rem 1rem;height:calc(100vh - 78px);min-height:0;box-sizing:border-box;display:flex;flex-direction:column}.profile-page--empty{max-width:480px;margin:0 auto;height:auto;display:block}.profile-layout{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:1rem;align-items:stretch;flex:1;min-height:0}.profile-sidebar{display:flex;flex-direction:column;gap:1rem;min-width:0;min-height:0;height:100%;overflow:hidden}.profile-sidebar>.profile-card,.profile-sidebar>.profile-contacts-section{flex-shrink:0}.profile-sidebar>.profile-action-history-section{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.profile-main{min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;gap:1rem;background:transparent;border:none;box-shadow:none;overflow:hidden}.profile-main-divider{display:none}.profile-card{border:1px solid var(--geo-card-border, rgba(16, 24, 40, .08));border-radius:var(--geo-radius-lg, 8px);overflow:hidden;background:var(--geo-card, #fff);box-shadow:var(--geo-card-shadow, 0 1px 2px rgba(16, 24, 40, .04))}.profile-card-header{display:flex;align-items:flex-start;gap:.85rem;padding:1rem 1rem .9rem;background:#f7f9fb;border-bottom:1px solid var(--geo-border, rgba(16, 24, 40, .08));position:relative}.profile-avatar{flex-shrink:0;width:48px;height:48px;border-radius:50%;background:#868686;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.05rem;font-weight:700;letter-spacing:.02em}.profile-header-text{flex:1;min-width:0;text-align:left;padding-right:4.5rem}.profile-display-name{font-size:1.05rem;font-weight:600;margin:0 0 .15rem;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-username{display:block;font-size:.8rem;color:var(--geo-text-muted, #5c6770);margin-bottom:.4rem}.profile-account-badge{display:inline-block;font-size:.7rem;font-weight:600;padding:.15rem .5rem;border-radius:999px;background:#eef1f5;color:#4b5563}.profile-account-badge--client{background:#d1e7dd;color:#0f5132}.profile-account-badge--analyst{background:#cff4fc;color:#055160}.profile-edit-btn{position:absolute;top:.85rem;right:.85rem;border-radius:var(--geo-radius-sm)}.profile-card-body{padding:.85rem 1rem 1rem}.profile-subtitle{color:var(--geo-text-muted, #5c6770);font-size:.8rem;margin-bottom:.75rem;text-align:left}.profile-fields{display:flex;flex-direction:column;gap:0;border:1px solid var(--geo-border, rgba(16, 24, 40, .08));border-radius:var(--geo-radius-lg);overflow:hidden;background:#fff}.profile-field{display:grid;grid-template-columns:110px minmax(0,1fr);gap:.5rem;align-items:center;padding:.65rem .75rem;border-bottom:1px solid var(--geo-border, rgba(16, 24, 40, .08));text-align:left;background:#fff}.profile-field:nth-child(2n){background:#fafbfc}.profile-field:last-child{border-bottom:none}.profile-field-label{display:flex;align-items:center;gap:.35rem;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--geo-text-muted, #5c6770);margin-bottom:0}.profile-field-label .MuiSvgIcon-root{font-size:.9rem}.profile-field-value{font-size:.9rem;color:var(--geo-text, #111827);margin:0;word-break:break-word;text-align:left;font-weight:500}.profile-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.85rem;padding-top:.85rem;border-top:1px solid var(--geo-border, rgba(16, 24, 40, .08))}.profile-actions--editing{justify-content:flex-end}.profile-actions--viewing{justify-content:flex-start;align-items:center}.profile-password-link{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;font-weight:600;color:var(--geo-accent, #0189CC);text-decoration:none}.profile-password-link:hover{color:var(--geo-accent-hover, #0170a7);text-decoration:none}.profile-empty-state{text-align:center;padding:3rem 1.5rem}.profile-empty-state .MuiSvgIcon-root{font-size:3rem;color:#adb5bd;margin-bottom:1rem}.profile-contacts-section{margin-top:0}.profile-action-history-section{overflow:hidden}.profile-action-history-header{padding:.85rem 1rem .7rem;border-bottom:1px solid var(--geo-border, rgba(16, 24, 40, .08));background:#f7f9fb;flex-shrink:0}.profile-action-history-loading{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1rem;color:#6c757d;font-size:.85rem;flex:1}.profile-action-history-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;padding:1.5rem 1rem;text-align:center;flex:1}.profile-action-history-empty .MuiSvgIcon-root{font-size:2rem;color:#ced4da}.profile-action-history-table-wrap{flex:1;min-height:0;overflow:auto}.profile-action-history-table{font-size:.8rem;margin-bottom:0}.profile-action-history-table thead th{position:sticky;top:0;z-index:1;background:#f8f9fa;border-bottom-width:1px;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6c757d;white-space:nowrap;padding:.55rem .75rem;vertical-align:middle}.profile-action-history-table tbody td{padding:.55rem .75rem;vertical-align:middle;border-bottom:1px solid rgba(0,0,0,.06)}.profile-action-history-table tbody tr:last-child td{border-bottom:none}.profile-action-history-table tbody tr:hover{background:var(--geo-row-hover, #E0E6EC)}.profile-action-history-action{font-weight:500;color:var(--geo-text, #111827);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;white-space:normal;text-align:center}.profile-action-history-time{color:var(--geo-text-muted, #5c6770);white-space:nowrap;font-size:.875rem}.profile-data-section{padding:0;display:flex;flex-direction:column;min-height:0;flex:1 1 0}.profile-data-section .card-header{flex-shrink:0}.profile-data-section--projects,.profile-data-section--lines{min-height:0}.profile-data-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.75rem;flex-shrink:0}.profile-data-loading{display:flex;align-items:center;gap:.75rem;padding:1.5rem .25rem;color:#6c757d;font-size:.9rem;flex:1}.profile-data-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2rem 1rem;text-align:center;flex:1}.profile-data-empty .MuiSvgIcon-root{font-size:2.25rem;color:#ced4da}.profile-table-card--fill{flex:1;min-height:0;display:flex;flex-direction:column}.profile-table-scroll{flex:1;min-height:0;overflow:auto}.profile-embedded-table{font-size:.9rem}.profile-embedded-table thead th{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6c757d;white-space:nowrap;vertical-align:middle;position:sticky;top:0;z-index:1;background:#f8f9fa}.profile-embedded-table tbody td{vertical-align:middle;white-space:nowrap}.profile-data-footer{margin:0;padding:.65rem 1rem;font-size:.8rem;color:var(--geo-text-muted, #5c6770);flex-shrink:0;border-top:1px solid var(--geo-border, rgba(16, 24, 40, .08))}.profile-data-footer a{color:var(--geo-accent, #0189CC);font-weight:600;text-decoration:none}.profile-data-footer a:hover{color:var(--geo-accent-hover, #0170a7)}.profile-contacts-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(0,0,0,.06);background:#fafbfc}.profile-section-title{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;margin:0 0 .35rem;color:var(--geo-text, #111827)}.profile-section-subtitle{margin:0;font-size:.78rem;color:var(--geo-text-muted, #5c6770)}.profile-contacts-loading{display:flex;align-items:center;gap:.75rem;padding:2rem 1.5rem;color:#6c757d;font-size:.9rem}.profile-contacts-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2.5rem 1.5rem;text-align:center}.profile-contacts-empty .MuiSvgIcon-root{font-size:2.5rem;color:#ced4da}.profile-contacts-table-wrap{overflow-x:auto}.profile-contacts-table{font-size:.925rem;min-width:560px;table-layout:fixed;width:100%}.profile-contacts-table thead th{background:#f8f9fa;border-bottom-width:1px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6c757d;white-space:nowrap;padding:.75rem 1.25rem}.profile-contacts-table thead th:nth-child(1){width:22%}.profile-contacts-table thead th:nth-child(2){width:28%}.profile-contacts-table thead th:nth-child(3){width:26%;min-width:160px}.profile-contacts-table thead th:nth-child(4){width:24%}.profile-contacts-table tbody td{padding:.9rem 1.25rem;vertical-align:middle;border-bottom:1px solid rgba(0,0,0,.06);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-contacts-table tbody td[data-label=Phone]{min-width:160px;overflow:visible;text-overflow:unset}.profile-contacts-table tbody tr:last-child td{border-bottom:none}.profile-contacts-table tbody tr:hover{background:var(--geo-row-hover, #E0E6EC)}.profile-contacts-actions{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.profile-contact-modal{background-color:#00000073}@media(max-width:992px){.profile-page{height:auto;min-height:calc(100vh - 78px)}.profile-layout{grid-template-columns:1fr;align-items:start}.profile-sidebar,.profile-main{height:auto;max-height:none;overflow:visible}.profile-sidebar>.profile-action-history-section{flex:none;min-height:260px}.profile-data-section{flex:none;min-height:280px}.profile-field{grid-template-columns:1fr;gap:.2rem}}@media(max-width:576px){.profile-page{padding:.75rem .5rem 1.5rem}.profile-card-header{flex-wrap:wrap;padding-top:3rem}.profile-edit-btn{top:1rem;right:1rem}.profile-data-section{padding:1rem}.profile-data-header,.profile-contacts-header{flex-direction:column;align-items:stretch}.profile-contacts-actions{justify-content:flex-start}.profile-contacts-table thead{display:none}.profile-contacts-table tbody tr{display:block;padding:1rem 1.25rem;border-bottom:1px solid rgba(0,0,0,.06)}.profile-contacts-table tbody tr:last-child{border-bottom:none}.profile-contacts-table{min-width:0;table-layout:auto}.profile-contacts-table tbody td{display:block;padding:.25rem 0;border:none;text-align:left;white-space:normal;overflow:visible;text-overflow:unset}.profile-contacts-table tbody td[data-label=Phone]{min-width:0}.profile-contacts-table tbody td:before{content:attr(data-label);display:block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6c757d;margin-bottom:.15rem}.profile-contacts-table tbody td.text-end{text-align:left!important;margin-top:.75rem}}.data-table-card{--data-table-row-hover: var(--geo-row-hover, #e8eef4);--data-table-header-bg: var(--geo-header-bg, #f7f9fb);--data-table-header-color: var(--geo-text-muted, #5c6770);--data-table-border: var(--geo-card-border, rgba(16, 24, 40, .08));--data-table-row-border: #eef1f5;--data-table-surface: var(--geo-card, #ffffff);border:1px solid var(--data-table-border);border-radius:var(--geo-radius-lg, 16px);box-shadow:var(--geo-card-shadow, 0 1px 2px rgba(16, 24, 40, .04));overflow:hidden;background:var(--data-table-surface)}.data-table-card.card{border:1px solid var(--data-table-border);border-radius:var(--geo-radius-lg, 16px);box-shadow:var(--geo-card-shadow, 0 1px 2px rgba(16, 24, 40, .04));background:var(--data-table-surface)}.data-table-wrap{position:relative;overflow-x:auto}.data-table-card .table{--bs-table-bg: transparent;--bs-table-color: var(--geo-text, #111827);--bs-table-border-color: var(--data-table-row-border);--bs-table-hover-bg: var(--data-table-row-hover);margin-bottom:0;font-size:1rem;color:var(--geo-text, #111827)}.data-table-card .table>:not(caption)>*>*{border-bottom-width:1px;border-color:var(--data-table-row-border);box-shadow:none}.data-table-card .table th{border-top:none;border-bottom:1px solid var(--data-table-border);font-weight:600;color:var(--data-table-header-color);font-size:.84rem;letter-spacing:.05em;text-transform:uppercase;padding:.7rem .9rem;text-align:center;vertical-align:middle;background-color:var(--data-table-header-bg);white-space:nowrap}.data-table-card .table td{vertical-align:middle;text-align:center;border-top:none;padding:.78rem .9rem;color:var(--geo-text, #111827)}.data-table-card .table tbody tr:last-child td{border-bottom:none}.data-table-card .table tbody tr:nth-child(2n) td{background-color:#fafbfc}.data-table-card .table tbody tr:nth-child(2n) .sticky-no-cell,.data-table-card .table tbody tr:nth-child(2n) .sticky-name-cell,.data-table-card .table tbody tr:nth-child(2n) .sticky-actions-cell{background-color:#fafbfc}.data-table-card .table th.sticky-name-header,.data-table-card .table td.sticky-name-cell,.data-table-card .table th.data-table-col-start,.data-table-card .table td.data-table-col-start{text-align:left}.data-table-card .table-hover tbody tr:hover td{background-color:var(--data-table-row-hover)}.data-table-card .data-table-row:hover{background-color:var(--data-table-row-hover)!important}.data-table-card .data-table-row{transition:background-color .12s ease}.data-table-card .sticky-thead{position:sticky;top:0;z-index:100}.data-table-card .sticky-thead th{background-color:var(--data-table-header-bg)}.data-table-card .sticky-no-header{position:sticky;left:0;z-index:102;min-width:60px;box-shadow:1px 0 0 var(--data-table-row-border);background-color:var(--data-table-header-bg)!important}.data-table-card .sticky-no-cell{position:sticky;left:0;z-index:2;min-width:60px;background-color:var(--data-table-surface);box-shadow:1px 0 0 var(--data-table-row-border);color:var(--geo-text-muted, #5c6770);font-variant-numeric:tabular-nums}.data-table-card .sticky-name-header{position:sticky;left:60px;z-index:103;min-width:150px;box-shadow:1px 0 0 var(--data-table-row-border);background-color:var(--data-table-header-bg)!important}.data-table-card .sticky-name-cell{position:sticky;left:60px;z-index:3;min-width:150px;background-color:var(--data-table-surface);box-shadow:1px 0 0 var(--data-table-row-border)}.data-table-card .sticky-actions-header{position:sticky;right:0;z-index:104;min-width:140px;box-shadow:-1px 0 0 var(--data-table-row-border);background-color:var(--data-table-header-bg)!important}.data-table-card .sticky-actions-cell{position:sticky;right:0;z-index:4;min-width:140px;background-color:var(--data-table-surface);box-shadow:-1px 0 0 var(--data-table-row-border)}.data-table-card .table-hover tbody tr:hover .sticky-no-cell,.data-table-card .table-hover tbody tr:hover .sticky-name-cell,.data-table-card .table-hover tbody tr:hover .sticky-actions-cell{background-color:var(--data-table-row-hover)}.data-table-wrap.is-scrolled .sticky-name-header:after,.data-table-wrap.is-scrolled .sticky-name-cell:after{content:"";position:absolute;top:0;right:-10px;bottom:0;width:10px;background:linear-gradient(to right,rgba(16,24,40,.06),transparent);pointer-events:none;z-index:1}.data-table-wrap.can-scroll-right .sticky-actions-header:before,.data-table-wrap.can-scroll-right .sticky-actions-cell:before{content:"";position:absolute;top:0;left:-10px;bottom:0;width:10px;background:linear-gradient(to left,rgba(16,24,40,.06),transparent);pointer-events:none;z-index:1}.data-table-card .sticky-no-header,.data-table-card .sticky-no-cell,.data-table-card .sticky-name-header,.data-table-card .sticky-name-cell,.data-table-card .sticky-actions-header,.data-table-card .sticky-actions-cell{isolation:isolate}.data-table-id{display:inline-block;max-width:11rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--geo-font-mono, ui-monospace, Menlo, Consolas, monospace);font-size:.875rem}.data-table-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.65rem;padding:.15rem .5rem;border-radius:999px;background:var(--geo-accent-soft, rgba(1, 137, 204, .12));color:var(--geo-accent-active, #015d8b);font-size:.875rem}.data-table-icon-btn{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--geo-radius-sm)!important;border-width:1px;line-height:1}.data-table-actions{display:inline-flex;align-items:center;justify-content:center;gap:.35rem}.btn-group>.btn-group-popover-wrap:not(:first-child)>.btn{margin-left:calc(var(--bs-border-width, 1px) * -1);border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group-popover-wrap:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.data-table-empty{text-align:center;padding:3.25rem 1.5rem;color:var(--geo-text-muted, #6c757d)}.data-table-empty__icon{opacity:.35;margin-bottom:.75rem}.data-table-empty__title{font-size:1rem;font-weight:600;color:var(--geo-text, #34495e);margin-bottom:.35rem}.data-table-empty__subtitle{font-size:.875rem;margin-bottom:0;color:var(--geo-text-muted, #6c757d)}.data-table-mobile-item{padding:1rem 1.15rem;border-bottom:1px solid var(--data-table-row-border)}.data-table-mobile-item:last-child{border-bottom:none}.data-table-mobile-label{display:block;margin-bottom:.2rem;font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--geo-text-muted, #6c757d)}@media(max-width:767.98px){.data-table-card .data-table-mobile-list>.border-bottom:last-child{border-bottom:none!important}}.data-table-card>.card-header{background:var(--geo-header-bg, #f7f9fb);border-bottom:1px solid var(--geo-card-border, rgba(16, 24, 40, .08));padding:.75rem 1rem}.data-table-card>.card-header h5{font-size:.95rem;font-weight:600;letter-spacing:-.01em;color:var(--geo-text, #111827)}.data-table-card>.card-header .btn-sm{border-radius:var(--geo-radius-sm)}.projects-table th.projects-table-col{width:10%}.projects-table th.projects-table-col-no{width:8%}.projects-table th.projects-table-col-name{width:25%}.projects-table th.projects-table-col-asce{width:12%}.projects-table th.projects-table-col-tags{width:15%}.data-table-card .projects-table .sticky-name-header,.data-table-card .projects-table .sticky-name-cell{min-width:255px}.data-table-card .projects-table th,.data-table-card .projects-table td{text-align:center;vertical-align:middle}.data-table-card .table.projects-table th.sticky-name-header,.data-table-card .table.projects-table td.sticky-name-cell{text-align:center!important}.data-table-card .projects-table td .d-flex{justify-content:center}.projects-table .projects-table-row-clickable,.projects-table .projects-table-cell-clickable,.lines-table-row-clickable,.lines-table-cell-clickable{cursor:pointer}.lines-table th.lines-table-col-name,.lines-table td.lines-table-col-name,.lines-table th.lines-table-col-project,.lines-table td.lines-table-col-project{width:18%;min-width:280px}.data-table-card .lines-table .sticky-no-header,.data-table-card .lines-table .sticky-no-cell{min-width:140px}.data-table-card .lines-table .sticky-name-header,.data-table-card .lines-table .sticky-name-cell{min-width:280px;left:140px}.lines-table-th-actions,.lines-table-td-actions{min-width:180px}.lines-table-warning-trigger{cursor:help;display:inline-flex;align-items:center}.lines-table-analyze-btn:disabled{pointer-events:none}.client-modal-backdrop{background-color:#00000080}.client-modal-name-section{flex:0 0 50%;display:flex;justify-content:flex-end;align-items:center}.client-modal-name-input{flex:1}.client-modal-logo-section{flex:0 0 50%;display:flex;justify-content:center;align-items:center;position:relative;z-index:10000}.client-modal-logo-wrap{position:relative;display:inline-block}.client-modal-logo-box{width:180px;height:180px;border-radius:var(--geo-radius-lg, 8px);border:2px solid var(--geo-input-border, rgba(16, 24, 40, .12));overflow:hidden;background-color:var(--geo-header-bg, #f7f9fb);display:flex;align-items:center;justify-content:center;position:relative}.client-modal-logo-img{width:100%;height:100%;object-fit:cover}.client-modal-logo-edit-btn{position:absolute;bottom:0;left:0;border-radius:20px;padding:4px 8px;font-size:12px;box-shadow:0 2px 4px #00000026;border:1px solid #dee2e6;display:flex;align-items:center;gap:4px;z-index:5}.client-modal-logo-menu{position:absolute;top:100%;left:0;margin-top:8px;background-color:#fff;border:1px solid #dee2e6;border-radius:var(--geo-radius-sm);box-shadow:0 4px 12px #00000026;z-index:9999;min-width:160px;padding:4px 0}.client-modal-logo-menu-arrow{position:absolute;top:-6px;left:20px;width:12px;height:12px;background-color:#fff;border-left:1px solid #dee2e6;border-top:1px solid #dee2e6;transform:rotate(45deg)}.client-modal-logo-upload-input{display:none}.client-modal-logo-menu-btn{border:none;border-radius:0;padding:8px 16px;background-color:transparent;color:#212529}.client-modal-logo-menu-btn:hover{background-color:#f8f9fa}.client-modal-logo-menu-btn-remove{color:#dc3545}.client-modal-logo-menu-btn-remove:disabled{color:#adb5bd}.client-modal-logo-menu-btn-remove:hover:not(:disabled){background-color:#f8f9fa}.client-modal-logo-menu-divider{border-top:1px solid #dee2e6;margin:4px 0}.client-modal-contacts-dropdown{max-height:300px;overflow-y:auto;z-index:10000}.client-modal-contacts-dropdown-item{cursor:pointer}.client-modal-contacts-table-wrap{max-height:300px;overflow-y:auto}.client-modal-contacts-thead{z-index:100}.client-modal-contacts-th-actions{width:100px}.project-card-col{flex:0 0 auto;max-width:100%;min-width:0}@media(min-width:1200px){.project-card-col{flex:0 0 20%;max-width:20%}}.project-card{cursor:pointer;border-radius:var(--geo-radius-lg, 8px);background:var(--geo-card-gradient, linear-gradient(180deg, #ffffff 0%, #f5f7fb 100%));transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.project-card:hover{transform:translateY(-2px);box-shadow:0 2px 6px #1018280f,0 16px 36px #1018281a!important}.project-card-body{min-height:220px;padding:1.15rem .95rem 0rem;gap:1.5rem;justify-content:center}.project-card-title-wrap{flex:0 0 auto;width:100%;min-width:0}.project-card-title-inner{width:100%;min-width:0;text-align:center}.project-card-title{font-size:1.9rem;line-height:1.2;margin:0;width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;padding-top:1rem!important;padding-left:1rem!important;padding-right:1rem!important}.project-card-footer{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:100%}.project-card-id-row{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;max-width:100%;min-width:0}.project-card-id{font-size:.9rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-card-copy-id{color:#6c757d;line-height:1;flex-shrink:0}.project-card-copy-id:hover{color:var(--geo-accent, #0189CC)}.project-card .copy-id-control-text{font-size:.9rem}.project-card-counts{display:flex;justify-content:center;gap:.85rem}.project-card-meta{font-size:.85rem}.project-card-badge{border-radius:12px;font-size:.85rem;font-weight:500}.project-card-badges,.project-card-tags{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.25rem;width:100%;text-align:center;min-height:1.35rem}.project-card-tags .text-muted{width:100%;text-align:center;line-height:1.35rem}.kanban-board{display:flex;align-items:stretch;gap:8px;overflow-x:auto;width:100%;height:calc(100vh - 170px);min-height:420px;text-align:left}.kanban-column{--kanban-tone: var(--geo-text-muted, #5c6770);display:flex;flex-direction:column;flex:1 1 0;min-width:280px;height:100%;background:#e4e9ef;border:1px solid var(--geo-card-border, rgba(16, 24, 40, .08));border-radius:var(--geo-radius-lg, 8px);text-align:left}.kanban-column[data-tone=neutral]{--kanban-tone: #6b778c}.kanban-column[data-tone=info]{--kanban-tone: var(--geo-accent, #0189CC)}.kanban-column[data-tone=warning]{--kanban-tone: var(--geo-warning, #c47a12)}.kanban-column[data-tone=danger]{--kanban-tone: var(--geo-danger, #b42318)}.kanban-column[data-tone=success]{--kanban-tone: var(--geo-success, #1f7a4d)}.kanban-column-header{display:flex;align-items:center;gap:8px;padding:12px 10px 8px;flex-shrink:0}.kanban-column-dot{width:8px;height:8px;border-radius:50%;background:var(--kanban-tone);flex-shrink:0}.kanban-column-title{margin:0;font-size:14px;font-weight:600;color:var(--geo-text, #000000);text-align:left}.kanban-column-count{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#dfe1e6;color:#5e6c84;font-size:12px;font-weight:600;line-height:20px;text-align:center}.kanban-column-body{display:flex;flex-direction:column;gap:10px;overflow-y:auto;padding:0 10px 10px;flex:1 1 auto;min-height:80px}.kanban-column.is-over .kanban-column-body{background:#0052cc0f;border-radius:4px}.kanban-column-empty{margin:12px 4px;font-size:13px;color:#7a869a;text-align:left}.kanban-card-wrap{text-align:left}.kanban-card{display:flex;flex-direction:column;align-items:stretch;min-height:128px;background:var(--geo-card-gradient, linear-gradient(180deg, #ffffff 0%, #f5f7fb 100%));border:1px solid var(--geo-card-border, rgba(16, 24, 40, .08));border-radius:var(--geo-radius-lg, 8px);box-shadow:var(--geo-card-shadow, 0 1px 2px rgba(16, 24, 40, .04), 0 10px 28px rgba(16, 24, 40, .07));padding:16px;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;text-align:left}.kanban-card:hover{background:var(--geo-card-gradient, linear-gradient(180deg, #ffffff 0%, #f5f7fb 100%));box-shadow:var(--geo-card-shadow-hover, 0 2px 6px rgba(16, 24, 40, .06), 0 16px 36px rgba(16, 24, 40, .1))}.kanban-card.is-dragging{opacity:.55}.kanban-card-title{width:100%;margin:0 0 20px;flex:1 1 auto;font-size:16px;font-weight:700;color:#172b4d;line-height:1.4;text-align:left;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-box-align:start;-webkit-line-clamp:3;line-clamp:3}.kanban-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;width:100%}.kanban-card-key{display:inline-flex;align-items:center;gap:4px;min-width:0;flex:1 1 auto}.kanban-type-icon{display:inline-flex;flex-shrink:0;line-height:0}.kanban-type-icon.task{color:#4bade8}.kanban-type-icon.story{color:#36b37e}.kanban-card-id{color:#5e6c84;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;text-align:left}.kanban-card-footer-right{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.kanban-avatar{width:28px;height:28px;border-radius:50%;color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:.02em}.kanban-priority-icon{display:inline-flex;line-height:0}.kanban-priority-icon.very_high,.kanban-priority-icon.high{color:#de350b}.kanban-priority-icon.medium{color:#ff8b00}.kanban-priority-icon.low,.kanban-priority-icon.very_low{color:#00875a}.kanban-create{margin:0 8px 8px;border:0;background:transparent;color:#5e6c84;text-align:left;padding:8px 10px;border-radius:3px;font-size:14px;font-weight:500}.kanban-create:hover{background:#dfe1e6;color:#172b4d}.kanban-drag-overlay .kanban-card{box-shadow:0 8px 16px #091e4240;cursor:grabbing}.kanban-truncated-note{margin-top:8px;text-align:left}.kanban-page{padding-bottom:16px;text-align:left}.striped-progress{--progress-fill: var(--geo-accent, #0189CC);--progress-track: #e8edf2;--progress-stripe: rgba(255, 255, 255, .28);display:block;width:100%;height:8px;border-radius:999px;background:var(--progress-track);overflow:hidden;position:relative}.striped-progress--dense{height:6px}.striped-progress--danger{--progress-fill: var(--geo-danger, #b42318);--progress-track: rgba(180, 35, 24, .12)}.striped-progress--success{--progress-fill: var(--geo-success, #1f7a4d)}.striped-progress--warning{--progress-fill: var(--geo-warning, #c47a12)}.striped-progress--dark{--progress-track: rgba(255, 255, 255, .22)}.striped-progress__fill{position:relative;height:100%;border-radius:999px;background-color:var(--progress-fill);overflow:hidden;transition:width .35s ease}.striped-progress__fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(-55deg,var(--progress-stripe) 0,var(--progress-stripe) 7px,transparent 7px,transparent 14px);pointer-events:none}.striped-progress__fill--animated:after{animation:striped-progress-stripe .9s linear infinite}@keyframes striped-progress-stripe{0%{background-position:0 0}to{background-position:14px 0}}@media(prefers-reduced-motion:reduce){.striped-progress__fill--animated:after{animation:none}}.progress-meter{width:100%;min-width:0}.progress-meter--framed{background:var(--geo-card, #fff);border:1px solid var(--geo-card-border, rgba(16, 24, 40, .08));border-radius:12px;padding:14px 18px 12px}.progress-meter-header{position:relative;display:flex;align-items:center;justify-content:center;min-height:1.25rem;margin-bottom:10px;padding:0 3.25rem}.progress-meter-stage{display:block;width:100%;text-align:center;color:var(--geo-text-muted, #6b7280);font-size:.875rem;line-height:1.4;white-space:pre-line;overflow-wrap:break-word}.progress-meter-percent{position:absolute;right:0;top:50%;transform:translateY(-50%);font-weight:700;font-size:.875rem;color:var(--geo-text, #111827);font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap}.progress-meter-detail{margin-top:10px;font-size:.8125rem;line-height:1.4;text-align:center;color:var(--geo-text-muted, #6b7280)}.progress-meter--dark .progress-meter-stage,.progress-meter--dark .progress-meter-percent,.progress-meter--dark .progress-meter-detail{color:#f8f9fa}.progress-meter--dark .progress-meter-stage,.progress-meter--dark .progress-meter-detail{color:#ced4da}.progress-meter-error{margin-top:8px;font-size:.8125rem;text-align:center;color:var(--geo-danger, #b42318)}.progress-meter--compact .progress-meter-header{margin-bottom:8px;min-height:1.1rem;padding:0 2.75rem}.progress-meter--compact .progress-meter-stage,.progress-meter--compact .progress-meter-percent{font-size:.8125rem}.progress-meter--dense{display:flex;align-items:center;gap:8px}.progress-meter--dense .progress-meter-header{position:static;display:contents;margin:0;padding:0;min-height:0}.progress-meter--dense .progress-meter-stage{display:none}.progress-meter--dense .progress-meter-percent{position:static;transform:none;font-size:.75rem;order:2;flex-shrink:0}.progress-meter--dense .striped-progress{flex:1;min-width:0;order:1}.progress-meter--dense .progress-meter-detail,.progress-meter--dense .progress-meter-error{display:none}.task-busy-label{display:inline-flex;align-items:center;gap:.4rem;font-variant-numeric:tabular-nums}.task-busy-label__spinner{width:.7rem;height:.7rem;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:task-busy-spin .7s linear infinite;flex-shrink:0}@keyframes task-busy-spin{to{transform:rotate(360deg)}}.analysis-header-label--live{display:inline-flex;align-items:center;gap:.4rem;font-variant-numeric:tabular-nums;color:var(--geo-accent, #0189cc)}.analysis-header-label--live:before{content:"";width:.7rem;height:.7rem;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:task-busy-spin .7s linear infinite;flex-shrink:0}.page-toolbar-wrap{padding:.85rem 0 1rem;background-color:transparent;border-bottom:none}.page-toolbar-wrap h4{font-size:1.2rem;letter-spacing:-.02em}.page-toolbar-badge-mobile,.page-toolbar-badge-desktop{border:1px solid var(--geo-border, rgba(16, 24, 40, .08));background:var(--geo-card, #fff)!important;color:var(--geo-text-muted, #5c6770)!important;font-weight:600;border-radius:999px}.page-toolbar-badge-mobile,.page-toolbar-badge-desktop{border-radius:999px}.page-toolbar-search-wrap{max-width:500px}.page-toolbar-search-input{border-radius:var(--geo-radius-sm, 4px) 0 0 var(--geo-radius-sm, 4px);border-color:var(--geo-input-border, rgba(16, 24, 40, .12))}.page-toolbar-search-btn{border-radius:0 var(--geo-radius-sm, 4px) var(--geo-radius-sm, 4px) 0}.page-toolbar-sort-toggle{border-radius:var(--geo-radius-sm, 4px)}.page-toolbar-desktop{flex-wrap:wrap}.page-toolbar-view-toggle{flex-shrink:0}.list-pagination{position:fixed;right:1rem;bottom:1rem;z-index:1000}.list-pagination-card{border:1px solid var(--geo-card-border, rgba(16, 24, 40, .08));border-radius:var(--geo-radius-lg, 8px);background:var(--geo-card, #fff);box-shadow:var(--geo-card-shadow, 0 1px 2px rgba(16, 24, 40, .04), 0 10px 28px rgba(16, 24, 40, .07))}.list-pagination-inner{display:flex;align-items:center;gap:.85rem;padding:.65rem .85rem}.list-pagination-size{display:flex;align-items:center;gap:.45rem}.list-pagination-label,.list-pagination-range{font-size:.8rem;font-weight:500;color:var(--geo-text-muted, #5c6770);white-space:nowrap}.list-pagination-size .form-select{width:auto;min-width:4.25rem;border-radius:var(--geo-radius-sm);border-color:var(--geo-border, rgba(16, 24, 40, .12))}.list-pagination-nav{display:flex;align-items:center;gap:.3rem}.list-pagination--inline{position:static;right:auto;bottom:auto;display:flex;justify-content:flex-end;width:100%}.terean-2d-modal{--qf-blue: var(--geo-accent, #0189CC);--qf-blue-soft: var(--geo-accent-soft, rgba(1, 137, 204, .12));--qf-blue-border: rgba(1, 137, 204, .22);--qf-surface: var(--geo-header-bg, #f7f9fb);--qf-card: var(--geo-card, #ffffff);--qf-text: var(--geo-text, #000000);--qf-muted: var(--geo-text-muted, #5c6770);--qf-radius: var(--geo-radius-sm, 4px);--qf-gap: .75rem}.terean-2d-modal .modal-dialog{max-width:720px}.terean-2d-modal .modal-content{border:none;border-radius:10px;overflow:hidden;box-shadow:0 18px 48px #1a1f2438;color:var(--qf-text);text-align:left;background:var(--qf-surface)}.terean-2d-modal .modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1rem;background:var(--qf-blue);color:#fff;border-bottom:none}.terean-2d-modal .modal-title{margin:0;font-size:1.15rem;font-weight:600;letter-spacing:.01em;color:#fff}.terean-2d-modal .btn-close{filter:invert(1) grayscale(100%) brightness(200%);opacity:.85}.terean-2d-modal .btn-close:hover{opacity:1}.terean-2d-modal .modal-body{padding:var(--qf-gap);display:flex;flex-direction:column;gap:var(--qf-gap);background:linear-gradient(180deg,#eef2f5 0%,var(--qf-surface) 50%,#e8edf1 100%)}.terean-2d-modal .modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.6rem;padding:.75rem .85rem;background:var(--qf-card);border-top:1px solid var(--qf-blue-border)}.terean-2d-modal .modal-footer .btn-primary{min-width:8.5rem;background-color:var(--qf-blue);border-color:var(--qf-blue)}.terean-2d-modal .modal-footer .btn-primary:hover:not(:disabled){background-color:#014d73;border-color:#014d73}.terean-2d-modal .modal-footer .btn-primary:disabled{background-color:var(--qf-blue);border-color:var(--qf-blue);opacity:.55}.terean-2d-modal .modal-footer .btn-outline-secondary{border-color:#c9d3da;color:var(--qf-muted)}.terean-2d-modal__banner{margin:0;padding:.55rem .75rem;border-radius:6px;font-size:.85rem;line-height:1.4;border:1px solid transparent}.terean-2d-modal__banner--muted{background:#eef1f3;border-color:#d9e0e5;color:var(--qf-muted)}.terean-2d-modal__banner--danger{background:#fff5f5;border-color:#f5c6cb;color:#721c24}.terean-2d-modal__section{background:var(--qf-card);border:1px solid var(--qf-blue-border);border-radius:var(--qf-radius);padding:.75rem .85rem}.terean-2d-modal__section-title{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:0 0 .65rem;font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--qf-blue)}.terean-2d-modal__section-hint{margin:-.25rem 0 .65rem;color:var(--qf-muted);font-size:.8rem;line-height:1.35}.terean-2d-modal__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.65rem .75rem;align-items:start}.terean-2d-modal__grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.terean-2d-modal__grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.terean-2d-modal__grid>div{display:flex;flex-direction:column;min-width:0}.terean-2d-modal__grid>div>.form-control,.terean-2d-modal__grid>div>.form-select{margin-top:auto}.terean-2d-modal__field{display:flex;flex-direction:column;min-width:0;margin-bottom:.65rem}.terean-2d-modal__field:last-child{margin-bottom:0}.terean-2d-modal__file-list{list-style:none;margin:0;padding:.35rem .5rem;max-height:8.5rem;overflow:auto;border:1px solid #c9d3da;border-radius:6px;background:#fbfcfd}.terean-2d-modal__file-list li{font-size:.8rem;line-height:1.35;color:var(--qf-text);padding:.18rem 0;word-break:break-all}.terean-2d-modal__file-list li+li{border-top:1px solid #edf1f3}.terean-2d-modal .form-label{font-size:.78rem;font-weight:500;color:var(--qf-muted);margin-bottom:.2rem;text-align:left}.terean-2d-modal .form-control,.terean-2d-modal .form-select{font-size:.875rem;padding:.35rem .5rem;border-color:#c9d3da;border-radius:6px;text-align:left}.terean-2d-modal .form-control:focus,.terean-2d-modal .form-select:focus{border-color:var(--qf-blue);box-shadow:0 0 0 .15rem #0166982e}.terean-2d-modal .form-check-label{font-size:.8rem;color:var(--qf-muted)}.terean-2d-modal .form-check-input:checked{background-color:var(--qf-blue);border-color:var(--qf-blue)}.terean-2d-modal .form-check-input:focus{box-shadow:0 0 0 .15rem #0166982e}@media(max-width:575.98px){.terean-2d-modal__grid--2,.terean-2d-modal__grid--3{grid-template-columns:1fr}.terean-2d-modal .modal-footer{justify-content:stretch}.terean-2d-modal .modal-footer .btn{flex:1 1 auto}}.project-header{display:flex;flex-direction:column;gap:.85rem}.project-header-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-width:0}.project-header-title-block{display:flex;align-items:center;gap:.75rem;min-width:0}.project-header-title{margin:0;font-size:1.35rem;font-weight:650;letter-spacing:-.02em;color:var(--geo-text, #111827);line-height:1.25}.project-header-id-row{display:flex;align-items:center;gap:.2rem;min-width:0;flex-shrink:1}.project-header-id{max-width:16rem;font-size:.78rem;font-weight:500;color:var(--geo-text-muted, #5c6770);font-family:var(--geo-font-mono, ui-monospace, Menlo, Consolas, monospace);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-header-copy-id{line-height:1;padding:0;opacity:.7;color:var(--geo-text-muted, #5c6770);flex-shrink:0}.project-header-copy-id:hover{opacity:1;color:var(--geo-accent, #0189CC)}.project-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.4rem;flex-shrink:0}.project-header-actions .btn{border-radius:var(--geo-radius-sm)}.project-header-card{border:1px solid var(--geo-card-border, rgba(16, 24, 40, .08));border-radius:var(--geo-radius-lg, 16px);background:var(--geo-card, #fff);box-shadow:var(--geo-card-shadow, 0 1px 2px rgba(16, 24, 40, .04));overflow:hidden}.project-header-metrics{display:flex;flex-wrap:wrap;padding:.2rem .4rem .35rem}.project-header-cell{flex:1 1 132px;min-width:0;max-width:100%;padding:.9rem 1rem;text-align:center}.project-header-label{display:block;margin-bottom:.3rem;font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--geo-text-muted, #5c6770)}.project-header-value{display:block;font-size:.9rem;font-weight:600;color:var(--geo-text, #111827);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-header-metrics .badge{font-size:.75rem;font-weight:600}.project-header-alert{margin:0 1.25rem 1.1rem;border-radius:var(--geo-radius-lg)}@media(max-width:991.98px){.project-header-top{flex-direction:column;align-items:flex-start}.project-header-title-block{flex-wrap:wrap;width:100%}.project-header-actions{justify-content:flex-start;width:100%}}.copy-id-control{max-width:100%;min-width:0}.copy-id-control-text{font-size:.8rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-id-control-btn{color:#6c757d;line-height:1;flex-shrink:0}.copy-id-control-btn.btn-link{color:#6c757d}.copy-id-control-btn:hover,.copy-id-control-btn.btn-link:hover{color:var(--geo-accent, #0189CC)}.line-drag-handle{cursor:grab;line-height:1}.line-drag-handle:active{cursor:grabbing}.lines-table-saving-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff73;z-index:50;pointer-events:none}.lines-table .sticky-actions-header,.lines-table .sticky-actions-cell{min-width:180px}.data-table-card.lines-table .sticky-no-header,.data-table-card.lines-table .sticky-no-cell{min-width:160px}.data-table-card.lines-table .sticky-name-header,.data-table-card.lines-table .sticky-name-cell{left:160px}.context-menu{background:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 2px 8px #00000026;min-width:180px;padding:4px 0;font-size:14px}.context-menu-item{display:flex;align-items:center;width:100%;padding:8px 16px;border:none;background:none;text-align:left;cursor:pointer;font-size:14px;color:#333;transition:background-color .15s}.context-menu-item:hover:not(.disabled){background-color:#f0f0f0}.context-menu-item:active:not(.disabled){background-color:#e0e0e0}.context-menu-item.disabled{opacity:.5;cursor:not-allowed}.context-menu-icon{margin-right:8px;display:flex;align-items:center;font-size:16px}.files-table .sticky-name-header,.files-table .sticky-name-cell{min-width:180px;max-width:220px}.files-table .sticky-name-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.files-size-col{min-width:100px;white-space:nowrap}.files-type-col{min-width:140px;white-space:nowrap}.files-table .sticky-actions-header,.files-table .sticky-actions-cell{min-width:160px}.reports-table .sticky-name-header,.reports-table .sticky-name-cell{min-width:260px;max-width:none}.reports-table .reports-filename-cell{overflow:visible;text-overflow:unset;white-space:normal;word-break:break-word}.reports-table .reports-filename-full{font-weight:600;line-height:1.35}.reports-generated-col,.reports-user-col{min-width:140px;white-space:nowrap}.reports-table .reports-table-cell-clickable{cursor:pointer}.reports-table .sticky-actions-header,.reports-table .sticky-actions-cell{min-width:180px}.reports-detail-list dt{font-weight:600;color:#6c757d}.reports-detail-list dd{margin-bottom:.75rem}.sortable-row-td-index{width:60px;min-width:60px}.sortable-row-td-xyzd{width:100px;min-width:100px}.sortable-row-td-actions{width:80px;min-width:80px}.sortable-row-input,.sortable-row-distance{font-size:14px}.sortable-row-delete-btn{font-size:12px;padding:4px 8px}.edit-geometry-modal-backdrop{background-color:#00000080}.edit-geometry-modal-dialog{max-width:700px}.edit-geometry-modal-input-peak{width:120px}.edit-geometry-modal-select-method{width:150px}.edit-geometry-modal-table-wrap{max-height:400px;overflow-y:auto}.edit-geometry-modal-th-index{width:60px;min-width:60px}.edit-geometry-modal-th-xyzd{width:100px;min-width:100px}.edit-geometry-modal-th-actions{width:80px;min-width:80px}.generate-lines-modal .MuiDialogTitle-root{padding-bottom:8px}.generate-lines-modal__subtitle{margin:4px 0 0;color:#6c757d;font-size:.875rem;font-weight:400;line-height:1.4}.generate-lines-modal__stepper{display:flex;gap:8px;margin:14px 0 0}.generate-lines-modal__step-pill{flex:1;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--geo-radius-sm);border:1px solid rgba(0,0,0,.08);background:#fafbfc;color:#6c757d;font-size:.8125rem;font-weight:600}.generate-lines-modal__step-pill.is-active{border-color:var(--geo-accent, #0189CC);background:var(--geo-accent-soft, rgba(1, 137, 204, .12));color:var(--geo-accent, #0189CC)}.generate-lines-modal__step-pill.is-done{border-color:#198754;background:#e8f6ee;color:#198754}.generate-lines-modal__step-num{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;background:#00000014;color:inherit;flex-shrink:0}.generate-lines-modal__step-pill.is-active .generate-lines-modal__step-num{background:var(--geo-accent, #0189CC);color:#fff}.generate-lines-modal__step-pill.is-done .generate-lines-modal__step-num{background:#198754;color:#fff}.generate-lines-modal__dropzone{margin-top:16px;border:2px dashed rgba(1,137,204,.45);border-radius:12px;padding:32px 20px;text-align:center;background:var(--geo-accent-soft, rgba(1, 137, 204, .12));cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.generate-lines-modal__dropzone:hover,.generate-lines-modal__dropzone.is-dragover{border-color:var(--geo-accent, #0189CC);background:var(--geo-accent-soft, rgba(1, 137, 204, .12));box-shadow:inset 0 0 0 1px #0189cc26}.generate-lines-modal__dropzone.is-disabled{opacity:.65;pointer-events:none}.generate-lines-modal__drop-icon{width:52px;height:52px;margin:0 auto 12px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--geo-accent, #0189CC);color:#fff}.generate-lines-modal__dropzone h6{margin:0 0 4px;font-weight:700;color:#212529}.generate-lines-modal__dropzone p{margin:0;font-size:.8125rem;color:#6c757d}.generate-lines-modal .generate-lines-records{margin-top:16px}.generate-lines-modal .generate-lines-records .card-header{background:#fff;border-bottom:1px solid rgba(0,0,0,.08);padding:.85rem 1rem}.generate-lines-modal .generate-lines-records .card-header h5{font-size:1rem;font-weight:700;color:#343a40}.generate-lines-modal .generate-lines-records .table-responsive{max-height:280px}.generate-lines-modal .generate-lines-records .col-size,.generate-lines-modal .generate-lines-records td.col-size{min-width:96px;width:96px;white-space:nowrap}.generate-lines-modal .generate-lines-records .sticky-actions-header,.generate-lines-modal .generate-lines-records .sticky-actions-cell{min-width:64px;width:64px}.generate-lines-modal .generate-lines-records .size-stack{display:inline-flex;flex-direction:column;line-height:1.2}.generate-lines-modal .generate-lines-records .size-stack__value{font-weight:600;color:#212529}.generate-lines-modal .generate-lines-records .size-stack__unit{font-size:.75rem;color:#6c757d}.generate-lines-modal .generate-lines-records .badge.bg-info{background-color:var(--geo-accent, #0189CC)!important;font-weight:600;padding:.35em .65em;border-radius:.375rem}.generate-lines-modal .generate-lines-records .upload-inline-progress{min-width:72px}.generate-lines-modal__summary-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.generate-lines-modal__section{margin-bottom:16px}.generate-lines-modal__section-title{font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6c757d;margin-bottom:8px}.generate-lines-modal__fields-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.generate-lines-modal__fields-row--2{grid-template-columns:repeat(2,minmax(0,1fr))}.generate-lines-modal__advanced-row{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:8px}.generate-lines-modal__advanced-panel{margin-top:10px;padding:12px;border:1px solid rgba(1,137,204,.2);border-radius:var(--geo-radius-sm);background:#f8fbff}.generate-lines-modal__advanced-panel .generate-lines-modal__fields-row{margin-bottom:8px}@media(max-width:720px){.generate-lines-modal__fields-row,.generate-lines-modal__fields-row--2{grid-template-columns:1fr}.generate-lines-modal__stepper{flex-direction:column}}.generate-lines-modal__preview-table,.generate-lines-modal .generate-lines-preview-table{margin-top:0}.generate-lines-modal .generate-lines-preview-table .table-responsive{max-height:220px}.generate-lines-modal .generate-lines-preview-table .badge.bg-info{background-color:var(--geo-accent, #0189CC)!important;font-weight:600;padding:.35em .65em;border-radius:.375rem}.generate-lines-modal__created-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.generate-lines-modal .MuiDialogActions-root .MuiButton-root{text-transform:uppercase;font-weight:600;letter-spacing:.02em}.blank-record-banner{display:flex;align-items:center;gap:12px;margin:12px 16px 0;padding:12px 14px;background-color:#fbfbfd;border:1px solid #ebe6f2;border-left:4px solid #6f42c1;border-radius:8px}.blank-record-banner__icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:50%;background-color:#f0ebfa;color:#6f42c1}.blank-record-banner__text{display:flex;flex-direction:column;line-height:1.35}.blank-record-banner__title{font-size:.9rem;font-weight:600;color:#2b2540}.blank-record-banner__subtitle{font-size:.82rem;color:#6c757d}.blank-record-banner__subtitle strong{color:#2b2540;font-weight:600}.blank-status{display:inline-flex;flex-direction:column;align-items:center;gap:4px}.blank-status__pill{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:999px;font-size:.72rem;font-weight:600;line-height:1.4;white-space:nowrap}.blank-status__pill--warning{background-color:#fdf4e3;color:#a5741b;border:1px solid #f2e2bf}.blank-status__pill--ok{background-color:#e8f6ee;color:#1e7e46;border:1px solid #cdebd8}.blank-status__action{border:none;background:none;padding:0;font-size:.72rem;font-weight:500;color:#6f42c1;cursor:pointer}.blank-status__action:hover{color:#59349b;text-decoration:underline}.records-table-row--blank td{background-color:#fdf8f0}.records-table .table-hover tbody tr.records-table-row--blank:hover td,.records-table .table-hover tbody tr.records-table-row--blank:hover .sticky-no-cell,.records-table .table-hover tbody tr.records-table-row--blank:hover .sticky-name-cell,.records-table .table-hover tbody tr.records-table-row--blank:hover .sticky-actions-cell{background-color:#f8efdf}.records-table-row--blank .sticky-no-cell,.records-table-row--blank .sticky-name-cell,.records-table-row--blank .sticky-actions-cell{background-color:#fdf8f0}.records-table .sticky-name-header,.records-table .sticky-name-cell{min-width:200px}.line-modal-backdrop{background-color:#00000080}.line-modal-dialog{max-width:95vw;width:1400px}.line-modal-label{min-width:120px}.line-modal-dialog .modal-body>.row:first-child,.line-modal-dialog .modal-body>.row:first-child .card-body>.row.g-3{margin-top:0!important}.line-modal-dialog .modal-body>.row:first-child .card-body>.row.g-3>[class*=col-]:nth-child(-n+3){margin-top:0}.line-modal-records-wrap{max-height:300px;overflow-y:auto}.line-modal-files-table .files-size-col{min-width:100px;white-space:nowrap}.line-modal-files-table .files-type-col{min-width:140px;white-space:nowrap}.line-view-modal-backdrop{background-color:#00000080}.line-view-modal-dialog{max-width:95vw;width:1400px}.line-view-modal-label{min-width:120px}.line-view-modal-field-notes{min-height:80px}.project-summary{padding-bottom:1.25rem}.project-summary .row{margin-top:1.25rem!important;--bs-gutter-x: 1rem}.project-summary .data-table-card>.card-header{gap:.65rem;flex-wrap:wrap}.project-summary .data-table-card>.card-header>div.d-flex{flex-wrap:wrap;justify-content:flex-end}.tables-reports-column,.tables-lines-column{margin-bottom:1.5rem}@media(min-width:1200px){.tables-reports-column,.tables-lines-column{margin-bottom:0}}@media(max-aspect-ratio:2/1){.tables-reports-column,.tables-lines-column,.tables-files-column{flex:0 0 100%!important;max-width:100%!important}.tables-reports-column,.tables-lines-column{margin-bottom:1.5rem}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media(prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin infinite 20s linear}}.App-header{background-color:#282c34;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 2vmin);color:#fff}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}body{margin:0;font-family:Poppins,Courier,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}html,body,root{margin:0;padding:0}*{box-sizing:border-box;--blue: var(--geo-accent, #0189CC);--white: #FFFFFF;--gray: #E0E0DB;--black: #000000}body{text-align:left;font-family:Poppins,Courier}.bold{font-weight:700}.navbar{border:2px solid var(--blue);padding:1rem}.eStyle{color:var(--blue)}.navbar li a{color:var(--black)}.navbar ul{background-color:var(--gray);padding-left:1rem;margin-top:.5rem}.active{text-decoration:none}.navbar li a:hover,.nav-link:hover{background-color:var(--blue);color:var(--white)}.navbar-brand:hover{background-color:var(--gray)}.card{background:var(--geo-card-gradient, linear-gradient(180deg, #ffffff 0%, #f5f7fb 100%));border-radius:var(--geo-radius-lg, 8px);margin-bottom:1rem}.p-datatable-header{background-color:var(--blue)}.form-container{background-color:var(--geo-canvas, #eef2f6)}.title-div,.advancedfilters-button{background-color:var(--blue)}.form-check.form-switch{padding-left:0!important}.form-switch .form-check-input{margin-left:0!important}.icon-button{background:none;border:none;cursor:pointer;outline:inherit;padding:0;display:flex;align-items:center}.icon-button:focus{outline:none;box-shadow:0 0 0 2px var(--blue)}.icon-button:hover{opacity:1}.icon-button:hover i{color:var(--blue)}.velocity-files-list li:nth-child(odd){background-color:var(--gray)}.velocity-files-list li:nth-child(2n){background-color:var(--white)}.velocity-files-list li:last-of-type{background-color:var(--white)}.delete-prompt-container{margin-top:10px;background-color:#f8d7da;padding:10px;border-radius:5px;border:1px solid #f5c6cb}.delete-prompt-container span{margin-right:5px}.delete-prompt-container button{margin-left:5px}.one-d-main{margin:0;height:100%;width:100%}.p-accordion-header-link{color:#212529;background-color:#fff;padding:.75rem 1.25rem;border:1px solid var(--gray);border-radius:.375rem}.p-accordion-header-link:hover{background-color:#f8f9fa}.custom-sidebar{border-right:2px solid var(--blue);height:100%;overflow-y:auto;transition:width .3s ease;display:flex;flex-direction:column;padding:1rem}.p-panelmenu{border:2px solid #0189CC;border-radius:.375rem}.p-panelmenu .p-submenu-list{padding-left:0rem!important;margin:0!important}.p-panelmenu .p-menuitem{margin:0!important;padding:0!important}.p-panelmenu .p-menuitem-link{display:block;width:100%;padding:.25rem .5rem}.p-panelmenu .active-menu-item>.p-menuitem-link{font-weight:700}.p-panelmenu .p-menuitem-link:hover,.p-panelmenu .p-menuitem-link:focus{font-weight:700}.sidebar-submenu{max-height:0;overflow:hidden;transition:max-height .3s ease-in-out;flex-wrap:nowrap!important}.sidebar-submenu.expanded{max-height:500px;overflow-y:auto;overflow-x:hidden}.sidebar-submenu.vertical-sidebar-submenu--horizontal.expanded{max-height:48px}.sidebar-submenu-item{padding-left:2rem!important;font-size:.9rem;border-left:2px solid transparent;transition:all .2s ease}.sidebar-submenu-item:hover{border-left-color:#0189cc}.sidebar-submenu-item.active{border-left-color:#0170a7;background-color:#0189cc!important}:root{--geo-navy: #2c3e50;--geo-slate: #2c3e50;--geo-slate-2: #34495e;--geo-slate-3: #3d566e;--geo-accent: #0189CC;--geo-accent-hover: #0170a7;--geo-accent-active: #015d8b;--geo-accent-bright: #0189CC;--geo-accent-soft: rgba(1, 137, 204, .12);--geo-canvas: #eef2f6;--geo-surface: #eef2f6;--geo-card: #ffffff;--geo-card-gradient: linear-gradient(180deg, #ffffff 0%, #f5f7fb 100%);--geo-card-border: rgba(16, 24, 40, .08);--geo-card-shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 10px 28px rgba(16, 24, 40, .07);--geo-card-shadow-hover: 0 2px 6px rgba(16, 24, 40, .06), 0 16px 36px rgba(16, 24, 40, .1);--geo-text: #000000;--geo-text-muted: #5c6770;--geo-border: rgba(16, 24, 40, .08);--geo-border-strong: #c8c8c2;--geo-row-hover: #E0E6EC;--geo-success: #1f7a4d;--geo-warning: #c47a12;--geo-danger: #b42318;--geo-radius: 4px;--geo-radius-sm: 4px;--geo-radius-lg: 8px;--geo-header-bg: #f7f9fb;--geo-stripe: #fafbfc;--geo-input-border: rgba(16, 24, 40, .12);--geo-font: "Poppins", "Courier", sans-serif;--geo-font-mono: source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace;--geo-navbar-h: 60px;--geo-sidebar-w: 280px;--geo-sidebar-collapsed-w: 64px;--geo-photo-bg: url(/terean-background.jpg);--blue: #0189CC;--white: #FFFFFF;--gray: #E0E0DB;--black: #000000;--bs-body-font-family: var(--geo-font);--bs-body-bg: #eef2f6;--bs-body-color: #000000;--bs-secondary-color: #5c6770;--bs-primary: #0189CC;--bs-primary-rgb: 1, 137, 204;--bs-link-color: #0189CC;--bs-link-hover-color: #0170a7;--bs-border-radius: 4px;--bs-border-radius-sm: 4px;--bs-border-radius-lg: 8px;--bs-border-color: rgba(16, 24, 40, .12);--bs-focus-ring-color: rgba(1, 137, 204, .25);--primary-color: #0189CC;--primary-color-text: #ffffff}html,body,#root{min-height:100%;background:var(--geo-canvas)}body{text-align:left;color:var(--geo-text);font-family:Poppins,Courier,sans-serif;-webkit-font-smoothing:antialiased}code,kbd,pre,.tabular-nums,.data-table-card td,.data-table-card th{font-variant-numeric:tabular-nums}.form-check-input:checked{background-color:var(--geo-accent);border-color:var(--geo-accent)}.card{background:var(--geo-card-gradient);background-color:#fff;border:1px solid var(--geo-card-border)!important;border-radius:var(--geo-radius-lg)!important;box-shadow:var(--geo-card-shadow)!important}.card.border-0{border:1px solid var(--geo-card-border)!important}.card.shadow-sm,.card.shadow,.card.shadow-lg{box-shadow:var(--geo-card-shadow)!important}.card.project-card{border-radius:var(--geo-radius-lg)!important}.main-layout{min-height:100vh;background:var(--geo-canvas)}.main-content{margin-left:var(--geo-sidebar-collapsed-w, 64px);min-height:100vh;transition:margin-left .22s ease}.main-layout--sidebar-open .main-content{margin-left:var(--geo-sidebar-w)}.content-wrapper{text-align:left;background:var(--geo-canvas)}.content-wrapper:has(.analysis-page-layout),.content-wrapper:has(.quick-form-page),.content-wrapper:has(.chat-page),.content-wrapper:has(.auth-shell),.content-wrapper:has(.home-page){padding:0;background:transparent}@media(max-width:991.98px){.main-layout--sidebar-open .main-content{margin-left:var(--geo-sidebar-collapsed-w, 64px)}}.app-section-header{height:42px;padding:.4rem .75rem;color:var(--geo-text)}.app-section-header h6{font-size:1rem;font-weight:500}.auth-shell{display:grid;grid-template-columns:minmax(280px,40%) 1fr;min-height:calc(100vh - var(--geo-navbar-h));background-color:#2c3e50;background-image:url(/terean-background.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.auth-shell__panel{background:linear-gradient(180deg,#2c3e50b8,#2c3e50db);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;padding:3.25rem 2.5rem;display:flex;flex-direction:column;justify-content:center;gap:1.15rem}.auth-shell__kicker{margin:0;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#e8f2f69e}.auth-shell__brand{font-size:2.15rem;font-weight:700;letter-spacing:.02em;margin:0;line-height:1.15}.auth-shell__brand-accent{color:var(--geo-accent)}.auth-shell__tagline{margin:0;font-size:1.02rem;line-height:1.55;color:#e8f2f6db;max-width:28rem}.auth-shell__points{margin:.35rem 0 0;padding:0;list-style:none;display:grid;gap:.65rem;color:#e8f2f6c7;font-size:.92rem}.auth-shell__points li{padding-left:1.15rem;position:relative;line-height:1.45}.auth-shell__points li:before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--geo-accent)}.auth-shell__content{display:flex;align-items:center;justify-content:center;padding:2.25rem 1.5rem}.auth-card{width:100%;max-width:26.5rem;padding:1.6rem 1.6rem 1.35rem;background:var(--geo-card);border:1px solid var(--geo-card-border);border-radius:var(--geo-radius-lg);box-shadow:var(--geo-card-shadow)}.auth-card--wide{max-width:34rem}.auth-card__title{margin:0 0 .35rem;font-size:1.35rem;font-weight:650;letter-spacing:-.02em;color:var(--geo-text)}.auth-card__lead a{color:var(--geo-accent);font-weight:600;text-decoration:none}.auth-card__lead a:hover{color:var(--geo-accent-hover)}.auth-card__form{display:flex;flex-direction:column;gap:.85rem}.auth-card__form .mb-3{margin-bottom:0!important}.auth-card__grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.auth-card__submit{margin-top:.35rem;width:100%;min-height:2.5rem;font-weight:600}.auth-card__footer{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .35rem;margin-top:.15rem;font-size:.875rem;color:var(--geo-text-muted)}.auth-card__footer .btn-link{padding:0;font-size:inherit;font-weight:600}.auth-shell__content .row,.auth-shell__content [class*=col-]{width:100%;max-width:100%;flex:0 0 100%;margin:0;padding:0}@media(max-width:768px){.auth-shell{grid-template-columns:1fr;min-height:auto}.auth-shell__panel{padding:1.5rem 1.25rem 1.15rem;gap:.75rem}.auth-shell__brand{font-size:1.7rem}.auth-card__grid{grid-template-columns:1fr}}.vertical-sidebar-nav,.toolbar-actions{scrollbar-width:thin}.app-page,.admin-list-page,.pending-projects-page,.system-health-page{min-height:calc(100vh - var(--geo-navbar-h, 60px));background:var(--geo-canvas)}.profile-page,.project-summary{background:var(--geo-canvas)}div.bg-light:not(.badge):not(.card){background-color:var(--geo-canvas)!important}.btn{--bs-btn-border-radius: var(--geo-radius-sm);--bs-btn-font-weight: 500;--bs-btn-font-family: var(--geo-font);border-radius:var(--geo-radius-sm);font-weight:500}.btn-primary{--bs-btn-color: #fff;--bs-btn-bg: var(--geo-accent);--bs-btn-border-color: var(--geo-accent);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: var(--geo-accent-hover);--bs-btn-hover-border-color: var(--geo-accent-hover);--bs-btn-active-color: #fff;--bs-btn-active-bg: var(--geo-accent-active);--bs-btn-active-border-color: var(--geo-accent-active);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: var(--geo-accent);--bs-btn-disabled-border-color: var(--geo-accent);--bs-btn-focus-shadow-rgb: 1, 137, 204}.btn-outline-primary{--bs-btn-color: var(--geo-accent);--bs-btn-border-color: var(--geo-accent);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: var(--geo-accent);--bs-btn-hover-border-color: var(--geo-accent);--bs-btn-active-color: #fff;--bs-btn-active-bg: var(--geo-accent-active);--bs-btn-active-border-color: var(--geo-accent-active);--bs-btn-disabled-color: var(--geo-accent);--bs-btn-disabled-border-color: var(--geo-accent);--bs-btn-focus-shadow-rgb: 1, 137, 204}.btn-secondary{--bs-btn-color: #fff;--bs-btn-bg: var(--geo-slate);--bs-btn-border-color: var(--geo-slate);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: var(--geo-slate-2);--bs-btn-hover-border-color: var(--geo-slate-2);--bs-btn-active-color: #fff;--bs-btn-active-bg: var(--geo-slate-3);--bs-btn-active-border-color: var(--geo-slate-3)}.btn-outline-secondary{--bs-btn-color: var(--geo-text-muted);--bs-btn-border-color: var(--geo-input-border);--bs-btn-hover-color: var(--geo-text);--bs-btn-hover-bg: var(--geo-header-bg);--bs-btn-hover-border-color: var(--geo-border-strong);--bs-btn-active-color: var(--geo-text);--bs-btn-active-bg: var(--geo-row-hover);--bs-btn-active-border-color: var(--geo-border-strong)}.btn-success{--bs-btn-bg: var(--geo-success);--bs-btn-border-color: var(--geo-success);--bs-btn-hover-bg: #18633e;--bs-btn-hover-border-color: #18633e}.btn-danger{--bs-btn-bg: var(--geo-danger);--bs-btn-border-color: var(--geo-danger);--bs-btn-hover-bg: #912018;--bs-btn-hover-border-color: #912018}.btn-warning{--bs-btn-color: #fff;--bs-btn-bg: var(--geo-warning);--bs-btn-border-color: var(--geo-warning);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #a36610;--bs-btn-hover-border-color: #a36610}.btn-link{--bs-btn-color: var(--geo-accent);--bs-btn-hover-color: var(--geo-accent-hover);text-decoration:none}.btn-group>.btn{border-radius:0}.btn-group>.btn:first-child{border-top-left-radius:var(--geo-radius-sm);border-bottom-left-radius:var(--geo-radius-sm)}.btn-group>.btn:last-child{border-top-right-radius:var(--geo-radius-sm);border-bottom-right-radius:var(--geo-radius-sm)}.form-label{font-size:.78rem;font-weight:600;letter-spacing:.02em;color:var(--geo-text-muted)}.form-control,.form-select,.form-control-plaintext,textarea.form-control{border-radius:var(--geo-radius-sm);border-color:var(--geo-input-border);color:var(--geo-text);background-color:var(--geo-card)}.form-control:focus,.form-select:focus,textarea.form-control:focus{border-color:var(--geo-accent);box-shadow:0 0 0 .2rem var(--geo-accent-soft)}.form-control:disabled,.form-select:disabled,.form-control[readonly]{background-color:var(--geo-header-bg);color:var(--geo-text-muted)}.form-control-sm,.form-select-sm{border-radius:var(--geo-radius-sm)}.input-group .form-control,.input-group .form-select{border-color:var(--geo-input-border)}.input-group .btn{border-radius:0}.input-group>.form-control:first-child,.input-group>.form-select:first-child{border-top-left-radius:var(--geo-radius-sm);border-bottom-left-radius:var(--geo-radius-sm)}.input-group>.btn:last-child{border-top-right-radius:var(--geo-radius-sm);border-bottom-right-radius:var(--geo-radius-sm)}.form-check-input{border-color:var(--geo-border-strong)}.form-check-input:focus{border-color:var(--geo-accent);box-shadow:0 0 0 .2rem var(--geo-accent-soft)}form{background-color:transparent}.table{--bs-table-bg: transparent;--bs-table-color: var(--geo-text);--bs-table-border-color: #eef1f5;--bs-table-hover-bg: var(--geo-row-hover);--bs-table-striped-bg: var(--geo-stripe);--bs-table-striped-color: var(--geo-text)}.card .table thead th,.modal .table thead th,.table-light,.table-light>th,.table-light>td,thead.table-light th{background-color:var(--geo-header-bg)!important;color:var(--geo-text-muted);border-color:var(--geo-card-border);font-weight:600}.modal-content{border:1px solid var(--geo-card-border);border-radius:var(--geo-radius-lg);box-shadow:var(--geo-card-shadow);overflow:hidden;background:var(--geo-card)}.modal-header{background:var(--geo-header-bg);border-bottom:1px solid var(--geo-border);padding:.85rem 1.1rem}.modal-title{font-size:1rem;font-weight:650;color:var(--geo-text)}.modal-body{padding:1.1rem 1.15rem}.modal-footer{background:var(--geo-header-bg);border-top:1px solid var(--geo-border);padding:.75rem 1.1rem;gap:.45rem}.badge.bg-light{border:1px solid var(--geo-border);background:var(--geo-card)!important;color:var(--geo-text-muted)!important;font-weight:600}.alert{border-radius:var(--geo-radius-lg)}.page-link{color:var(--geo-accent);border-color:var(--geo-input-border)}.page-link:hover{color:var(--geo-accent-hover);background-color:var(--geo-accent-soft);border-color:var(--geo-accent)}.page-item.active .page-link{background-color:var(--geo-accent);border-color:var(--geo-accent)}.dropdown-menu{border:1px solid var(--geo-card-border);border-radius:var(--geo-radius-lg);box-shadow:var(--geo-card-shadow)}.dropdown-item:active,.dropdown-item.active{background-color:var(--geo-accent)}.p-dialog{border-radius:var(--geo-radius-lg);border:1px solid var(--geo-card-border);box-shadow:var(--geo-card-shadow);overflow:hidden}.p-dialog .p-dialog-header{background:var(--geo-header-bg);border-bottom:1px solid var(--geo-border)}.p-inputtext,.p-dropdown,.p-inputtextarea,.p-multiselect{border-radius:var(--geo-radius-sm);border-color:var(--geo-input-border);font-family:var(--geo-font)}.p-inputtext:enabled:focus,.p-dropdown:not(.p-disabled).p-focus,.p-inputtextarea:enabled:focus{border-color:var(--geo-accent);box-shadow:0 0 0 .2rem var(--geo-accent-soft)}.p-button.p-button-primary{background:var(--geo-accent);border-color:var(--geo-accent)}.p-button.p-button-primary:hover{background:var(--geo-accent-hover);border-color:var(--geo-accent-hover)}.p-button{border-radius:var(--geo-radius-sm);font-family:var(--geo-font);font-weight:500}
