*{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;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:20px}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{max-width:1400px;margin:0 auto;padding:20px}.app-header{text-align:center;margin-bottom:40px;padding:40px 20px;background:#fff;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.2)}.app-header h1{font-size:42px;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:10px}.subtitle{font-size:18px;color:#666;font-weight:500}.app-main{margin-bottom:40px}.app-footer{text-align:center;padding:30px 20px;background:hsla(0,0%,100%,.1);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.app-footer p{color:#fff;font-size:16px;font-weight:500;text-shadow:0 2px 4px rgba(0,0,0,.2)}.session-form-container{background:#fff;border-radius:12px;padding:30px;box-shadow:0 10px 30px rgba(0,0,0,.2);margin-bottom:30px}.session-form-container h2{margin-bottom:25px;color:#333;font-size:24px;font-weight:600}.session-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:20px;gap:20px}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:8px;color:#555;font-weight:500;font-size:14px}.form-group input{padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#667eea}.submit-btn{grid-column:1/-1;padding:14px 28px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px rgba(102,126,234,.4)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.error-message{grid-column:1/-1;padding:12px;background:#fee;color:#c33;border-radius:8px;font-size:14px}.session-list-container{background:#fff;border-radius:12px;padding:30px;box-shadow:0 10px 30px rgba(0,0,0,.2);margin-top:30px}.session-list-container h2{margin-bottom:25px;color:#333;font-size:24px;font-weight:600}.no-sessions{color:#666;text-align:center;padding:40px 20px;font-size:16px}.table-wrapper{overflow-x:auto}.session-table{width:100%;border-collapse:collapse}.session-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.session-table th{padding:15px;text-align:left;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.session-table td{padding:15px;border-bottom:1px solid #e0e0e0;font-size:15px}.session-table tbody tr:hover{background:#f8f9fa}.session-table tbody tr:last-child td{border-bottom:none}.positive{color:#22c55e;font-weight:600}.negative{color:#ef4444;font-weight:600}.delete-btn{padding:8px 16px;background:#ef4444;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.delete-btn:hover{background:#dc2626}.error{color:#ef4444;text-align:center;padding:20px}.stats-dashboard-container{background:#fff;border-radius:12px;padding:30px;box-shadow:0 10px 30px rgba(0,0,0,.2);margin-bottom:30px}.stats-dashboard-container h2{margin-bottom:25px;color:#333;font-size:28px;font-weight:600;text-align:center}.stats-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:20px;gap:20px;margin-bottom:30px}.stat-card{background:linear-gradient(135deg,#f8f9fa,#e9ecef);padding:20px;border-radius:10px;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.1)}.stat-label{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-weight:600}.stat-value{font-size:24px;font-weight:700;color:#333}.stat-value.positive{color:#22c55e}.stat-value.negative{color:#ef4444}.chart-container{margin:30px 0;padding:20px;background:#f8f9fa;border-radius:10px}.custom-tooltip{background:#fff;padding:15px;border:2px solid #667eea;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15)}.custom-tooltip p{margin:5px 0;font-size:14px;color:#333}.tooltip-hours{color:#666}.tooltip-ev{color:#22c55e}.tooltip-actual{color:#3b82f6}.tooltip-variance{color:#764ba2;border-top:1px solid #e0e0e0;padding-top:8px;margin-top:8px}.chart-info{background:#f0f4ff;padding:20px;border-radius:8px;border-left:4px solid #667eea}.chart-info p{margin:10px 0;color:#555;font-size:14px;line-height:1.6}.chart-info strong{color:#333}.no-data{text-align:center;color:#666;padding:60px 20px;font-size:16px}@media (max-width:768px){.App{padding:10px}.app-header{padding:30px 15px;margin-bottom:20px}.app-header h1{font-size:32px}.subtitle{font-size:16px}.app-footer{padding:20px 15px}.app-footer p{font-size:14px}.session-form{grid-template-columns:1fr}.session-list-container{padding:20px}.session-table{font-size:13px}.session-table td,.session-table th{padding:10px 8px}.stats-dashboard-container{padding:20px}.stats-summary{grid-template-columns:repeat(2,1fr);gap:15px}.stat-card{padding:15px}.stat-value{font-size:20px}.chart-container{padding:10px}.chart-info{padding:15px}.chart-info p{font-size:13px}}