*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#f5f5f5;color:#333;line-height:1.6}.container{max-width:1100px;margin:2rem auto;padding:0 1rem}h1{margin-bottom:1.5rem}h2{margin-bottom:.75rem}.controls{display:flex;gap:1rem;align-items:center;margin-bottom:1.5rem}.controls label{display:flex;align-items:center;gap:.5rem;font-weight:500}.controls input[type=date]{padding:.4rem .6rem;border:1px solid #ccc;border-radius:4px;font-size:1rem}button{padding:.5rem 1.2rem;background:#fc4c02;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}button:hover:not(:disabled){background:#e04400}.error{color:#d32f2f;margin-bottom:1rem}.gear-summary{background:#fff;border-radius:8px;padding:1rem 1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a}.gear-summary ul{list-style:none;display:flex;flex-direction:column;gap:.4rem}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}th,td{padding:.6rem 1rem;text-align:left;border-bottom:1px solid #eee}th{background:#fafafa;font-weight:600}td:first-child,th:first-child{white-space:nowrap}tbody tr:hover{background:#fff8f5}.main-layout{display:flex;gap:1.5rem;align-items:flex-start}.activities{flex:1;min-width:0}.yearly-summary{flex-shrink:0;width:160px}.yearly-summary table{width:100%}
