*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#ff9976,#ff7a50)}.login-box{background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0003;width:100%;max-width:400px}.login-box h1{margin:0 0 8px;font-size:28px;color:#333}.login-subtitle{margin:0 0 30px;color:#666;font-size:14px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333;font-size:14px}.form-group input{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .3s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#ff9976}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.error-message{background:#fee;border:1px solid #fcc;color:#c33;padding:12px;border-radius:6px;margin-bottom:20px;font-size:14px}.btn-primary{width:100%;padding:14px;background:linear-gradient(135deg,#ff9976,#ff7a50);color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #ff997666}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.login-note{margin-top:20px;text-align:center;font-size:13px;color:#999}.layout{display:flex;min-height:100vh;background:#f5f7fa}.sidebar{width:260px;background:linear-gradient(180deg,#ff9976,#ff7a50);color:#fff;display:flex;flex-direction:column;box-shadow:2px 0 10px #0000001a;position:fixed;height:100vh;left:0;top:0}.sidebar-header{padding:30px 20px;border-bottom:1px solid rgba(255,255,255,.1)}.brand{font-size:32px;font-weight:700;margin:0;letter-spacing:-.5px}.brand-subtitle{font-size:12px;margin:5px 0 0;opacity:.8;text-transform:uppercase;letter-spacing:1px}.sidebar-nav{flex:1;padding:20px 10px}.nav-item{width:100%;display:flex;align-items:center;padding:14px 20px;margin-bottom:8px;background:none;border:none;color:#fff;font-size:15px;cursor:pointer;border-radius:8px;transition:all .3s;text-align:left}.nav-item:hover{background:#ffffff1a}.nav-item.active{background:#fff3;font-weight:600}.nav-icon{margin-right:12px;flex-shrink:0}.nav-label{flex:1}.sidebar-footer{padding:20px;border-top:1px solid rgba(255,255,255,.1)}.user-profile{display:flex;align-items:center;gap:12px;margin-bottom:15px}.user-avatar{width:40px;height:40px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600}.user-details{flex:1;min-width:0}.user-name{margin:0;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{margin:2px 0 0;font-size:11px;opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-logout-sidebar{width:100%;padding:10px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center}.btn-logout-sidebar:hover{background:#fff3}.main-content{flex:1;margin-left:260px;padding:30px;overflow-y:auto}.page-title{font-size:28px;font-weight:700;color:#2d3748;margin:0 0 30px}.content-wrapper{max-width:1400px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.dashboard-card{background:#fff;padding:25px;border-radius:12px;box-shadow:0 2px 8px #0000001a;transition:transform .3s,box-shadow .3s}.dashboard-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026}.card-icon{margin-bottom:15px}.dashboard-card h3{margin:0 0 15px;color:#666;font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.card-number{margin:0 0 5px;font-size:32px;font-weight:700;color:#333}.card-description{margin:0;color:#999;font-size:13px}.info-message{background:#fff;padding:25px;border-radius:12px;border-left:4px solid #667eea}.info-message p{margin:0 0 15px;color:#666}.info-message strong{color:#333}.info-message ul{margin:10px 0 0;padding-left:20px;color:#666}.info-message li{margin-bottom:8px}.loading-message{text-align:center;padding:60px;font-size:16px;color:#666;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.rooms-duration{grid-column:span 1}.rooms-duration h3{margin-bottom:15px}.duration-table{display:flex;flex-direction:column;gap:10px}.duration-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f0f0f0}.duration-row:last-child{border-bottom:none}.duration-row span{color:#666;font-size:14px}.duration-row strong{color:#333;font-size:16px;font-weight:700}.analytics-page{padding:20px}.analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:20px}.analytics-header h1{margin:0;color:#1a1a1a;font-size:32px;font-weight:700}.analytics-controls{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.date-range-selector{display:flex;align-items:center;gap:10px;padding:10px 15px;background:#fff;border:1px solid #e0e0e0;border-radius:8px}.date-range-selector select{border:none;background:transparent;font-size:14px;padding:0;cursor:pointer;color:#1a1a1a;font-weight:500;outline:none}.custom-date-inputs{display:flex;align-items:center;gap:10px;padding:10px 15px;background:#fff;border:1px solid #e0e0e0;border-radius:8px}.custom-date-inputs input[type=date]{border:none;background:transparent;font-size:14px;padding:0;cursor:pointer;color:#1a1a1a;font-weight:500;outline:none}.custom-date-inputs span{color:#666;font-size:14px}.compare-toggle{display:flex;align-items:center;gap:8px;padding:10px 15px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:14px;font-weight:500}.compare-toggle input[type=checkbox]{cursor:pointer}.compare-toggle:hover{background:#f5f5f5}.export-button{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#ff9976;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.export-button:hover:not(:disabled){background:#ff8860}.export-button:disabled{opacity:.5;cursor:not-allowed}.analytics-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.summary-card{background:#fff;padding:25px;border-radius:12px;box-shadow:0 2px 8px #00000014;position:relative}.summary-card h3{margin:0 0 10px;font-size:14px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.summary-value{margin:0;font-size:32px;font-weight:700;color:#1a1a1a}.change-indicator{display:flex;align-items:center;gap:5px;margin-top:10px;font-size:14px;font-weight:600}.change-indicator.positive{color:#22c55e}.change-indicator.negative{color:#ef4444}.charts-container{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.chart-card{background:#fff;padding:25px;border-radius:12px;box-shadow:0 2px 8px #00000014;transition:box-shadow .3s ease}.chart-card:hover{box-shadow:0 4px 16px #0000001f}.chart-card-wide{grid-column:span 2}.chart-card h3{margin:0 0 5px;font-size:18px;font-weight:700;color:#1a1a1a}.chart-description{margin:0 0 20px;font-size:14px;color:#666;font-weight:400}.loading-message{text-align:center;padding:60px 20px;font-size:18px;color:#666}.error-message{text-align:center;padding:60px 20px;font-size:18px;color:#ef4444;background:#fee;border-radius:12px;margin:20px 0}@media(max-width:1400px){.charts-container{grid-template-columns:1fr}.chart-card-wide{grid-column:span 1}}@media(max-width:1200px){.charts-container{grid-template-columns:1fr}.chart-card-wide{grid-column:span 1}}@media(max-width:768px){.analytics-header{flex-direction:column;align-items:flex-start}.analytics-controls{width:100%;flex-direction:column;align-items:stretch}.date-range-selector,.custom-date-inputs,.compare-toggle,.export-button{width:100%;justify-content:center}.analytics-summary{grid-template-columns:1fr}.chart-card{padding:15px}.summary-value{font-size:28px}}.page-nav{background:#fff;padding:15px 20px;border-bottom:1px solid #e0e0e0;display:flex;gap:15px;max-width:1400px;margin:0 auto}.nav-link{background:none;border:none;color:#667eea;font-size:14px;font-weight:500;cursor:pointer;padding:5px 10px;border-radius:4px;transition:background .2s}.nav-link{background:none;border:none;color:#ff9976;font-size:14px;font-weight:500;cursor:pointer;padding:5px 10px;border-radius:4px;transition:background .2s}.nav-link:hover{background:#fff5f2}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.page-header h2{margin:0;font-size:24px;color:#333}.search-input{padding:10px 15px;border:1px solid #ddd;border-radius:6px;font-size:14px;min-width:250px}.search-input:focus{outline:none;border-color:#ff9976}.filters{display:flex;gap:10px}.filter-select{padding:10px 15px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;cursor:pointer}.filter-select:focus{outline:none;border-color:#ff9976}.table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a;margin-bottom:20px}.data-table{width:100%;border-collapse:collapse}.data-table thead{background:#ff9976;color:#fff}.data-table th{padding:15px;text-align:left;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.data-table tbody tr{border-bottom:1px solid #f0f0f0;transition:background .2s}.data-table tbody tr:hover{background:#f9f9f9}.data-table td{padding:15px;font-size:14px;color:#333}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.status-badge.live{background:#d4edda;color:#155724}.status-badge.closed,.status-badge.expired{background:#f8d7da;color:#721c24}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.pagination-btn{padding:10px 20px;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .3s}.pagination-btn:hover:not(:disabled){background:#ff7a50}.pagination-btn:disabled{background:#ccc;cursor:not-allowed}.pagination-info{font-weight:500;color:#666}.loading-message{text-align:center;padding:60px;font-size:16px;color:#666;background:#fff;border-radius:12px}.error-message{background:#fee;border:1px solid #fcc;color:#c33;padding:15px;border-radius:8px;margin-bottom:20px}.btn-small{padding:6px 12px;background:#ff9976;color:#fff;border:none;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:background .3s}.btn-small:hover{background:#ff7a50}.status-badge.matched{background:#e3f2fd;color:#1565c0}.status-badge.open{background:#d4edda;color:#155724}.status-badge.progressed{background:#fff3cd;color:#856404}.status-badge.rejected{background:#f8d7da;color:#721c24}.link-button{background:none;border:none;color:#ff9976;font-size:14px;font-weight:500;cursor:pointer;padding:0;text-decoration:underline;text-align:left}.link-button:hover{color:#ff7a50}.detail-header{background:#fff;border-radius:12px;padding:30px;margin-bottom:30px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.detail-header h1{margin:0 0 5px;font-size:32px;color:#333}.candidate-email{margin:0;font-size:16px;color:#666}.stats-row{display:flex;gap:20px}.stat-box{text-align:center;padding:15px 25px;background:#fff5f2;border-radius:8px;border:2px solid #FF9976}.stat-value{font-size:28px;font-weight:700;color:#ff9976;margin-bottom:5px}.stat-label{font-size:12px;color:#666;text-transform:uppercase;font-weight:600;letter-spacing:.5px}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}.info-card{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a}.info-card-wide{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px}.info-card h3,.info-card-wide h3{margin:0 0 25px;font-size:20px;color:#333;font-weight:700;border-bottom:3px solid #FF9976;padding-bottom:12px}.info-item{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid #f5f5f5}.info-item:last-child{border-bottom:none}.info-item-full{padding:15px 0;border-bottom:1px solid #f5f5f5}.info-label{font-weight:600;color:#666;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.info-value{color:#333;font-size:15px;font-weight:500}.culture-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}.info-section{margin-top:25px}.info-section .info-label{display:block;margin-bottom:12px}.text-box{background:#f9f9f9;padding:15px;border-radius:8px;border-left:4px solid #FF9976;line-height:1.6;color:#333;margin-top:10px}.section-title{margin:30px 0 15px}.section-title h2{font-size:24px;color:#333;margin:0}.tags-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px}.tag{background:#fff5f2;color:#ff9976;padding:6px 12px;border-radius:16px;font-size:12px;font-weight:500;border:1px solid #FF9976}.link-value{color:#ff9976;text-decoration:none;font-size:14px;word-break:break-all}.link-value:hover{text-decoration:underline}.unread-badge{background:#ff9976;color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:800px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #0000004d}.modal-header{padding:20px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:24px;color:#333}.close-btn{background:none;border:none;font-size:32px;color:#999;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s}.close-btn:hover{background:#f0f0f0;color:#333}.modal-body{padding:20px;overflow-y:auto;flex:1}.chat-info{background:#f9f9f9;padding:15px;border-radius:8px;margin-bottom:20px}.chat-info p{margin:5px 0;font-size:14px}.messages-list{display:flex;flex-direction:column;gap:15px}.message{padding:12px 15px;border-radius:8px;max-width:70%}.message.candidate{background:#e3f2fd;align-self:flex-start;margin-right:auto}.message.company{background:#fff5f2;align-self:flex-end;margin-left:auto}.message.candid-system{background:#f0f0f0;align-self:center;margin:0 auto;max-width:85%;border-left:3px solid #FF9976}.message-sender{font-size:12px;font-weight:600;color:#666;margin-bottom:5px}.message-text{font-size:14px;color:#333;line-height:1.5;white-space:pre-wrap;word-break:break-word}.message-time{font-size:11px;color:#999;margin-top:5px}.no-messages{text-align:center;color:#999;padding:40px;font-size:16px}.chat-container{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a}.chat-two-column{display:grid;grid-template-columns:1fr 350px;gap:30px;min-height:600px}.chat-messages-section{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a}.chat-header-section{margin-bottom:30px}.chat-header-section h2{margin:0 0 15px;font-size:24px;color:#333}.candidate-details-section{background:#fff;border-radius:12px;padding:25px;box-shadow:0 2px 8px #0000001a;height:fit-content;position:sticky;top:20px}.candidate-details-section h3{margin:0 0 20px;font-size:20px;color:#333;border-bottom:2px solid #FF9976;padding-bottom:10px}.detail-group{margin-bottom:20px}.detail-group label{display:block;font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}.detail-group p{margin:0;font-size:15px;color:#333;font-weight:500}
