:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--primary: #2c3e50;--secondary: #2c3e50;--bg: #f8f9fa}html,body,#root{height:100%;width:100%;margin:0;padding:0;overflow-x:hidden}body{margin:0;padding:0;color:#333;min-height:100vh;background-color:var(--bg);transition:background-color .3s ease}a{font-weight:500;color:var(--primary);text-decoration:inherit}a:hover{filter:brightness(.85)}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;transition:all .25s}.auth-view{display:flex;justify-content:center;align-items:center;min-height:100vh;width:100%;padding:100px 1rem 3rem;box-sizing:border-box;margin:0;overflow-y:auto;background-image:linear-gradient(135deg,#1a3a5c,#0a1929);background-attachment:fixed;text-align:center}.auth-card{background:#fff;padding:3rem 2.5rem;border-radius:20px;box-shadow:0 20px 40px #0000004d;width:100%;max-width:400px;position:relative;margin:0 auto}.auth-logo-container{text-align:center;margin-bottom:2rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.auth-logo-container img{height:100px;width:auto;max-width:100%;object-fit:contain;margin-bottom:1rem}.auth-logo-container h2{margin:0;font-size:1.8rem;font-weight:900;letter-spacing:-1px;text-transform:uppercase}.auth-logo-container .brand-flow{font-weight:300;color:var(--primary)}.auth-card.large{max-width:600px}h2{color:var(--secondary);margin-bottom:.5rem}.subtitle{color:#7f8c8d;margin-bottom:2rem;font-size:.9rem}.auth-form-grid{display:flex;flex-direction:column;gap:1.5rem;text-align:left}.section h3{font-size:1rem;color:var(--primary);margin-bottom:.8rem;border-bottom:1px solid #eee;padding-bottom:.4rem}.input-group{position:relative;width:100%;margin-bottom:1.2rem;display:flex;align-items:center}.input-icon{position:absolute;left:12px;color:#95a5a6;pointer-events:none;z-index:5;display:flex;align-items:center;justify-content:center}.input-group input{width:100%;padding:12px 12px 12px 42px!important;margin:0;border:1px solid #ddd;border-radius:10px;font-size:1rem;transition:all .2s ease;box-sizing:border-box;background:#fdfdfd;height:50px}.input-group input:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 4px #3498db1a;outline:none}.submit-btn{display:flex;gap:.5rem;align-items:center}.reg-photo-row input{margin-bottom:0;flex:1}.photo-btn{background:#f8f9fa;border:1px solid #ddd;padding:.8rem;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;height:100%;box-sizing:border-box}.photo-btn input{display:none}.photo-ready{color:#27ae60;font-size:.75rem;font-weight:700;margin:-.5rem 0 .8rem}.submit-btn{background:var(--primary);color:#fff;border:none;padding:1rem;border-radius:6px;font-size:1rem;font-weight:700;cursor:pointer;transition:filter .3s;width:100%;margin-top:1rem}.submit-btn:hover{filter:brightness(.9)}.msg{padding:.8rem;border-radius:6px;margin-bottom:1.5rem;font-weight:500}.msg.success{background:#d4edda;color:#155724}.msg.error{background:#f8d7da;color:#721c24}.footer-link{margin-top:1.5rem;font-size:.9rem;color:#7f8c8d}.footer-link a{color:var(--primary);text-decoration:none;font-weight:700}@media (min-width: 768px){.auth-form-grid .section{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1rem}.auth-form-grid .section h3{grid-column:1 / -1}}:root{--primary: #e74c3c;--secondary: #2c3e50;--bg: #f8f9fa;--text: #333}html,body,#root{min-height:100vh;margin:0;padding:0;width:100%}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:var(--text);overflow-x:hidden}.app-container{display:flex;flex-direction:column;min-height:100vh;width:100%;align-items:stretch;background:transparent}.main-header{background:#fff;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 10px #0000000d}.logo-section{display:flex;align-items:center;gap:.8rem;min-width:0}.logo-section h1{font-size:1.5rem;margin:0;color:var(--secondary)}.header-nav{display:flex;gap:1.5rem;align-items:center}.header-nav a,.logout-btn{color:var(--secondary);text-decoration:none;background:none;border:none;cursor:pointer;padding:.5rem;border-radius:50%;transition:background .3s;display:flex;align-items:center;justify-content:center}.header-nav a:hover,.logout-btn:hover{background:#f2f2f2;color:var(--primary)}.content{flex:1;padding:2rem;width:100%;box-sizing:border-box}.content-public{flex:1;width:100%;margin:0;padding:0;display:flex;flex-direction:column;background:transparent}.content-landing{flex:1;width:100%;margin:0;padding:0}.main-footer{text-align:center;padding:1rem;font-size:.8rem;color:#7f8c8d;margin-top:auto;background:transparent}.loading{display:flex;justify-content:center;align-items:center;height:100vh;font-size:1.2rem;color:var(--primary);font-weight:700}.page-view{background:var(--card-bg, white);padding:2rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;border:1px solid rgba(0,0,0,.08)}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:2rem;margin-top:1.5rem}.profile-section h3{color:var(--primary);border-bottom:2px solid #eee;padding-bottom:.5rem;margin-bottom:1rem}.data-row{margin-bottom:.8rem;display:flex;justify-content:space-between}.label{font-weight:700;color:#666;font-size:.9rem}.value{color:var(--secondary);overflow-wrap:anywhere}.split-view-container{display:flex;gap:2rem;flex-wrap:wrap}.split-view-list{flex:1 1 300px}.split-view-details{flex:2 1 400px}@media (max-width: 768px){.content{padding:1rem .5rem}.page-view{padding:1rem}.split-view-container{gap:1rem;flex-direction:column}.split-view-list,.split-view-details{flex:1 1 auto;width:100%;min-width:0}.hide-on-mobile-selected{display:none!important}.show-on-mobile-selected{display:block!important}}.mobile-only{display:none!important}.desktop-only{display:block!important}@media (max-width: 768px){.header-nav{gap:.5rem}.header-nav a,.logout-btn{padding:.35rem}.mobile-only{display:block!important}.desktop-only{display:none!important}.modal-content{width:95%!important;padding:1rem!important;margin:0 auto;border-radius:8px}.form-grid{grid-template-columns:1fr!important;gap:1rem!important}.hide-mobile{display:none!important}.show-mobile{display:flex!important;flex-direction:column!important;position:fixed;top:0;left:0;width:100vw;height:100vh;background:#fff;z-index:1000;padding:1.5rem!important;box-sizing:border-box;overflow-y:auto;gap:.2rem!important}.show-mobile button{width:100%!important;padding:1rem!important;font-size:1.1rem!important;border:none!important;border-bottom:1px solid #eee!important;margin:0!important;display:flex!important;align-items:center;gap:1rem;background:transparent!important;text-align:left;justify-content:flex-start!important;border-radius:0!important;box-shadow:none!important}.show-mobile button:last-child{border-bottom:none!important}.tab-menu{flex-direction:row}}.stat-card{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;border:1px solid rgba(0,0,0,.08);border-top-width:4px;text-align:center}.filter-section{background:#fff;padding:1.5rem;border-radius:12px;border:1px solid rgba(0,0,0,.08);margin-bottom:1.5rem;box-shadow:0 2px 12px #0000000f}.tab-menu-container{border-bottom:2px solid var(--primary)!important}.admin-table-container{background:#fff;border-radius:12px;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid rgba(0,0,0,.08);box-shadow:0 2px 10px #0000000d}.admin-table-container table{min-width:850px;border-collapse:collapse}@media (max-width: 768px){.admin-table-container{border:none;background:transparent;box-shadow:none;padding:0}.admin-table-container table{min-width:unset}.admin-table-container thead{display:none}.admin-table-container tr{display:block;background:#fff;border-radius:10px;margin-bottom:.75rem;padding:.6rem .75rem;box-shadow:0 1px 4px #00000014;border-left:3px solid var(--primary)}.admin-table-container td{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0!important;font-size:.85rem;border-bottom:1px solid #f5f5f5;text-align:right!important}.admin-table-container td:last-child{border-bottom:none;padding-top:.5rem!important}.admin-table-container td[data-label]:before{content:attr(data-label);font-weight:600;color:#888;font-size:.72rem;text-transform:uppercase;text-align:left;flex-shrink:0;margin-right:.5rem}.timeline-grid{grid-template-columns:1fr!important}.job-list-sidebar{height:auto!important;max-height:200px!important;margin-bottom:1rem}.timeline-content-area{height:auto!important;padding:1rem!important}}@media (max-width: 600px){.main-header{padding:.6rem .8rem}.logo-section{gap:.5rem}.logo-section h1{font-size:1rem;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-nav{gap:.4rem}.header-nav a,.logout-btn{padding:.35rem}.header-nav svg{width:18px;height:18px}}@media (max-width: 480px){.main-header{padding:.5rem .6rem}.logo-section h1{font-size:.9rem;max-width:80px}.header-nav{gap:.25rem}.header-nav a,.logout-btn{padding:.3rem}.header-nav svg{width:16px;height:16px}.tab-menu,[class*=tab-menu]{overflow-x:auto;flex-wrap:nowrap!important;-webkit-overflow-scrolling:touch;padding-bottom:4px}.tab-menu button,[class*=tab-menu] button{white-space:nowrap;flex-shrink:0;font-size:.8rem;padding:.5rem .7rem!important}[class*=modal],[style*="position: fixed"]>div{padding:1rem!important;max-width:95vw!important;margin:.5rem!important}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}
